swig/Source/Modules
Joel Anderson a1cea4f483 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>
2018-03-22 08:05:01 -04:00
..
allegrocl.cxx Remove code duplication of Swig_overload_rank 2017-09-11 23:18:55 +01:00
allocate.cxx #733 - wrong "override" calculation in import mode 2016-06-27 20:27:10 +03:00
browser.cxx Add lambda functions to the symbol tables and add ability to suppress lambda warnings. 2013-02-04 20:05:34 +00:00
cffi.cxx Add support for "ret" typemap where missing and improve documentation on it. 2016-09-29 08:07:26 +01:00
chicken.cxx Prevent redefinition warnings when compiling with SWIG<module> defined 2015-12-22 14:33:21 +02:00
clisp.cxx Fix assertion for some languages when wrapping a C++11 enum class that is private in a class. 2016-03-31 20:27:36 +01:00
contract.cxx Cosmetics/code beautification of nested class support 2013-11-29 07:29:58 +00:00
csharp.cxx Correct C# warning for missing cstype typemap 2018-03-09 06:58:08 +00:00
d.cxx Add director typemaps for pointer const ref types 2017-10-24 23:47:40 +01:00
directors.cxx Generation of director method declarations fixes 2017-10-23 18:55:14 +01:00
emit.cxx Cosmetic whitespace improvement in generated code from throws typemaps. 2017-11-29 20:32:15 +00:00
go.cxx Changes to use common DirectorException class 2017-11-29 20:31:55 +00:00
guile.cxx Prevent redefinition warnings when compiling with SWIG<module> defined 2015-12-22 14:33:21 +02:00
interface.cxx Fix seg fault with %interface and using declarations 2017-08-21 18:34:51 +01:00
java.cxx Fix Java swigReleaseOwnership() and swigTakeOwnership() regression 2018-03-09 08:13:41 +00:00
javascript.cxx Fix %import and %fragment forced inclusion to not generate code. 2017-06-03 18:37:05 +01:00
lang.cxx Fixed 'typedef class Foo Foo;' edge case by iterating through linked 2017-12-31 00:37:43 +00:00
lua.cxx Fix various comment and documentation typos 2017-08-13 18:04:33 +12:00
main.cxx Add option file support 2018-01-12 15:01:45 -06:00
modula3.cxx Multiple inheritance warning wording tweak 2016-03-06 10:45:39 +00:00
module.cxx Remove cvs/svn Id strings 2013-01-12 01:21:16 +00:00
mzscheme.cxx Prevent redefinition warnings when compiling with SWIG<module> defined 2015-12-22 14:33:21 +02:00
nested.cxx Fix segmentation fault when top==NULL 2015-02-26 14:57:19 +13:00
ocaml.cxx Generation of director method declarations fixes 2017-10-23 18:55:14 +01:00
octave.cxx Generation of director method declarations fixes 2017-10-23 18:55:14 +01:00
overload.cxx Fix overloading of shared_ptr method overloading 2017-09-23 15:19:34 +01:00
perl5.cxx Tweak Perl's director method's $result variable generation. 2017-12-19 07:49:16 +00:00
php.cxx [PHP] Use ZEND_MODULE_GLOBALS_ACCESSOR to access globals 2017-12-08 15:50:14 +13:00
php5.cxx Generation of director method declarations fixes 2017-10-23 18:55:14 +01:00
pike.cxx Fix GCC 7 warnings 2016-12-21 13:05:20 +13:00
python.cxx Merge branch 'shared_ptr_directors' 2017-10-26 07:00:32 +01:00
r.cxx R memory handling standardisation 2017-10-13 07:34:38 +01:00
README File move 2002-12-03 20:33:35 +00:00
ruby.cxx Fix ruby %alias directive for native c functions 2018-03-22 08:05:01 -04:00
s-exp.cxx Remove cvs/svn Id strings 2013-01-12 01:21:16 +00:00
scilab.cxx fix Scilab 6.0.0 linking issue 2017-05-30 14:42:44 +02:00
swigmain.cxx Add option file support 2018-01-12 15:01:45 -06:00
swigmod.h Generation of director method declarations fixes 2017-10-23 18:55:14 +01:00
tcl8.cxx Prevent redefinition warnings when compiling with SWIG<module> defined 2015-12-22 14:33:21 +02:00
typepass.cxx Merge branch 'templates-scope-enforcement' 2017-08-16 21:44:51 +01:00
uffi.cxx Seg fault fix running uffi tests 2018-01-14 13:27:01 +00:00
utils.cxx Fix various comment and documentation typos 2017-08-13 18:04:33 +12:00
xml.cxx Update xml.cxx to return typenames (#777) 2016-09-27 15:15:47 +13:00

06/25/2002

This directory contains all of the SWIG language modules.  Many of these
modules contain code that dates back to SWIG1.0.  The module API has changed
a lot in the development releases so this is fairly messy.  We're working on
cleaning it up, but you'll have to bear with us until it's done.

-- Dave