In addition, these changes have introduced compilation warnings when
compiling the tests:
../src/tests/eolian/generated_promise.eo.c:16:53: warning: declaration
shadows a local variable [-Wshadow]
EOAPI EO_VOID_FUNC_BODYV(generated_promise_method1,
_EINA_PROMISE_BEFORE_HOOK(int, void, Eina_Promise_Owner *pr...
^
../../src/lib/eina/eina_promise.h:450:30: note: expanded from macro
'_EINA_PROMISE_BEFORE_HOOK'
_Eo__Promise_func_ const _func_ = _promise_func;
^
../../src/lib/eo/Eo.h:575:105: note: expanded from macro
'EO_VOID_FUNC_BODYV'
#define EO_VOID_FUNC_BODYV(Name, BeforeHook, AfterHook, Arguments, ...)
_EO_VOID_FUNC_BODYV(Name, Eo *, BeforeHook, Aft
...
^
../../src/lib/eo/Eo.h:566:6: note: expanded from macro '_EO_VOID_FUNC_BODYV'
BeforeHook() \
^
../src/tests/eolian/generated_promise.eo.c:16:7: note: previous
declaration is here
EOAPI EO_VOID_FUNC_BODYV(generated_promise_method1,
_EINA_PROMISE_BEFORE_HOOK(int, void, Eina_Promise_Owner *pr...
^
../../src/lib/eo/Eo.h:575:73: note: expanded from macro 'EO_VOID_FUNC_BODYV'
#define EO_VOID_FUNC_BODYV(Name, BeforeHook, AfterHook, Arguments, ...)
_EO_VOID_FUNC_BODYV(Name, Eo *, BeforeH...
^
../../src/lib/eo/Eo.h:565:6: note: expanded from macro '_EO_VOID_FUNC_BODYV'
EO_FUNC_COMMON_OP(obj, Name, );
\
^
../../src/lib/eo/Eo.h:515:24: note: expanded from macro 'EO_FUNC_COMMON_OP'
_Eo_##Name##_func _func_ = (_Eo_##Name##_func) ___call.func; \
^
CCLD tests/eeze/eeze_suite
CCLD tests/eldbus/eldbus_suite
Please also take a look at those.
On 07/04/16 09:39, Tom Hacohen wrote:
> Dude, we've been through this already and this is not what we talked about.
>
> You just made everything extremely ugly and annoying to use all around.
> Why did you *again* not let me have a look at it before pushing it?
>
> Wrapper macros (although they would have doubled everything) would have
> been much better here. Please add the compatible macros back.
>
> I expect to be talked to when changes are made to Eo API. Heck, even
> notified, I got neither.
>
> Cedric: this goes to you too, as you've signed off this commit and
> pushed it. WTF.
>
> --
> Tom
>
> On 06/04/16 22:43, Felipe Magno de Almeida wrote:
>> cedric pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/efl.git/commit/?id=944e11559c34fd342550648c2dd9b3de270d3fa8
>>
>> commit 944e11559c34fd342550648c2dd9b3de270d3fa8
>> Author: Felipe Magno de Almeida <[email protected]>
>> Date: Fri Mar 11 17:22:59 2016 -0300
>>
>> eo: add before and after macro hooks for API generation functions
>>
>> Add two parameters for macros that generate API functions in Eo so
>> that the generation can be customized with macros used by Eolian.
>>
>> Signed-off-by: Cedric Bail <[email protected]>
>> ---
>> src/bin/eolian/eo_generator.c | 2 +-
>> src/bindings/eo_cxx/eo_inherit.hh | 2 +-
>> src/lib/eo/Eo.h | 36 ++++--
>> src/tests/eo/access/access_inherit.c | 2 +-
>> src/tests/eo/access/access_simple.c | 2 +-
>> .../composite_objects/composite_objects_simple.c | 132
>> ++++++++++-----------
>> src/tests/eo/constructors/constructors_mixin.c | 2 +-
>> src/tests/eo/constructors/constructors_simple.c | 6 +-
>> .../function_overrides_inherit2.c | 4 +-
>> .../function_overrides/function_overrides_simple.c | 8 +-
>> src/tests/eo/interface/interface_interface.c | 2 +-
>> src/tests/eo/interface/interface_interface2.c | 2 +-
>> src/tests/eo/interface/interface_simple.c | 4 +-
>> src/tests/eo/mixin/mixin_mixin.c | 2 +-
>> src/tests/eo/mixin/mixin_simple.c | 4 +-
>> src/tests/eo/signals/signals_simple.c | 2 +-
>> src/tests/eo/suite/eo_test_class_simple.c | 18 +--
>> src/tests/eo/suite/eo_test_general.c | 4 +-
>> src/tests/eo/suite/eo_test_threaded_calls.c | 6 +-
>> src/tests/eolian/data/class_simple_ref.c | 10 +-
>> src/tests/eolian/data/override_ref.c | 18 +--
>> 21 files changed, 139 insertions(+), 129 deletions(-)
>>
>> diff --git a/src/bin/eolian/eo_generator.c b/src/bin/eolian/eo_generator.c
>> index d718775..22efb10 100644
>> --- a/src/bin/eolian/eo_generator.c
>> +++ b/src/bin/eolian/eo_generator.c
>> @@ -511,7 +511,7 @@ eo_bind_func_generate(const Eolian_Class *class, const
>> Eolian_Function *funcid,
>> Eina_Bool ret_is_void = (!rettype || !strcmp(rettype, "void"));
>> _class_func_env_create(class, eolian_function_name_get(funcid),
>> ftype, &func_env);
>> eina_strbuf_append_printf(eo_func_decl,
>> - "EOAPI EO_%sFUNC_BODY%s%s(%s",
>> + "EOAPI EO_%sFUNC_BODY%s%s(%s, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK",
>> ret_is_void?"VOID_":"", has_params?"V":"",
>> (ftype == EOLIAN_PROP_GET ||
>> eolian_function_object_is_const(funcid) ||
>> diff --git a/src/bindings/eo_cxx/eo_inherit.hh
>> b/src/bindings/eo_cxx/eo_inherit.hh
>> index a05d11f..a73de37 100644
>> --- a/src/bindings/eo_cxx/eo_inherit.hh
>> +++ b/src/bindings/eo_cxx/eo_inherit.hh
>> @@ -30,7 +30,7 @@ Eo_Class const* create_class(eina::index_sequence<S...>);
>> /// @param this_ The <em>user data</em> to be passed to the resolved
>> function.
>> /// @param args An heterogeneous sequence of arguments.
>> ///
>> -inline EO_VOID_FUNC_BODYV(inherit_constructor, EO_FUNC_CALL(this_), void*
>> this_);
>> +inline EO_VOID_FUNC_BODYV(inherit_constructor, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK, EO_FUNC_CALL(this_), void* this_);
>>
>> }
>>
>> diff --git a/src/lib/eo/Eo.h b/src/lib/eo/Eo.h
>> index f890b83..4992b21 100644
>> --- a/src/lib/eo/Eo.h
>> +++ b/src/lib/eo/Eo.h
>> @@ -515,60 +515,70 @@ typedef struct _Eo_Call_Cache
>> __FILE__, __LINE__)) return DefRet; \
>> _Eo_##Name##_func _func_ = (_Eo_##Name##_func) ___call.func; \
>>
>> +#define _EO_EMPTY_HOOK()
>> +
>> // to define an EAPI function
>> -#define _EO_FUNC_BODY(Name, ObjType, Ret, DefRet)
>> \
>> +#define _EO_FUNC_BODY(Name, ObjType, BeforeHook, AfterHook, Ret, DefRet) \
>> Ret \
>> Name(ObjType obj)
>> \
>> { \
>> typedef Ret (*_Eo_##Name##_func)(Eo *, void *obj_data); \
>> Ret _r; \
>> EO_FUNC_COMMON_OP(obj, Name, DefRet);
>> \
>> + BeforeHook() \
>> _r = _func_(___call.eo_id, ___call.data);
>> \
>> _eo_call_end(&___call); \
>> + AfterHook() \
>> return _r; \
>> }
>>
>> -#define _EO_VOID_FUNC_BODY(Name, ObjType)
>> \
>> +#define _EO_VOID_FUNC_BODY(Name, ObjType, BeforeHook, AfterHook) \
>> void
>> \
>> Name(ObjType obj)
>> \
>> { \
>> typedef void (*_Eo_##Name##_func)(Eo *, void *obj_data); \
>> EO_FUNC_COMMON_OP(obj, Name, );
>> \
>> + BeforeHook() \
>> _func_(___call.eo_id, ___call.data);
>> \
>> - _eo_call_end(&___call); \
>> + _eo_call_end(&___call); \
>> + AfterHook() \
>> }
>>
>> -#define _EO_FUNC_BODYV(Name, ObjType, Ret, DefRet, Arguments, ...)
>> \
>> +#define _EO_FUNC_BODYV(Name, ObjType, BeforeHook, AfterHook, Ret, DefRet,
>> Arguments, ...) \
>> Ret \
>> Name(ObjType obj, __VA_ARGS__)
>> \
>> { \
>> typedef Ret (*_Eo_##Name##_func)(Eo *, void *obj_data, __VA_ARGS__);
>> \
>> Ret _r; \
>> EO_FUNC_COMMON_OP(obj, Name, DefRet);
>> \
>> + BeforeHook() \
>> _r = _func_(___call.eo_id, ___call.data, Arguments);
>> \
>> _eo_call_end(&___call); \
>> + AfterHook() \
>> return _r; \
>> }
>>
>> -#define _EO_VOID_FUNC_BODYV(Name, ObjType, Arguments, ...)
>> \
>> +#define _EO_VOID_FUNC_BODYV(Name, ObjType, BeforeHook, AfterHook,
>> Arguments, ...) \
>> void \
>> Name(ObjType obj, __VA_ARGS__)
>> \
>> { \
>> typedef void (*_Eo_##Name##_func)(Eo *, void *obj_data,
>> __VA_ARGS__); \
>> EO_FUNC_COMMON_OP(obj, Name, );
>> \
>> + BeforeHook() \
>> _func_(___call.eo_id, ___call.data, Arguments);
>> \
>> _eo_call_end(&___call); \
>> + AfterHook() \
>> }
>>
>> -#define EO_FUNC_BODY(Name, Ret, DefRet) _EO_FUNC_BODY(Name, Eo *, Ret,
>> DefRet)
>> -#define EO_VOID_FUNC_BODY(Name) _EO_VOID_FUNC_BODY(Name, Eo *)
>> -#define EO_FUNC_BODYV(Name, Ret, DefRet, Arguments, ...)
>> _EO_FUNC_BODYV(Name, Eo *, Ret, DefRet, EO_FUNC_CALL(Arguments), __VA_ARGS__)
>> -#define EO_VOID_FUNC_BODYV(Name, Arguments, ...) _EO_VOID_FUNC_BODYV(Name,
>> Eo *, EO_FUNC_CALL(Arguments), __VA_ARGS__)
>> +#define EO_FUNC_BODY(Name, BeforeHook, AfterHook, Ret, DefRet)
>> _EO_FUNC_BODY(Name, Eo *, BeforeHook, AfterHook, Ret, DefRet)
>> +#define EO_VOID_FUNC_BODY(Name, BeforeHook, AfterHook)
>> _EO_VOID_FUNC_BODY(Name, Eo *, BeforeHook, AfterHook)
>> +#define EO_FUNC_BODYV(Name, BeforeHook, AfterHook, Ret, DefRet, Arguments,
>> ...) _EO_FUNC_BODYV(Name, Eo *, BeforeHook, AfterHook, Ret, DefRet,
>> EO_FUNC_CALL(Arguments), __VA_ARGS__)
>> +#define EO_VOID_FUNC_BODYV(Name, BeforeHook, AfterHook, Arguments, ...)
>> _EO_VOID_FUNC_BODYV(Name, Eo *, BeforeHook, AfterHook,
>> EO_FUNC_CALL(Arguments), __VA_ARGS__)
>>
>> -#define EO_FUNC_BODY_CONST(Name, Ret, DefRet) _EO_FUNC_BODY(Name, const Eo
>> *, Ret, DefRet)
>> -#define EO_VOID_FUNC_BODY_CONST(Name) _EO_VOID_FUNC_BODY(Name, const Eo *)
>> -#define EO_FUNC_BODYV_CONST(Name, Ret, DefRet, Arguments, ...)
>> _EO_FUNC_BODYV(Name, const Eo *, Ret, DefRet, EO_FUNC_CALL(Arguments),
>> __VA_ARGS__)
>> -#define EO_VOID_FUNC_BODYV_CONST(Name, Arguments, ...)
>> _EO_VOID_FUNC_BODYV(Name, const Eo *, EO_FUNC_CALL(Arguments), __VA_ARGS__)
>> +#define EO_FUNC_BODY_CONST(Name, BeforeHook, AfterHook, Ret, DefRet)
>> _EO_FUNC_BODY(Name, const Eo *, BeforeHook, AfterHook, Ret, DefRet)
>> +#define EO_VOID_FUNC_BODY_CONST(Name, BeforeHook, AfterHook)
>> _EO_VOID_FUNC_BODY(Name, const Eo *, BeforeHook, AfterHook)
>> +#define EO_FUNC_BODYV_CONST(Name, BeforeHook, AfterHook, Ret, DefRet,
>> Arguments, ...) _EO_FUNC_BODYV(Name, const Eo *, BeforeHook, AfterHook, Ret,
>> DefRet, EO_FUNC_CALL(Arguments), __VA_ARGS__)
>> +#define EO_VOID_FUNC_BODYV_CONST(Name, BeforeHook, AfterHook, Arguments,
>> ...) _EO_VOID_FUNC_BODYV(Name, const Eo *, BeforeHook, AfterHook,
>> EO_FUNC_CALL(Arguments), __VA_ARGS__)
>>
>> #ifndef _WIN32
>> # define _EO_OP_API_ENTRY(a) (void*)a
>> diff --git a/src/tests/eo/access/access_inherit.c
>> b/src/tests/eo/access/access_inherit.c
>> index 6ab831f..f49f0a5 100644
>> --- a/src/tests/eo/access/access_inherit.c
>> +++ b/src/tests/eo/access/access_inherit.c
>> @@ -16,7 +16,7 @@ _prot_print(Eo *obj, void *class_data EINA_UNUSED)
>> printf("%s %d\n", __func__, pd->protected_x1);
>> }
>>
>> -EAPI EO_VOID_FUNC_BODY(inherit_prot_print);
>> +EAPI EO_VOID_FUNC_BODY(inherit_prot_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(inherit_prot_print, _prot_print),
>> diff --git a/src/tests/eo/access/access_simple.c
>> b/src/tests/eo/access/access_simple.c
>> index b4f8766..a72949f 100644
>> --- a/src/tests/eo/access/access_simple.c
>> +++ b/src/tests/eo/access/access_simple.c
>> @@ -30,7 +30,7 @@ _a_set(Eo *obj, void *class_data, int a)
>> eo_event_callback_call(obj, EV_A_CHANGED, &pd->a);
>> }
>>
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(simple_a_set, _a_set),
>> diff --git a/src/tests/eo/composite_objects/composite_objects_simple.c
>> b/src/tests/eo/composite_objects/composite_objects_simple.c
>> index 5c64cc0..fb3319a 100644
>> --- a/src/tests/eo/composite_objects/composite_objects_simple.c
>> +++ b/src/tests/eo/composite_objects/composite_objects_simple.c
>> @@ -27,73 +27,73 @@ _a_get(Eo *obj EINA_UNUSED, void *class_data)
>> return pd->a;
>> }
>>
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a);
>> -EAPI EO_FUNC_BODY(simple_a_get, int, 0);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_FUNC_BODY(simple_a_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>>
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set1, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set2, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set3, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set4, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set5, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set6, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set7, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set8, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set9, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set10, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set11, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set12, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set13, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set14, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set15, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set16, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set17, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set18, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set19, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set20, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set21, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set22, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set23, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set24, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set25, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set26, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set27, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set28, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set29, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set30, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set31, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set32, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get1, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get2, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get3, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get4, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get5, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get6, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get7, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get8, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get9, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get10, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get11, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get12, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get13, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get14, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get15, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get16, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get17, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get18, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get19, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get20, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get21, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get22, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get23, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get24, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get25, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get26, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get27, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get28, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get29, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get30, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get31, EO_FUNC_CALL(a), int a);
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_get32, EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set1, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set2, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set3, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set4, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set5, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set6, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set7, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set8, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set9, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set10, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set11, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set12, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set13, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set14, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set15, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set16, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set17, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set18, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set19, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set20, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set21, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set22, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set23, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set24, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set25, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set26, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set27, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set28, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set29, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set30, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set31, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set32, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get1, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get2, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get3, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get4, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get5, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get6, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get7, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get8, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get9, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get10, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get11, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get12, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get13, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get14, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get15, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get16, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get17, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get18, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get19, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get20, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get21, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get22, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get23, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get24, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get25, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get26, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get27, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get28, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get29, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get30, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get31, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_get32, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>>
>> /* XXX: This is fragile, and emulates many IDs in order to go to the next
>> * op id chain (assuming chain size is as it is at the moment, 32).
>> diff --git a/src/tests/eo/constructors/constructors_mixin.c
>> b/src/tests/eo/constructors/constructors_mixin.c
>> index b2e523b..4c6058c 100644
>> --- a/src/tests/eo/constructors/constructors_mixin.c
>> +++ b/src/tests/eo/constructors/constructors_mixin.c
>> @@ -35,7 +35,7 @@ _destructor(Eo *obj, void *class_data EINA_UNUSED)
>> my_init_count--;
>> }
>>
>> -EAPI EO_VOID_FUNC_BODYV(mixin_add_and_print, EO_FUNC_CALL(x), int x);
>> +EAPI EO_VOID_FUNC_BODYV(mixin_add_and_print, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK, EO_FUNC_CALL(x), int x);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(mixin_add_and_print, _add_and_print_set),
>> diff --git a/src/tests/eo/constructors/constructors_simple.c
>> b/src/tests/eo/constructors/constructors_simple.c
>> index 370ca60..01c0701 100644
>> --- a/src/tests/eo/constructors/constructors_simple.c
>> +++ b/src/tests/eo/constructors/constructors_simple.c
>> @@ -31,8 +31,8 @@ _##name##_set(Eo *obj EINA_UNUSED, void *class_data, int
>> name) \
>> pd->name = name; \
>> printf("%s %d\n", __func__, pd->name); \
>> } \
>> -EO_VOID_FUNC_BODYV(simple_##name##_set, EO_FUNC_CALL(name), int name); \
>> -EO_FUNC_BODY(simple_##name##_get, int, 0);
>> +EO_VOID_FUNC_BODYV(simple_##name##_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(name), int name); \
>> +EO_FUNC_BODY(simple_##name##_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>>
>> _GET_SET_FUNC(a)
>> _GET_SET_FUNC(b)
>> @@ -83,7 +83,7 @@ _class_destructor(Eo_Class *klass EINA_UNUSED)
>> free(class_var);
>> }
>>
>> -EO_VOID_FUNC_BODYV(simple_constructor, EO_FUNC_CALL(a), int a);
>> +EO_VOID_FUNC_BODYV(simple_constructor, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor),
>> diff --git a/src/tests/eo/function_overrides/function_overrides_inherit2.c
>> b/src/tests/eo/function_overrides/function_overrides_inherit2.c
>> index b4602aa..b25b99b 100644
>> --- a/src/tests/eo/function_overrides/function_overrides_inherit2.c
>> +++ b/src/tests/eo/function_overrides/function_overrides_inherit2.c
>> @@ -56,8 +56,8 @@ _class_print(Eo_Class *klass, void *data EINA_UNUSED)
>> return EINA_TRUE;
>> }
>>
>> -EAPI EO_FUNC_BODY(inherit2_print, Eina_Bool, EINA_FALSE);
>> -EAPI EO_FUNC_BODY(inherit2_print2, Eina_Bool, EINA_FALSE);
>> +EAPI EO_FUNC_BODY(inherit2_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> Eina_Bool, EINA_FALSE);
>> +EAPI EO_FUNC_BODY(inherit2_print2, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> Eina_Bool, EINA_FALSE);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(inherit2_print, _print),
>> diff --git a/src/tests/eo/function_overrides/function_overrides_simple.c
>> b/src/tests/eo/function_overrides/function_overrides_simple.c
>> index 1e0a6a2..8824d6e 100644
>> --- a/src/tests/eo/function_overrides/function_overrides_simple.c
>> +++ b/src/tests/eo/function_overrides/function_overrides_simple.c
>> @@ -51,10 +51,10 @@ _class_print2(Eo_Class *klass, void *class_data
>> EINA_UNUSED)
>> return EINA_TRUE;
>> }
>>
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a);
>> -EAPI EO_FUNC_BODY(simple_a_print, Eina_Bool, EINA_FALSE);
>> -EAPI EO_FUNC_BODY_CONST(simple_class_print, Eina_Bool, EINA_FALSE);
>> -EAPI EO_FUNC_BODY_CONST(simple_class_print2, Eina_Bool, EINA_FALSE);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EAPI EO_FUNC_BODY(simple_a_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> Eina_Bool, EINA_FALSE);
>> +EAPI EO_FUNC_BODY_CONST(simple_class_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> Eina_Bool, EINA_FALSE);
>> +EAPI EO_FUNC_BODY_CONST(simple_class_print2, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK, Eina_Bool, EINA_FALSE);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(simple_a_set, _a_set),
>> diff --git a/src/tests/eo/interface/interface_interface.c
>> b/src/tests/eo/interface/interface_interface.c
>> index 32b00c8..cf204b9 100644
>> --- a/src/tests/eo/interface/interface_interface.c
>> +++ b/src/tests/eo/interface/interface_interface.c
>> @@ -8,7 +8,7 @@
>>
>> #define MY_CLASS INTERFACE_CLASS
>>
>> -EO_FUNC_BODY(interface_ab_sum_get, int, 0);
>> +EO_FUNC_BODY(interface_ab_sum_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(interface_ab_sum_get, NULL),
>> diff --git a/src/tests/eo/interface/interface_interface2.c
>> b/src/tests/eo/interface/interface_interface2.c
>> index 12cbb92..ad99c21 100644
>> --- a/src/tests/eo/interface/interface_interface2.c
>> +++ b/src/tests/eo/interface/interface_interface2.c
>> @@ -9,7 +9,7 @@
>>
>> #define MY_CLASS INTERFACE2_CLASS
>>
>> -EO_FUNC_BODY(interface2_ab_sum_get2, int, 0);
>> +EO_FUNC_BODY(interface2_ab_sum_get2, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int,
>> 0);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(interface2_ab_sum_get2, NULL),
>> diff --git a/src/tests/eo/interface/interface_simple.c
>> b/src/tests/eo/interface/interface_simple.c
>> index 589274f..2f5a7b9 100644
>> --- a/src/tests/eo/interface/interface_simple.c
>> +++ b/src/tests/eo/interface/interface_simple.c
>> @@ -30,8 +30,8 @@ _##name##_set(Eo *obj EINA_UNUSED, void *class_data, int
>> name) \
>> pd->name = name; \
>> printf("%s %d\n", __func__, pd->name); \
>> } \
>> -EO_VOID_FUNC_BODYV(simple_##name##_set, EO_FUNC_CALL(name), int name); \
>> -EO_FUNC_BODY(simple_##name##_get, int, 0);
>> +EO_VOID_FUNC_BODYV(simple_##name##_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(name), int name); \
>> +EO_FUNC_BODY(simple_##name##_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>>
>> _GET_SET_FUNC(a)
>> _GET_SET_FUNC(b)
>> diff --git a/src/tests/eo/mixin/mixin_mixin.c
>> b/src/tests/eo/mixin/mixin_mixin.c
>> index 427293e..d086050 100644
>> --- a/src/tests/eo/mixin/mixin_mixin.c
>> +++ b/src/tests/eo/mixin/mixin_mixin.c
>> @@ -30,7 +30,7 @@ _destructor(Eo *obj, void *class_data EINA_UNUSED)
>> eo_destructor(eo_super(obj, MY_CLASS));
>> }
>>
>> -EAPI EO_FUNC_BODY(mixin_ab_sum_get, int, 0);
>> +EAPI EO_FUNC_BODY(mixin_ab_sum_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor),
>> diff --git a/src/tests/eo/mixin/mixin_simple.c
>> b/src/tests/eo/mixin/mixin_simple.c
>> index 5184e0e..8acccad 100644
>> --- a/src/tests/eo/mixin/mixin_simple.c
>> +++ b/src/tests/eo/mixin/mixin_simple.c
>> @@ -31,8 +31,8 @@ _##name##_set(Eo *obj EINA_UNUSED, void *class_data, int
>> name) \
>> pd->name = name; \
>> printf("%s %d\n", __func__, pd->name); \
>> } \
>> -EO_VOID_FUNC_BODYV(simple_##name##_set, EO_FUNC_CALL(name), int name); \
>> -EO_FUNC_BODY(simple_##name##_get, int, 0);
>> +EO_VOID_FUNC_BODYV(simple_##name##_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(name), int name); \
>> +EO_FUNC_BODY(simple_##name##_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>>
>> _GET_SET_FUNC(a)
>> _GET_SET_FUNC(b)
>> diff --git a/src/tests/eo/signals/signals_simple.c
>> b/src/tests/eo/signals/signals_simple.c
>> index 458b95c..0acfb06 100644
>> --- a/src/tests/eo/signals/signals_simple.c
>> +++ b/src/tests/eo/signals/signals_simple.c
>> @@ -69,7 +69,7 @@ _constructor(Eo *obj, void *class_data EINA_UNUSED)
>> return obj;
>> }
>>
>> -EAPI EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a);
>> +EAPI EO_VOID_FUNC_BODYV(simple_a_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC_OVERRIDE(eo_constructor, _constructor),
>> diff --git a/src/tests/eo/suite/eo_test_class_simple.c
>> b/src/tests/eo/suite/eo_test_class_simple.c
>> index 8566ed9..fbe6f05 100644
>> --- a/src/tests/eo/suite/eo_test_class_simple.c
>> +++ b/src/tests/eo/suite/eo_test_class_simple.c
>> @@ -48,7 +48,7 @@ _class_hi_print(Eo_Class *klass, void *data EINA_UNUSED)
>> return EINA_TRUE;
>> }
>>
>> -EO_FUNC_BODYV(simple_part_get, Eo *, NULL, EO_FUNC_CALL(name), const char
>> *name);
>> +EO_FUNC_BODYV(simple_part_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, Eo *, NULL,
>> EO_FUNC_CALL(name), const char *name);
>>
>> static Eo *
>> _part_get(Eo *obj, void *class_data EINA_UNUSED, const char *name
>> EINA_UNUSED)
>> @@ -57,7 +57,7 @@ _part_get(Eo *obj, void *class_data EINA_UNUSED, const
>> char *name EINA_UNUSED)
>> return eo_add(SIMPLE_CLASS, obj);
>> }
>>
>> -EO_VOID_FUNC_BODYV(simple_recursive, EO_FUNC_CALL(n), int n);
>> +EO_VOID_FUNC_BODYV(simple_recursive, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(n), int n);
>>
>> static void
>> _recursive(Eo *obj, void *class_data EINA_UNUSED, int n)
>> @@ -81,12 +81,12 @@ _dbg_info_get(Eo *eo_obj, void *_pd EINA_UNUSED,
>> Eo_Dbg_Info *root)
>> EO_DBG_INFO_APPEND(group, "Test", EINA_VALUE_TYPE_INT, 8);
>> }
>>
>> -EO_VOID_FUNC_BODYV(simple_a_set, EO_FUNC_CALL(a), int a);
>> -EO_FUNC_BODY(simple_a_get, int, 0);
>> -EO_FUNC_BODY(simple_a_print, Eina_Bool, EINA_FALSE);
>> -EO_FUNC_BODY_CONST(simple_class_hi_print, Eina_Bool, EINA_FALSE);
>> -EO_VOID_FUNC_BODY(simple_pure_virtual);
>> -EO_VOID_FUNC_BODY(simple_no_implementation);
>> +EO_VOID_FUNC_BODYV(simple_a_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(a), int a);
>> +EO_FUNC_BODY(simple_a_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>> +EO_FUNC_BODY(simple_a_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, Eina_Bool,
>> EINA_FALSE);
>> +EO_FUNC_BODY_CONST(simple_class_hi_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> Eina_Bool, EINA_FALSE);
>> +EO_VOID_FUNC_BODY(simple_pure_virtual, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK);
>> +EO_VOID_FUNC_BODY(simple_no_implementation, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK);
>>
>> static Eo_Op_Description op_descs[] = {
>> EO_OP_FUNC(simple_a_set, _a_set),
>> @@ -119,7 +119,7 @@ _beef_get(Eo *obj EINA_UNUSED, void *class_data
>> EINA_UNUSED)
>> return 0xBEEF;
>> }
>>
>> -EO_FUNC_BODY_CONST(simple2_class_beef_get, int, 0);
>> +EO_FUNC_BODY_CONST(simple2_class_beef_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> int, 0);
>>
>> static Eo_Op_Description op_descs2[] = {
>> EO_OP_CLASS_FUNC(simple2_class_beef_get, _beef_get),
>> diff --git a/src/tests/eo/suite/eo_test_general.c
>> b/src/tests/eo/suite/eo_test_general.c
>> index 0a9b74c..f54442d 100644
>> --- a/src/tests/eo/suite/eo_test_general.c
>> +++ b/src/tests/eo/suite/eo_test_general.c
>> @@ -742,8 +742,8 @@ _class_hi_print(Eo_Class *klass EINA_UNUSED, void
>> *class_data EINA_UNUSED)
>> return EINA_TRUE;
>> }
>>
>> -EO_FUNC_BODY(multi_a_print, Eina_Bool, EINA_FALSE);
>> -EO_FUNC_BODY_CONST(multi_class_hi_print, Eina_Bool, EINA_FALSE);
>> +EO_FUNC_BODY(multi_a_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, Eina_Bool,
>> EINA_FALSE);
>> +EO_FUNC_BODY_CONST(multi_class_hi_print, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> Eina_Bool, EINA_FALSE);
>>
>> static Eo_Op_Description _multi_do_op_descs[] = {
>> EO_OP_FUNC(multi_a_print, _a_print),
>> diff --git a/src/tests/eo/suite/eo_test_threaded_calls.c
>> b/src/tests/eo/suite/eo_test_threaded_calls.c
>> index 3f2231d..247bca5 100644
>> --- a/src/tests/eo/suite/eo_test_threaded_calls.c
>> +++ b/src/tests/eo/suite/eo_test_threaded_calls.c
>> @@ -20,9 +20,9 @@ typedef struct
>> #define THREAD_TEST_CLASS thread_test_class_get()
>> const Eo_Class *thread_test_class_get(void);
>>
>> -EO_FUNC_BODY(thread_test_v_get, int, 0);
>> -EO_VOID_FUNC_BODY(thread_test_try_swap_stack);
>> -EO_VOID_FUNC_BODYV(thread_test_constructor, EO_FUNC_CALL(v), int v);
>> +EO_FUNC_BODY(thread_test_v_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK, int, 0);
>> +EO_VOID_FUNC_BODY(thread_test_try_swap_stack, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK);
>> +EO_VOID_FUNC_BODYV(thread_test_constructor, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(v), int v);
>>
>> static int
>> _v_get(Eo *obj EINA_UNUSED, void *class_data)
>> diff --git a/src/tests/eolian/data/class_simple_ref.c
>> b/src/tests/eolian/data/class_simple_ref.c
>> index b97639d..1135ddf 100644
>> --- a/src/tests/eolian/data/class_simple_ref.c
>> +++ b/src/tests/eolian/data/class_simple_ref.c
>> @@ -1,15 +1,15 @@
>>
>> Eina_Bool _class_simple_a_set(Eo *obj, Evas_Simple_Data *pd, int value);
>>
>> -EOAPI EO_FUNC_BODYV(evas_obj_simple_a_set, Eina_Bool, EINA_TRUE,
>> EO_FUNC_CALL(value), int value);
>> +EOAPI EO_FUNC_BODYV(evas_obj_simple_a_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> Eina_Bool, EINA_TRUE, EO_FUNC_CALL(value), int value);
>>
>> int _class_simple_a_get(Eo *obj, Evas_Simple_Data *pd);
>>
>> -EOAPI EO_FUNC_BODY_CONST(evas_obj_simple_a_get, int, 100);
>> +EOAPI EO_FUNC_BODY_CONST(evas_obj_simple_a_get, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK, int, 100);
>>
>> void _class_simple_b_set(Eo *obj, Evas_Simple_Data *pd);
>>
>> -EOAPI EO_VOID_FUNC_BODY(evas_obj_simple_b_set);
>> +EOAPI EO_VOID_FUNC_BODY(evas_obj_simple_b_set, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK);
>>
>> char * _class_simple_foo(Eo *obj, Evas_Simple_Data *pd, int a, char *b,
>> double *c);
>>
>> @@ -19,11 +19,11 @@ static char * __eolian_class_simple_foo(Eo *obj,
>> Evas_Simple_Data *pd, int a, ch
>> return _class_simple_foo(obj, pd, a, b, c);
>> }
>>
>> -EOAPI EO_FUNC_BODYV(evas_obj_simple_foo, char *, NULL, EO_FUNC_CALL(a, b,
>> c), int a, char *b, double *c);
>> +EOAPI EO_FUNC_BODYV(evas_obj_simple_foo, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> char *, NULL, EO_FUNC_CALL(a, b, c), int a, char *b, double *c);
>>
>> int _class_simple_bar(Eo *obj, Evas_Simple_Data *pd, int x);
>>
>> -EOAPI EO_FUNC_BODYV(evas_obj_simple_bar, int, 0, EO_FUNC_CALL(x), int x);
>> +EOAPI EO_FUNC_BODYV(evas_obj_simple_bar, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> int, 0, EO_FUNC_CALL(x), int x);
>>
>> static const Eo_Op_Description _class_simple_op_desc[] = {
>> EO_OP_FUNC(evas_obj_simple_a_set, _class_simple_a_set),
>> diff --git a/src/tests/eolian/data/override_ref.c
>> b/src/tests/eolian/data/override_ref.c
>> index 5e9d08f..c5ad8dd 100644
>> --- a/src/tests/eolian/data/override_ref.c
>> +++ b/src/tests/eolian/data/override_ref.c
>> @@ -1,5 +1,5 @@
>> -EOAPI EO_VOID_FUNC_BODY(override_a_set);
>> -EOAPI EO_VOID_FUNC_BODY(override_foo);
>> +EOAPI EO_VOID_FUNC_BODY(override_a_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK);
>> +EOAPI EO_VOID_FUNC_BODY(override_foo, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK);
>>
>> static void __eolian_override_b_set(Eo *obj EINA_UNUSED, Override_Data
>> *pd, int idx EINA_UNUSED, float a, char b, int c)
>> {
>> @@ -8,7 +8,7 @@ static void __eolian_override_b_set(Eo *obj EINA_UNUSED,
>> Override_Data *pd, int
>> c = pd->c;
>> }
>>
>> -EOAPI EO_VOID_FUNC_BODYV(override_b_set, EO_FUNC_CALL(idx, a, b, c), int
>> idx, float a, char b, int c);
>> +EOAPI EO_VOID_FUNC_BODYV(override_b_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(idx, a, b, c), int idx, float a, char b, int c);
>>
>> static void __eolian_override_bar(Eo *obj EINA_UNUSED, Override_Data *pd
>> EINA_UNUSED, int idx EINA_UNUSED, int *a, char **str)
>> {
>> @@ -16,26 +16,26 @@ static void __eolian_override_bar(Eo *obj EINA_UNUSED,
>> Override_Data *pd EINA_UN
>> if (str) *str = NULL;
>> }
>>
>> -EOAPI EO_VOID_FUNC_BODYV(override_bar, EO_FUNC_CALL(idx, a, str), int idx,
>> int *a, char **str);
>> +EOAPI EO_VOID_FUNC_BODYV(override_bar, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(idx, a, str), int idx, int *a, char **str);
>>
>> static int __eolian_override_c_get(Eo *obj EINA_UNUSED, Override_Data *pd
>> EINA_UNUSED, int idx EINA_UNUSED)
>> {
>> return 50;
>> }
>>
>> -EOAPI EO_FUNC_BODYV_CONST(override_c_get, int, 50, EO_FUNC_CALL(idx), int
>> idx);
>> +EOAPI EO_FUNC_BODYV_CONST(override_c_get, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> int, 50, EO_FUNC_CALL(idx), int idx);
>>
>> void _override_a_get(Eo *obj, Override_Data *pd);
>>
>> -EOAPI EO_VOID_FUNC_BODY_CONST(override_a_get);
>> +EOAPI EO_VOID_FUNC_BODY_CONST(override_a_get, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK);
>>
>> void _override_b_get(Eo *obj, Override_Data *pd, int idx, float *a, char
>> *b, int *c);
>>
>> -EOAPI EO_VOID_FUNC_BODYV_CONST(override_b_get, EO_FUNC_CALL(idx, a, b, c),
>> int idx, float *a, char *b, int *c);
>> +EOAPI EO_VOID_FUNC_BODYV_CONST(override_b_get, _EO_EMPTY_HOOK,
>> _EO_EMPTY_HOOK, EO_FUNC_CALL(idx, a, b, c), int idx, float *a, char *b, int
>> *c);
>>
>> void _override_c_set(Eo *obj, Override_Data *pd, int idx, int c);
>>
>> -EOAPI EO_VOID_FUNC_BODYV(override_c_set, EO_FUNC_CALL(idx, c), int idx, int
>> c);
>> +EOAPI EO_VOID_FUNC_BODYV(override_c_set, _EO_EMPTY_HOOK, _EO_EMPTY_HOOK,
>> EO_FUNC_CALL(idx, c), int idx, int c);
>>
>> void _override_base_constructor(Eo *obj, Override_Data *pd);
>>
>> @@ -78,4 +78,4 @@ static const Eo_Class_Description _override_class_desc = {
>> NULL
>> };
>>
>> -EO_DEFINE_CLASS(override_class_get, &_override_class_desc, BASE_CLASS,
>> NULL);
>> \ No newline at end of file
>> +EO_DEFINE_CLASS(override_class_get, &_override_class_desc, BASE_CLASS,
>> NULL);
>>
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> enlightenment-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel