From 734fe3348dc4483a4d69c1ca5c932585fae3d84c Mon Sep 17 00:00:00 2001 From: marcos henrich Date: Wed, 2 Apr 2014 15:46:49 +0100 Subject: [PATCH] GenerateClassFields is now always called even when the current class has no fields because fields of a value type base class must generated. --- .../Generators/CLI/CLIHeadersTemplate.cs | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs index 8403e3f3..aa9ebf2e 100644 --- a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs +++ b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs @@ -269,16 +269,15 @@ namespace CppSharp.Generators.CLI GenerateClassVariables(@class); - if (@class.Fields.Any()) - { - PushBlock(CLIBlockKind.AccessSpecifier); - WriteLine("private:"); - PopBlock(NewLineKind.IfNotEmpty); - - PushBlock(CLIBlockKind.Fields); - GenerateClassFields(@class); - PopBlock(); - } + PushBlock(CLIBlockKind.AccessSpecifier); + WriteLine("private:"); + var accBlock = PopBlock(NewLineKind.IfNotEmpty); + + PushBlock(CLIBlockKind.Fields); + GenerateClassFields(@class); + var fieldsBlock = PopBlock(); + + accBlock.CheckGenerate = () => !fieldsBlock.IsEmpty; WriteLine("};"); }