Commit graph

75 commits

Author SHA1 Message Date
William S Fulton
83ea2280e2 Fix Python compile errors with overloading and varargs
Fixes wrapping overloaded functions/constructors where a vararg
function is declared after a non-vararg function.
This is a long standing bug in the Python layer exposed since fastunpack
was turned on by default.
2019-02-25 19:27:23 +00:00
William S Fulton
eef3e7aa8f Cosmetic whitespace improvement in generated code from throws typemaps. 2017-11-29 20:32:15 +00:00
William S Fulton
ed4b84f4d3 Fix overloading of shared_ptr method overloading
Add 'equivalent' attribute to typecheck typemap.
Closes #1098.
2017-09-23 15:19:34 +01:00
William S Fulton
8a168795d3 Cosmetic formatting fixes in generated code for exception handlers 2017-09-12 08:47:10 +01:00
William S Fulton
7841a0d097 Remove cvs/svn Id strings 2013-01-12 01:21:16 +00:00
William S Fulton
b17a77c6ea Support special variable expansion in %extend.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13871 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-11 19:28:02 +00:00
William S Fulton
2598a1daf2 Two additional special variable are expanded in %exception - $parentname
and $parentsymname

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13870 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-10-11 19:24:24 +00:00
Oliver Buchtala
18aa801bd0 Fix bug in emit_action.
Before, it was possible that two catch(...) blocks
were generated (for varargs and undefined typemap).

From: Oliver Buchtala <oliver.buchtala@googlemail.com>

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13511 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-08-05 08:37:59 +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
a63d456f8a Remove redundant code highlighted by warnings in gcc-4.6
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12536 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-14 07:22:08 +00:00
William S Fulton
a743d54665 Fix segfault when using Python's -threads options and exceptions are thrown
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11980 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-04-08 06:46:18 +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
b1a1e3d323 consistent terminology for multi-argument typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11471 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-29 20:52:29 +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
05a57239d0 Warning fix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10439 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-10 23:40:47 +00:00
William S Fulton
46a0db50fe enforce consistency in wrap:action wrt line spacing
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10411 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-01 21:47:23 +00:00
William S Fulton
9976dc9d75 Add allprotected mode for wrapping protected members when using directors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10381 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-20 20:41:01 +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
61cc1dd334 Add support function for displaying the declaration of a methods. Add special variables for use in \%exception:
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10255 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-02-13 23:43:34 +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
Dave Beazley
b00cef436b API cleanup (Parms)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9633 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-01-10 23:43:07 +00:00
William S Fulton
aa04c4c057 beautify/format source code with gnu indent
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9505 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-11-01 23:54:54 +00:00
William S Fulton
f0d1d772fa - explicitcall feature removed.
- Instead of using the swig_up flag in each director method (Python, Ruby, Ocaml) to indicate
whether the explicit C++ call to the appropriate base class method or a normal
polymorphic C++ call should be made, the new approach makes one of these calls
directly from the wrapper method.
- Java/C# recursive director method calls fixed (no need for explicitcall feature to solve this now)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9275 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-09-13 20:55:24 +00:00
William S Fulton
7f74b8e7a3 Common template for head of each file detailing licence, distribution and authors information
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8972 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-06 22:51:01 +00:00
Marcelo Matus
ba1e3f9ee3 add fragment warning and fixes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8645 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-30 22:22:13 +00:00
Marcelo Matus
3b866d286b implement the 'allowexcept' feature for global variables
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8576 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-28 02:36:13 +00:00
Marcelo Matus
a24b11a8d3 clarify in the code what is the catch list and the throw list, which don't have to be the same, and don't modify the throws attribute since it should be inmutable (for xml and others)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8368 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-11 01:34:06 +00:00
Marcelo Matus
e676d2f8bd rename %throws to %catchs
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8351 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-10 18:47:51 +00:00
Marcelo Matus
b044703d0d better support for the %throws directive
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8350 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-10 17:19:22 +00:00
Marcelo Matus
06a949da6d add the %throws directive
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8348 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-10 10:12:32 +00:00
Marcelo Matus
ebe7889ea9 no need for , use
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8118 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-12-28 23:23:42 +00:00
Marcelo Matus
1657c18b67 add the label for use inside typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8087 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-12-27 21:41:03 +00:00
William S Fulton
afad7836cd Remove (void)_e. This is a duplicate of what already exists in the typemaps so is not needed. If there are any more exception handlers that issue the unused variable warning, add a '(void)$1;' into the throws typemap.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8048 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-12-23 00:28:38 +00:00
Marcelo Matus
296a3fb00d fix warning for unused _e
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7966 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-12-10 10:09:54 +00:00
Marcelo Matus
645f95d633 fix many/many memory leaks
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7904 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-11-30 21:32:27 +00:00
Marcelo Matus
008f5c5bb7 fix warning about non-initialized result, and add missing deletes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7752 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-10-31 09:34:27 +00:00
Marcelo Matus
7564088646 fix warnings/errors for gcc4.0, icc and valgrind
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7689 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-10-19 14:26:13 +00:00
Marcelo Matus
bab11e11f4 fixes for the except/callback attributes to follow new flag feature convention
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7604 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-10-07 13:17:41 +00:00
William S Fulton
74f9ab820b compact default arguments feature (original default argument wrapping mode)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6449 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-20 20:59:33 +00:00
William S Fulton
c4757bbbd4 New default argument wrapping approach. This adds default argument support for statically typed languages, fixes wrapping of default arguments that are non-public plus fixes other bugs where SWIG could not or failed to correctly lookup up the default value in the symbol table.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6310 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-04 20:32:28 +00:00
William S Fulton
c8698b31e7 unnecessary check and code simplification when emitting value type returns
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6220 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-09-03 22:17:14 +00:00
William S Fulton
0948c97ac2 typo
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6143 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-08-24 22:52:36 +00:00
William S Fulton
8f1a476448 const fixes for allegro module usage
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6136 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-08-24 21:48:46 +00:00
Marcelo Matus
2febdc6ecb more fixes for exceptions and ref.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5943 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-29 23:17:15 +00:00
William S Fulton
4c472ec20e Fix for exception specifications that are references. Also improves the generated
exception declarations in the catch handler for pointers - a pointer is used
instead of a reference to a pointer.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5940 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-29 15:03:46 +00:00
Marcelo Matus
7e55132f60 Fix generation of multiple throws
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5939 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-29 03:34:40 +00:00
Marcelo Matus
553698d489 fix dirprot mode
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5874 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 12:20:04 +00:00
William S Fulton
62e094fe92 Removed redundant catch(...) { throw; } code generation when wrapping exception specifications and throws typemap.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5646 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-19 21:34:58 +00:00
Marcelo Matus
bd9aa0c7c9 - Normalize the 'Swig_error' calls and formats, before some
of the strings start like "Error. XXX", others like "XXX".
  The format is now defined in 'error.c:Swig_error_msg_format()'.

- Normalize the multiline error/warning messages to correctly
  use -Fformat definition.

- Centralize the error/warning format definitions in
  'error.c:Swig_error_msg_format()'.

- Fix a minor error in cpp.c, that after finding an error, still
  was emitting a redefined macro, producing duplicated error/warning
  messages in parser.y.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5635 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-15 08:33:12 +00:00