From b5c622762bb47e3566f5e46dfba0b3b7fac32510 Mon Sep 17 00:00:00 2001 From: Wouter van Oortmerssen Date: Mon, 17 Oct 2016 11:53:28 -0700 Subject: [PATCH] Fixed broken traits codegen for --scoped-enums. Change-Id: I5f538d12ea37d11d2e239ddde32eefcdd91e347b Tested: on Linux. --- src/idl_gen_cpp.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/idl_gen_cpp.cpp b/src/idl_gen_cpp.cpp index 268ba80ab..b66cd7867 100644 --- a/src/idl_gen_cpp.cpp +++ b/src/idl_gen_cpp.cpp @@ -365,8 +365,8 @@ class CppGenerator : public BaseGenerator { } static std::string GenEnumValDecl(const EnumDef &enum_def, - const std::string &enum_val, - const IDLOptions &opts) { + const std::string &enum_val, + const IDLOptions &opts) { return opts.prefixed_enums ? enum_def.name + "_" + enum_val : enum_val; } @@ -532,9 +532,11 @@ class CppGenerator : public BaseGenerator { code += "template struct " + enum_def.name + "Traits {\n"; } else { - code += "template<> struct " + enum_def.name + "Traits<" + WrapInNameSpace(*ev.struct_def) + "> {\n"; + code += "template<> struct " + enum_def.name + "Traits<" + + WrapInNameSpace(*ev.struct_def) + "> {\n"; } - code += " static const " + enum_def.name + " enum_value = " + GenEnumValDecl(enum_def, ev.name, parser_.opts) + ";\n"; + code += " static const " + enum_def.name + " enum_value = " + + GetEnumValUse(enum_def, ev, parser_.opts) + ";\n"; code += "};\n\n"; } }