swig/Source/Modules
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Olly Betts e38847f7e1 Fail cleanly on allocation failures
Previously code in the SWIG tool didn't handle allocation failures
well.  Most places didn't check for NULL return from
malloc()/realloc()/calloc() at all, typically resulting in undefined
behaviour, and some places used assert() to check for a NULL return
(which is a misuse of assert() and such checks disappear if built with
NDEBUG defined leaving us back with undefined behaviour).

All C allocations are now done via wrapper functions (Malloc(),
Realloc() and Calloc()) which emit and error and exit with non-zero
status on failure, so a non-NULL return can be relied upon.

Fixes #1901.
2022-03-04 11:47:49 +13:00
..
allocate.cxx Don't mark as "noassign" when a variable is immutable 2022-02-04 14:03:01 -05: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 Eliminate some temporary buffers 2022-03-03 12:27:04 +13:00
contract.cxx Cosmetics/code beautification of nested class support 2013-11-29 07:29:58 +00:00
csharp.cxx Remove support for $source and $target 2021-04-30 10:20:14 +12:00
d.cxx Add some comments about shared_ptr upcast code 2020-01-24 19:46:39 +00:00
directors.cxx Merge branch 'director-return-const-pointer' 2020-10-07 22:26:25 +01:00
emit.cxx Remove support for $source and $target 2021-04-30 10:20:14 +12:00
go.cxx [Go] Fix overloaded functions with noncapitalized class as parameter type 2022-01-29 22:19:15 +13:00
guile.cxx Eliminate some temporary buffers 2022-03-03 12:27:04 +13:00
interface.cxx Fix seg fault with %interface and using declarations 2017-08-21 18:34:51 +01:00
java.cxx Fix nspace warning message 2021-11-11 18:59:25 +00:00
javascript.cxx Rename free variable to jsfree 2022-03-03 12:23:41 +13:00
lang.cxx Use SWIG-specific for non-overloaded synthesized functions too 2021-11-09 23:35:30 +01:00
lua.cxx Fix typos in docs and comments 2022-02-27 18:15:46 +13:00
main.cxx Eliminate some temporary buffers 2022-03-03 12:27:04 +13:00
mzscheme.cxx Remove support for $source and $target 2021-04-30 10:20:14 +12:00
nested.cxx Fix typos in docs and comments 2022-02-27 18:15:46 +13:00
ocaml.cxx Clean up uses of Replace() 2022-02-06 09:59:30 +13:00
octave.cxx Remove support for $source and $target 2021-04-30 10:20:14 +12:00
overload.cxx Fix ODR violations 2021-09-20 15:04:51 +12:00
perl5.cxx [perl] Require at least Perl 5.8.0 2022-01-19 10:07:30 +13:00
php.cxx [PHP] Fix cleanup code handling issues 2022-02-17 13:52:44 +13:00
python.cxx Python: avoid unused SwigMethods_proxydocs var (#2222) 2022-03-03 18:12:21 +13:00
r.cxx [R] Fix CopyToR() generated for struct in namespace 2022-01-31 12:05:09 +13:00
README File move 2002-12-03 20:33:35 +00:00
ruby.cxx [Ruby] Fix remove of prefix from method name 2022-02-02 15:53:23 +13:00
scilab.cxx scilab.cxx: Fix source code misindentation 2022-02-24 10:45:24 +13:00
swigmain.cxx Fail cleanly on allocation failures 2022-03-04 11:47:49 +13:00
swigmod.h Replace all exit() with SWIG_exit() 2019-07-31 00:08:49 +01:00
tcl8.cxx Remove superfluous semicolons 2022-02-15 14:00:12 +13:00
typepass.cxx Fix line/file info for methods added by using declarations 2022-02-26 20:07:58 +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