Olly Betts
55377bdc08
Add DOH Exit() and SetExitHandler()
...
Exit() is a wrapper for exit() by default, but SetExitHandler() allows
specifying a function to call instead.
This means that failures within DOH (e.g. Malloc() failing due to lack
of memory) will now perform cleanup such as removing output files.
This commit also cleans up exit statuses so SWIG should now reliably
exit with status 0 if the run was successful and status 1 if there was
an error (or a warning and -Werror was in effect).
Previously in some situations SWIG would try to exit with the status set
to the number of errors encountered, but that's problematic - for
example if there were 256 errors this would result in exit status 0 on
most platforms. Also some error statuses have special meanings e.g.
those defined by <sysexits.h>.
Also SWIG/Javascript tried to exit with status -1 in a few places (which
typically results in exit status 255).
2022-03-06 12:33:54 +13:00
Olly Betts
5755f399a2
Eliminate some temporary buffers
2022-03-03 12:27:04 +13:00
Olly Betts
3f78ea64c0
Remove bogus reference to allegrocl:old-sym:name
...
It'll never be set under -cffi. Looking at the history it looks like
this is just a remnant from this file being originally created by
copying allegrocl.cxx.
2021-05-13 10:41:01 +12:00
Olly Betts
9ddc9dceb7
Remove support for $source and $target
...
These were officially deprecated in 2001, and attempts to use them have
resulted in a warning (including a pointer to what to update them to)
for most if not all of that time.
Fixes #1984
2021-04-30 10:20:14 +12:00
William S Fulton
08688d7d9d
Add support for "ret" typemap where missing and improve documentation on it.
2016-09-29 08:07:26 +01:00
William S Fulton
1d62790928
Fix assertion for some languages when wrapping a C++11 enum class that is private in a class.
...
Also don't wrap private enums for a few languages that attempted to do so.
Closes #594 .
2016-03-31 20:27:36 +01:00
William S Fulton
e03d0b0525
Don't truncate cffi character constants
2016-03-13 10:16:21 +00:00
Petre Eftime
0a07cd4c30
Prevent redefinition warnings when compiling with SWIG<module> defined
...
Signed-off-by: Petre Eftime <petre.p.eftime@intel.com>
2015-12-22 14:33:21 +02:00
William S Fulton
3d681571e1
Merge pull request #498 from lyze/extend-cffi-typemap-machinery
...
Implement argout, freearg, and check for CFFI.
2015-10-11 22:11:09 +01:00
David Xu
8275f8158a
Implement argout, freearg, and check typemaps for CFFI.
2015-08-10 21:47:12 -04:00
David Xu
c1fad12bdb
Extend the export feature in the CFFI module to support exporting to a particular package.
2015-08-05 21:58:50 -04:00
Ivan Shvedunov
21ef7bc243
CFFI: handle array struct/union members.
2014-12-20 17:12:39 +03:00
Olly Betts
36be36d618
Eliminate needless casting away const from string constants
2014-04-30 12:00:23 +12:00
Nikhil Shetty
aad30cf4de
BUGFIX: superclass name not lispy
...
The superclass names were not lispified correctly and so the class was inheriting
from erroneous class symbols.
Closes #96 .
2013-10-12 14:32:50 +01:00
William S Fulton
7fcfdeee08
Fixes detecting if a variable is extern when using 'extern thread_local'
2013-02-08 07:38:10 +00:00
William S Fulton
7841a0d097
Remove cvs/svn Id strings
2013-01-12 01:21:16 +00:00
William S Fulton
04b60a1508
CFFI - Fix some string constants are incorrect
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13963 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-12-14 08:00:22 +00:00
William S Fulton
1ab67f5bed
Fix CFFI incorrect constant names
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13962 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-12-14 07:38:44 +00:00
William S Fulton
7ca0497647
CFFI - fix junk output when wrapping single character constants
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13944 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-12-02 13:36:40 +00:00
William S Fulton
89052f3b0a
Fix Strcmp - it didn't have consistent null pointer handling - revert to what it used to be - a lightweight wrapper around strcmp which means functions once again must not pass in null to it.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13943 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-12-02 13:36:13 +00:00
William S Fulton
092e2104c7
More consistent use of DOH namespace
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13940 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-26 20:31:54 +00:00
William S Fulton
681c6c6231
Fix possible null dereferences in CFFI
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13921 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-20 23:27:54 +00:00
William S Fulton
5a1e82a2f4
Remove DohClose (Close) and replace with calls to DohDelete (Delete) to fix some minor memory leaks in most uses of NewFile.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13885 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-11-14 22:16:07 +00:00
William S Fulton
7b58300cbd
Fix display of pointers on 64 bit systems, only 32 bit values were being shown.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13340 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-07-21 22:52:30 +00:00
William S Fulton
24133bacd7
Remove numerous hard coded 'result' variable name in generated c/c++ wrappers. The variable name is now defined in just one place, making it possible to change the name easily if a target language so wishes - see cwrap.c.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12830 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-10-30 21:51:50 +00:00
William S Fulton
b69b793d8e
Better consistency in usage display
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12524 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-09 21:42:38 +00:00
William S Fulton
cb64f65bae
SWIG license change - Source moves to GPLv3
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11876 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-02-27 23:53:33 +00:00
William S Fulton
83bd820285
Add typemaps used debugging option (-debug-tmused). Fix missing file/line numbers for typemap warnings and in the output from the -debug-tmsearch/-debug-tmused options
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11802 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-04 19:33:52 +00:00
William S Fulton
224c83ef09
Typemap API changes to facilitate more uniform typemap handling across language modules - in particular some typemaps usage did not respect the warning attribute and other warning handling and $typemap special variable (which will be refined in future commit) as well as local typemap variable handling:
...
- remove Swig_typemap_search, Swig_typemap_search_multi and Swig_typemap_attach_kwargs from access outside of typemaps.c (made static)
- all static methods in typemap.c renamed dropping Swig_ prefix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11380 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-08 12:17:45 +00:00
William S Fulton
3d05f50eab
CFFI - Fix seg faults when for %extend and using statements
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11136 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-02-20 23:55:37 +00:00
William S Fulton
efa11dee52
add new %begin directive for inserting code at top of wrapper file
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11133 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-02-20 07:52:24 +00:00
William S Fulton
5ec2d8c166
All languages now define a macro in the generated C/C++ wrapper file indicating which language is being wrapped, eg #define SWIGJAVA
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11018 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-12-30 00:38:34 +00:00
William S Fulton
d2f69e6a34
add missing language specific preprocessor define where missing for some languages
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11017 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-12-29 23:56:03 +00:00
William S Fulton
cc522323d7
create a common banner header for all target language specific files
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11016 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-12-29 22:56:25 +00:00
William S Fulton
6fb0f48935
customised ccache support: read the CCACHE_OUTFILES env variable and if exists, the names of all generated files are written to the filename specified in the env variable
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10898 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-11-03 12:51:45 +00:00
William S Fulton
907171735f
patch #2079381 submitted by Boris Smilga - constant exprs put into no-eval context in DEFCENUM
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10807 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-09-01 21:46:41 +00:00
William S Fulton
8b42082f88
Apply patch from Petr Viktorin to fix some recent regressions in CFFI/CLOS
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10487 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-21 22:15:52 +00:00
William S Fulton
dfcb1640bf
Remove old swig-1.1 Swig_typemap_lookup function. Rename Swig_typemap_lookup_new() to Swig_typemap_lookup()
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10453 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-15 21:18:44 +00:00
William S Fulton
336b50b43d
Add the optimal attribute to the out typemap for more optimal code generation when returning objects by value
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10450 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-14 22:12:31 +00:00
William S Fulton
b67e0a28a3
Fixes for $wrapname to work in %exception
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10265 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-02-25 22:07:28 +00:00
William S Fulton
39abd80eef
Changes to compile with VC++6
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10099 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-11-10 21:10:17 +00:00
William S Fulton
fe042d2ebc
Replace cvs $Header$ with svn $Id$
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10003 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-10-17 21:42:11 +00:00
John Lenz
fb51964d01
Fix a bunch of minor bugs found by Coverity scanner
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9889 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-10 02:55:27 +00:00
Surendra Singhi
43fe81ce1a
changed package name clos to cl
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9879 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-31 17:18:27 +00:00
Surendra Singhi
3aaa08c856
fixed memory freeing bug, removed tabs
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9878 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-31 17:08:12 +00:00
Olly Betts
02d382d880
Removed unused extra arguments from calls to Printf().
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9802 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-09 01:25:57 +00:00
Surendra Singhi
0ee9f91eb8
fixed closing paren
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9689 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-04-21 19:10:14 +00:00
Surendra Singhi
4beedd3f04
Fixed a bug with clos method, and generating constructors.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9687 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-04-21 09:26:31 +00:00
Surendra Singhi
85a3666f7c
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9666 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-04-01 13:22:36 +00:00
Surendra Singhi
ea90e889fa
Patch 1656395
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9649 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-02-26 13:16:01 +00:00