Thrift should generate C++ enums first before typdefs
Summary: In case you want to typedef an enum
Reviewed By: aditya
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664916 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/compiler/cpp/src/generate/t_generator.cc b/compiler/cpp/src/generate/t_generator.cc
index e4e010a..b575cf4 100644
--- a/compiler/cpp/src/generate/t_generator.cc
+++ b/compiler/cpp/src/generate/t_generator.cc
@@ -13,13 +13,6 @@
// Initialize the generator
init_generator();
- // Generate typedefs
- vector<t_typedef*> typedefs = program_->get_typedefs();
- vector<t_typedef*>::iterator td_iter;
- for (td_iter = typedefs.begin(); td_iter != typedefs.end(); ++td_iter) {
- generate_typedef(*td_iter);
- }
-
// Generate enums
vector<t_enum*> enums = program_->get_enums();
vector<t_enum*>::iterator en_iter;
@@ -27,6 +20,13 @@
generate_enum(*en_iter);
}
+ // Generate typedefs
+ vector<t_typedef*> typedefs = program_->get_typedefs();
+ vector<t_typedef*>::iterator td_iter;
+ for (td_iter = typedefs.begin(); td_iter != typedefs.end(); ++td_iter) {
+ generate_typedef(*td_iter);
+ }
+
// Generate constants
vector<t_const*> consts = program_->get_consts();
generate_consts(consts);