Fix ruby %alias directive for native c functions
Using the %alias directive on native C functions causes swig to segfault due to
a dereference of klass (which is NULL for native C functions) in the
defineAliases function of the Ruby module. This commit adds support for an alias
of native C functions for both separate module as well as global functions, as
well as three test cases for the %alias directive of the Ruby module.
Fixes:
mod.i
%module ruby_alias
%alias get_my_name "nickname,fullname";
%inline %{
const char *get_my_name(){
return "Chester Tester";
}
%}
$ swig -ruby mod.i
Segmentation fault
Signed-off-by: Joel Anderson <joelanderson333@gmail.com>
This commit is contained in:
parent
6fac581a2b
commit
a1cea4f483
8 changed files with 129 additions and 1 deletions
|
|
@ -22,6 +22,7 @@ CPP_TEST_CASES = \
|
|||
li_std_stack \
|
||||
li_std_wstring \
|
||||
primitive_types \
|
||||
ruby_alias_method \
|
||||
ruby_keywords \
|
||||
ruby_minherit_shared_ptr \
|
||||
ruby_naming \
|
||||
|
|
@ -44,6 +45,8 @@ CPP11_TEST_CASES = \
|
|||
|
||||
C_TEST_CASES += \
|
||||
li_cstring \
|
||||
ruby_alias_global_function \
|
||||
ruby_alias_module_function \
|
||||
ruby_manual_proxy \
|
||||
|
||||
include $(srcdir)/../common.mk
|
||||
|
|
@ -52,6 +55,7 @@ include $(srcdir)/../common.mk
|
|||
SWIGOPT += -w801 -noautorename -features autodoc=4
|
||||
|
||||
# Custom tests - tests with additional commandline options
|
||||
ruby_alias_global_function.ctest: SWIGOPT += -globalmodule
|
||||
ruby_naming.cpptest: SWIGOPT += -autorename
|
||||
|
||||
# Rules for the different types of tests
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue