summaryrefslogtreecommitdiff
path: root/src/bin/eolian_cxx
diff options
context:
space:
mode:
authorDaniel Zaoui <daniel.zaoui@samsung.com>2014-05-04 10:04:06 +0300
committerDaniel Zaoui <daniel.zaoui@samsung.com>2014-05-07 09:13:25 +0300
commit935db516b2be3eb87018524a0cf1937c711dfefd (patch)
treea3baf45e45d291090e6e62f35aec2f419f8fb2d0 /src/bin/eolian_cxx
parent56fd4ef704014acfdda7149e2f67a137896adc6f (diff)
Eolian_CXX: Fix generation warnings.
Since there was a bug in Eolian (Spank on you Savio that you didn't tell me :-)), the cxx generator needed some workaround that is no more mandatory now.
Diffstat (limited to 'src/bin/eolian_cxx')
-rw-r--r--src/bin/eolian_cxx/convert.cc14
1 files changed, 4 insertions, 10 deletions
diff --git a/src/bin/eolian_cxx/convert.cc b/src/bin/eolian_cxx/convert.cc
index 306ddc10c2..8827899014 100644
--- a/src/bin/eolian_cxx/convert.cc
+++ b/src/bin/eolian_cxx/convert.cc
@@ -182,22 +182,16 @@ convert_eolian_implements(efl::eolian::eo_class& cls, const char *classname)
182 EINA_LIST_FOREACH(eolian_class_implements_list_get(classname), it, impl_desc_) 182 EINA_LIST_FOREACH(eolian_class_implements_list_get(classname), it, impl_desc_)
183 { 183 {
184 Eolian_Implement impl_desc = static_cast<Eolian_Implement>(impl_desc_); 184 Eolian_Implement impl_desc = static_cast<Eolian_Implement>(impl_desc_);
185 Eolian_Function_Type func_type;
186 const char *func_name;
187 const char *impl_class; 185 const char *impl_class;
186 const char *func_name;
187 Eolian_Function_Type func_type;
188 eolian_implement_information_get 188 eolian_implement_information_get
189 (impl_desc, &impl_class, &func_name, &func_type); 189 (impl_desc, &impl_class, &func_name, &func_type);
190#if 1 // XXX only due to a bug in Eolian we have to double-check
191 if(func_type == EOLIAN_UNRESOLVED &&
192 eolian_class_function_find_by_name(impl_class, func_name, EOLIAN_CTOR) != NULL)
193 func_type = EOLIAN_CTOR;
194#endif
195 if (func_type == EOLIAN_CTOR) 190 if (func_type == EOLIAN_CTOR)
196 { 191 {
197 efl::eolian::eo_constructor constructor; 192 efl::eolian::eo_constructor constructor;
198 Eolian_Function eolian_constructor = eolian_class_function_find_by_name 193 Eolian_Function eolian_constructor =
199 (impl_class, func_name, func_type); 194 eolian_class_function_find_by_name(impl_class, func_name, func_type);
200 assert(eolian_constructor != NULL);
201 std::string parent = safe_str(impl_class); 195 std::string parent = safe_str(impl_class);
202 if(parent == "Eo_Base") parent = "eo"; 196 if(parent == "Eo_Base") parent = "eo";
203 else std::transform(parent.begin(), parent.end(), parent.begin(), ::tolower); 197 else std::transform(parent.begin(), parent.end(), parent.begin(), ::tolower);