Skip to content

Commit c18d047

Browse files
committed
Ensure a tested specialization is really generated
The only function to use the specialization in question is actually ignored because the types of two of its parameters aren't supported. This was hidden by an otherwise redundant definition of a C++ symbol which is now removed. Signed-off-by: Dimitar Dobrev <[email protected]>
1 parent 3a50a54 commit c18d047

File tree

3 files changed

+7
-5
lines changed

3 files changed

+7
-5
lines changed

src/Generator.Tests/GeneratorTest.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ public virtual void Setup(Driver driver)
4040

4141
var path = Path.GetFullPath(GetTestsDirectory(name));
4242
testModule.IncludeDirs.Add(path);
43-
testModule.Defines.Add("DLL_EXPORT");
4443

4544
Diagnostics.Message("Looking for tests in: {0}", path);
4645
var files = Directory.EnumerateFiles(path, "*.h");

tests/CSharp/CSharpTemplates.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,11 @@ void TemplateSpecializer::completeSpecializationInParameter(TwoTemplateArgs<int
130130
TwoTemplateArgs<int *, int> p2,
131131
TwoTemplateArgs<int *, float> p3,
132132
TwoTemplateArgs<const char *, int> p4,
133-
TwoTemplateArgs<QString, int> p5,
134-
TwoTemplateArgs<const char *, int>::iterator p6,
133+
TwoTemplateArgs<QString, int> p5)
134+
{
135+
}
136+
137+
void TemplateSpecializer::completeSpecializationInParameter(TwoTemplateArgs<const char *, int>::iterator p6,
135138
TwoTemplateArgs<QString, int>::iterator p7)
136139
{
137140
}

tests/CSharp/CSharpTemplates.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -580,8 +580,8 @@ class DLL_API TemplateSpecializer
580580
TwoTemplateArgs<int*, int> p2,
581581
TwoTemplateArgs<int*, float> p3,
582582
TwoTemplateArgs<const char*, int> p4,
583-
TwoTemplateArgs<QString, int> p5,
584-
TwoTemplateArgs<const char*, int>::iterator p6,
583+
TwoTemplateArgs<QString, int> p5);
584+
void completeSpecializationInParameter(TwoTemplateArgs<const char*, int>::iterator p6,
585585
TwoTemplateArgs<QString, int>::iterator p7);
586586
VirtualTemplate<void> returnSpecializedWithVoid();
587587
private:

0 commit comments

Comments
 (0)