Skip to content

Commit 10748cb

Browse files
committed
Fixed the generated C# when a type nested in a template is forwarded.
Signed-off-by: Dimitar Dobrev <[email protected]>
1 parent 71381d3 commit 10748cb

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

src/Generator/Generators/CSharp/CSharpSources.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,8 @@ classTemplate.OriginalNamespace is Class ?
270270
foreach (var specialization in generated)
271271
GenerateClassInternals(specialization);
272272

273-
foreach (var group in generated.SelectMany(s => s.Classes).GroupBy(c => c.Name))
273+
foreach (var group in generated.SelectMany(s => s.Classes).Where(
274+
c => !c.IsIncomplete).GroupBy(c => c.Name))
274275
GenerateNestedInternals(group.Key, group);
275276

276277
WriteCloseBraceIndent();

tests/CSharp/CSharpTemplates.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,8 +113,10 @@ template <typename T>
113113
class DLL_API DependentValueFields : public Base<T>
114114
{
115115
public:
116+
class Nested;
116117
class Nested
117118
{
119+
T field;
118120
};
119121
DependentValueFields();
120122
~DependentValueFields();
@@ -530,4 +532,4 @@ class ClassWithNonTypeTemplateArgument
530532
};
531533

532534
class SpecializationOfClassWithNonTypeTemplateArgument : public ClassWithNonTypeTemplateArgument<0>
533-
{ };
535+
{ };

0 commit comments

Comments
 (0)