THRIFT-544. erl: multiple enums with the same key generate invalid code
authorBryan Duxbury <bryanduxbury@apache.org>
Fri, 10 Sep 2010 18:49:53 +0000 (18:49 +0000)
committerBryan Duxbury <bryanduxbury@apache.org>
Fri, 10 Sep 2010 18:49:53 +0000 (18:49 +0000)
This adds the enum name to the generated constants to avoid collisions.

Patch: Ben Taitelbaum

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@995924 13f79535-47bb-0310-9956-ffa450edef68

compiler/cpp/src/generate/t_erl_generator.cc

index a5b6b9c..2ed0315 100644 (file)
@@ -298,7 +298,7 @@ void t_erl_generator::generate_enum(t_enum* tenum) {
     string name = capitalize((*c_iter)->get_name());
 
     f_types_hrl_file_ <<
-      indent() << "-define(" << program_name_ << "_" << name << ", " << value << ")."<< endl;
+      indent() << "-define(" << program_name_ << "_" << tenum->get_name() << "_" << name << ", " << value << ")."<< endl;
   }
 
   f_types_hrl_file_ << endl;