jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=b4e3d4d8a4f1e0712dbbd309bf4b2f11e36acef1
commit b4e3d4d8a4f1e0712dbbd309bf4b2f11e36acef1 Author: Jean-Philippe Andre <jp.an...@samsung.com> Date: Wed Nov 22 20:50:11 2017 +0900 cxx: Avoid pedantic warning with -Wold-style-cast This affects the generated headers. --- src/lib/eolian_cxx/grammar/base_class_definition.hpp | 9 +++++---- src/lib/eolian_cxx/grammar/class_definition.hpp | 9 +++++---- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/lib/eolian_cxx/grammar/base_class_definition.hpp b/src/lib/eolian_cxx/grammar/base_class_definition.hpp index aa61334020..d5fa914b53 100644 --- a/src/lib/eolian_cxx/grammar/base_class_definition.hpp +++ b/src/lib/eolian_cxx/grammar/base_class_definition.hpp @@ -64,10 +64,11 @@ struct base_class_definition_generator return false; if(!as_generator(";\n" << scope_tab << "}\n").generate(sink, attributes::unused, context)) return false; - if(!as_generator - ( - scope_tab << "Eo* _eo_ptr() const { return *(Eo**)this; }\n" - ).generate(sink, attributes::unused, context)) return false; + if(!as_generator( + scope_tab << "Eo* _eo_ptr() const { return *(reinterpret_cast<Eo **>" + << "(const_cast<" << string << " *>(this))); }\n" + ).generate(sink, cls.cxx_name, context)) + return false; // operator ::ns::Class_Name() const; // operator ::ns::Class_Name&(); diff --git a/src/lib/eolian_cxx/grammar/class_definition.hpp b/src/lib/eolian_cxx/grammar/class_definition.hpp index 1e21336d9f..30a9daf134 100644 --- a/src/lib/eolian_cxx/grammar/class_definition.hpp +++ b/src/lib/eolian_cxx/grammar/class_definition.hpp @@ -128,10 +128,11 @@ struct class_definition_generator return false; if(!as_generator(";\n" << scope_tab << "}\n").generate(sink, attributes::unused, context)) return false; - if(!as_generator - ( - scope_tab << "Eo* _eo_ptr() const { return *(Eo**)this; }\n" - ).generate(sink, attributes::unused, context)) return false; + if(!as_generator( + scope_tab << "Eo* _eo_ptr() const { return *(reinterpret_cast<Eo **>" + << "(const_cast<" << string << " *>(this))); }\n" + ).generate(sink, cls.cxx_name, context)) + return false; for (auto&& e : cls.events) { --