Skip to content

Commit 69e766b

Browse files
committed
Generate valid C# for classes with dependent fields nested in templates with independent fields
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
1 parent f44686b commit 69e766b

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

src/Generator/Generators/CSharp/CSharpSources.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,7 @@ classTemplate.OriginalNamespace is Class &&
333333
foreach (var specialization in generated.KeepSingleAllPointersSpecialization())
334334
GenerateClassInternals(specialization);
335335

336-
foreach (var group in generated.SelectMany(s => s.Classes).Where(
336+
foreach (var group in specializations.SelectMany(s => s.Classes).Where(
337337
c => !c.IsIncomplete).GroupBy(c => c.Name))
338338
{
339339
var nested = classTemplate.Classes.FirstOrDefault(c => c.Name == group.Key);

tests/CSharp/CSharpTemplates.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,11 @@ class IndependentFields : public T1
8585
{
8686
typedef T Type;
8787
public:
88+
class Nested
89+
{
90+
private:
91+
T field;
92+
};
8893
IndependentFields();
8994
IndependentFields(const IndependentFields<T>& other);
9095
IndependentFields(const T& t);

0 commit comments

Comments
 (0)