diff --git a/lib/cmock_unityhelper_parser.rb b/lib/cmock_unityhelper_parser.rb index d4c3ce8..3ddffb3 100644 --- a/lib/cmock_unityhelper_parser.rb +++ b/lib/cmock_unityhelper_parser.rb @@ -24,6 +24,7 @@ class CMockUnityHelperParser lookup = lookup + '*' return [@c_types[lookup], '&'] if (@c_types[lookup]) end + return ['UNITY_TEST_ASSERT_EQUAL_PTR', ''] if (ctype =~ /cmock_\w+_ptr\d+/) raise("Don't know how to test #{ctype} and memory tests are disabled!") unless @config.memcmp_if_unknown return (lookup =~ /\*$/) ? [@fallback, '&'] : [@fallback, ''] end diff --git a/test/system/test_interactions/function_pointer_handling.yml b/test/system/test_interactions/function_pointer_handling.yml index 66c9e5c..61b2a1c 100644 --- a/test/system/test_interactions/function_pointer_handling.yml +++ b/test/system/test_interactions/function_pointer_handling.yml @@ -2,11 +2,15 @@ :cmock: :plugins: - # none + :treat_as: + FUNCTION_T: PTR :systest: :types: | + typedef void (*FUNCTION_T)(void); :mockable: | + void takes_function_type( FUNCTION_T myfunc ); void takes_function_ptr( unsigned int (*func_ptr)(int, char) ); void takes_const_function_ptr( unsigned int (* const)(int, char) ); unsigned short (*returns_function_ptr( const char op_code ))( int, long int );