From c18d047daf28c44ff716639e2363c60b9f0e5356 Mon Sep 17 00:00:00 2001 From: Dimitar Dobrev Date: Sat, 12 Dec 2020 16:55:47 +0200 Subject: [PATCH] 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 --- src/Generator.Tests/GeneratorTest.cs | 1 - tests/CSharp/CSharpTemplates.cpp | 7 +++++-- tests/CSharp/CSharpTemplates.h | 4 ++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Generator.Tests/GeneratorTest.cs b/src/Generator.Tests/GeneratorTest.cs index d5dcc453..a400bc97 100644 --- a/src/Generator.Tests/GeneratorTest.cs +++ b/src/Generator.Tests/GeneratorTest.cs @@ -40,7 +40,6 @@ namespace CppSharp.Utils var path = Path.GetFullPath(GetTestsDirectory(name)); testModule.IncludeDirs.Add(path); - testModule.Defines.Add("DLL_EXPORT"); Diagnostics.Message("Looking for tests in: {0}", path); var files = Directory.EnumerateFiles(path, "*.h"); diff --git a/tests/CSharp/CSharpTemplates.cpp b/tests/CSharp/CSharpTemplates.cpp index e5295100..08bcaeaa 100644 --- a/tests/CSharp/CSharpTemplates.cpp +++ b/tests/CSharp/CSharpTemplates.cpp @@ -130,8 +130,11 @@ void TemplateSpecializer::completeSpecializationInParameter(TwoTemplateArgs p2, TwoTemplateArgs p3, TwoTemplateArgs p4, - TwoTemplateArgs p5, - TwoTemplateArgs::iterator p6, + TwoTemplateArgs p5) +{ +} + +void TemplateSpecializer::completeSpecializationInParameter(TwoTemplateArgs::iterator p6, TwoTemplateArgs::iterator p7) { } diff --git a/tests/CSharp/CSharpTemplates.h b/tests/CSharp/CSharpTemplates.h index 93a81708..4bd5cc45 100644 --- a/tests/CSharp/CSharpTemplates.h +++ b/tests/CSharp/CSharpTemplates.h @@ -580,8 +580,8 @@ public: TwoTemplateArgs p2, TwoTemplateArgs p3, TwoTemplateArgs p4, - TwoTemplateArgs p5, - TwoTemplateArgs::iterator p6, + TwoTemplateArgs p5); + void completeSpecializationInParameter(TwoTemplateArgs::iterator p6, TwoTemplateArgs::iterator p7); VirtualTemplate returnSpecializedWithVoid(); private: