summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/eolian_cxx/grammar/klass_def.hpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/lib/eolian_cxx/grammar/klass_def.hpp b/src/lib/eolian_cxx/grammar/klass_def.hpp
index 14fa31d3ea..2ea8b40fac 100644
--- a/src/lib/eolian_cxx/grammar/klass_def.hpp
+++ b/src/lib/eolian_cxx/grammar/klass_def.hpp
@@ -221,7 +221,7 @@ struct type_def
221 { 221 {
222 set(eolian_type, unit); 222 set(eolian_type, unit);
223 } 223 }
224 void set(Eolian_Type const* eolian_type, Eolian_Unit const* unit); 224 void set(Eolian_Type const* eolian_type, Eolian_Unit const* unit, Eolian_C_Type_Type ctype);
225}; 225};
226 226
227struct get_qualifier_visitor 227struct get_qualifier_visitor
@@ -249,9 +249,9 @@ inline bool operator!=(type_def const& lhs, type_def const& rhs)
249 249
250type_def const void_ {attributes::regular_type_def{"void", {qualifier_info::is_none, {}}, {}}, "void"}; 250type_def const void_ {attributes::regular_type_def{"void", {qualifier_info::is_none, {}}, {}}, "void"};
251 251
252inline void type_def::set(Eolian_Type const* eolian_type, Eolian_Unit const* unit) 252inline void type_def::set(Eolian_Type const* eolian_type, Eolian_Unit const* unit, Eolian_C_Type_Type ctype)
253{ 253{
254 c_type = ::eolian_type_c_type_get(eolian_type); 254 c_type = ::eolian_type_c_type_get(eolian_type, ctype);
255 // ::eina_stringshare_del(stringshare); // this crashes 255 // ::eina_stringshare_del(stringshare); // this crashes
256 switch( ::eolian_type_type_get(eolian_type)) 256 switch( ::eolian_type_type_get(eolian_type))
257 { 257 {
@@ -350,7 +350,7 @@ struct parameter_def
350 parameter_def(Eolian_Function_Parameter const* param, Eolian_Unit const* unit) 350 parameter_def(Eolian_Function_Parameter const* param, Eolian_Unit const* unit)
351 : type( ::eolian_parameter_type_get(param), unit) 351 : type( ::eolian_parameter_type_get(param), unit)
352 , param_name( ::eolian_parameter_name_get(param)) 352 , param_name( ::eolian_parameter_name_get(param))
353 , c_type( ::eolian_type_c_type_get(::eolian_parameter_type_get(param))) 353 , c_type( ::eolian_type_c_type_get(::eolian_parameter_type_get(param), EOLIAN_C_TYPE_PARAM))
354 { 354 {
355 Eolian_Parameter_Dir direction = ::eolian_parameter_direction_get(param); 355 Eolian_Parameter_Dir direction = ::eolian_parameter_direction_get(param);
356 switch(direction) 356 switch(direction)
@@ -439,7 +439,7 @@ struct function_def
439 Eolian_Type const* r_type = ::eolian_function_return_type_get(function, type); 439 Eolian_Type const* r_type = ::eolian_function_return_type_get(function, type);
440 name = ::eolian_function_name_get(function); 440 name = ::eolian_function_name_get(function);
441 if(r_type) 441 if(r_type)
442 return_type.set(r_type, unit); 442 return_type.set(r_type, unit, EOLIAN_C_TYPE_RETURN);
443 if(type == EOLIAN_METHOD) 443 if(type == EOLIAN_METHOD)
444 { 444 {
445 for(efl::eina::iterator<Eolian_Function_Parameter> param_iterator ( ::eolian_function_parameters_get(function)) 445 for(efl::eina::iterator<Eolian_Function_Parameter> param_iterator ( ::eolian_function_parameters_get(function))