Commit graph

2,814 commits

Author SHA1 Message Date
Olly Betts
a25ccbf58b [PHP] Fix handling of OUTPUT typemaps (Patch from Ryan in SF#3058394).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12208 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-09-08 02:40:56 +00:00
William S Fulton
04c3e6b7d3 Fix line numbering for 'Unterminated call invoking macro' error
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12202 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-09-06 17:30:18 +00:00
William S Fulton
197c8e899d Fix erroneous line numbers in argument count error messages for macro expansions
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12201 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-09-03 18:44:01 +00:00
William S Fulton
45601f24b4 Fix line numbers in error and warning messages for preprocessor messages within %inline. Also fixes __LINE__ within %inline
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12200 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-09-03 17:47:12 +00:00
William S Fulton
a44f83cf05 Fix line numbers in error and warning messages which were accumulately one less than they should have been after parsing each %include/%import - bug introduced in swig-1.3.32. Also fix line numbers in error and warning messages when new line characters appear between the %include / %import statement and the filename.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12199 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-09-03 06:03:48 +00:00
William S Fulton
aa728ece67 Fix __LINE__ and __FILE__ expansion in macros with no arguments
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12197 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-09-01 21:06:10 +00:00
William S Fulton
31b5f36b74 Fix line number and file name reporting for some macro preprocessor warnings.
The line number of the macro argument has been corrected and the line number
of the start of the macro instead of one past the end is used. Some examples:
  file.h:11: Error: Illegal macro argument name '..'
  file.h:19: Error: Macro 'DUPLICATE' redefined,
  file.h:15: Error: previous definition of 'DUPLICATE'.
  file.h:25: Error: Variable-length macro argument must be last parameter
  file.h:32: Error: Illegal character in macro argument name
  file.i:37: Error: Macro 'SIT' expects 2 arguments

Code used for testing:
// file.h
%define SIT(ax,b)
abc(
%enddef

%define MISSING_DOT1(a,
b,
..)
xxx
%enddef

%define MISSING_DOT2(..)
xxx
%enddef

%define DUPLICATE(a,b)
abc
%enddef

%define DUPLICATE(b)
xxx
%enddef

%define VARARGS_WRONG(a,
x,
...,
 b)
xxx
%enddef

%define BAD_ARGNAME(
a,
b{c
)
xxx
%enddef

SIT(1)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12195 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-08-29 23:32:49 +00:00
William S Fulton
5a6443ebcf Fix some more instances of __LINE__ and __FILE__ numbering
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12194 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-08-29 22:11:03 +00:00
William S Fulton
69af82caa4 Fix __LINE__ and __FILE__ expansion. Mostly this did not work at all.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12192 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-08-26 18:06:02 +00:00
Vadim Zeitlin
024ed6ce2a Fix bug in applying regex replacement to non-matching strings.
We didn't handle pcre_exec() return code properly and so the replacement could
be still done even if there was no match if the replacement part contained
anything else than back-references (in this, the only tested so far, case the
replacement was still done but the result turned out to be empty and the
calling code assumed the regex didn't match).

Do check for PCRE_ERROR_NOMATCH now and also give an error message if another
error unexpectedly occurred.

Add a test case for the bug that was fixed.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12187 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-08-14 14:12:23 +00:00
William S Fulton
af96789c14 Minor comment changes and html changes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12181 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-23 19:34:17 +00:00
Vadim Zeitlin
89a7ab0685 Include the values of configurable options in swig -version.
Show the value of important compilation options in swig -version output.

Currently there is just one such option, for PCRE use, but more may be added
in the future.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12176 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-22 17:02:55 +00:00
Vadim Zeitlin
587d843521 Remove old experimental rxspencer encoder and rxsmatch function.
They are replaced with the new, officially supported PCRE-based regex and
regexmatch.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12175 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-22 17:02:35 +00:00
Vadim Zeitlin
70c5bb5a47 Add support for "[not]regexmatch" and "regextarget" to %rename.
"regexmatch" and "notregexmatch" can be used with anonymous %renames in the
same way as "match" and "notmatch" while "regextarget" specifies that the
argument of a non-anonymous %rename should be interpreted as a regular
expression.

Document the new functions.

Also add a new unit test for %regex also testing regexmatch &c and provide
test code for C# and Java verifying that it works as intended.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12174 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-22 17:02:10 +00:00
Vadim Zeitlin
c4e9043288 Add support for regex encoder for %rename.
This allows to write %rename("%(regex:/pattern/subst/)s") to apply a
regex-based replacement to a declaration name.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12170 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-22 17:00:37 +00:00
Vadim Zeitlin
ac5ddb0315 Make argument of DohWrite() const.
Writing a buffer to a DOH object doesn't modify so it should be const.

This allows the code using const pointers to pass them to DohWrite() without
neither the casts nor gcc warnings.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12167 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-22 16:59:29 +00:00
William S Fulton
568607c5ea Fix wrapping of function pointers and member function pointers when the function returns by reference
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12157 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-16 18:45:22 +00:00
William S Fulton
cca92f4188 Fix #3024875 - shared_ptr of classes with non-public destructors. This also fixes the 'unref' feature when used on classes with non-public destructors.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12155 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-07-07 18:19:01 +00:00
Olly Betts
d0d40db326 Use SWIG_PTR rather than literal "_cPtr".
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12149 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-25 02:41:27 +00:00
Olly Betts
ae40eff993 The default visibility for methods is public, so don't specify that explicitly
to keep the wrapper size down.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12146 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-24 14:44:06 +00:00
Olly Betts
9ed2d0165c Fix comment typo.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-21 03:44:29 +00:00
William S Fulton
95a3eb5a7d code style: fix inconsistent NULL pointer comparisons
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12137 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-17 23:49:12 +00:00
William S Fulton
07ca3eb9f8 remove unnecessary NULL check before calling Delete
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12136 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-17 23:03:18 +00:00
Ian Lance Taylor
2970f53c21 Remove the -rename option in the Go language support. Do a much
better job of checking for name conflicts.  Ignore conflicting names
with a warning.  Adjust the testsuite accordingly.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12135 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-17 18:59:26 +00:00
Ian Lance Taylor
e7fde8c432 Set wrap:name attribute when generating a call to a method in a base class.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12132 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-16 15:43:05 +00:00
Ian Lance Taylor
814eaab177 Remove comments about compiling file with gcc.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12130 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-15 20:15:11 +00:00
Ian Lance Taylor
da5e02f81c Rename "go" typemap to "gotype".
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12129 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-15 19:40:34 +00:00
Ian Lance Taylor
07e3d62ae8 Use a single extern "C" around all the wrappers, not one per wrapper.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12126 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-15 17:58:42 +00:00
William S Fulton
8bf4b5a7dc Minor comment fix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12122 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-14 18:33:57 +00:00
William S Fulton
02ec28ff55 make beautify-file fixes and other cosmetics
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12117 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-11 06:36:51 +00:00
William S Fulton
aa953c8908 Syntactic sugar - go help display to conform to other help style
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12115 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-10 20:08:19 +00:00
Olly Betts
f67c0fa12c [PHP] Fix directors to correctly call a method with has a
different name in PHP to C++ (we were always using the C++ name
in this case).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12110 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-10 04:41:11 +00:00
Ian Lance Taylor
5af2978f77 Add support for the Go programming language.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12108 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-10 01:13:31 +00:00
William S Fulton
257ce20f30 Fix uncompileable code when %rename results in two enum items with the same name
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12098 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-03 17:44:42 +00:00
William S Fulton
45f20c7363 Fix constants wrapper warnings for visual c++
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12064 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-28 22:24:11 +00:00
William S Fulton
bb41eeb343 Fix potential name clashes with symbols in the Director class
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12062 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-27 20:55:24 +00:00
William S Fulton
e2ce97f397 Add the ability for special variable macros to call other special variable macros. Also added additional diagnostics when using -debug-tmsearch. Add tests for std::vector of shared_ptr.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12059 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-26 23:22:49 +00:00
William S Fulton
7b2c6b477a Fix segfault attempting illegal javaclassname and csclassname special variable substitution
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12058 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-26 19:01:12 +00:00
William S Fulton
1be936380f S_ISDIR is defined for mingw gcc but not visual c++
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12045 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-24 06:02:11 +00:00
William S Fulton
12cfc251e4 Fix #2408232. Improve shared_ptr and intrusive_ptr wrappers for classes in an inheritance hierarchy. No special treatment is needed for derived classes, the SWIG_SHARED_PTR_DERIVED macro is deprecated.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12036 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-22 22:49:47 +00:00
Olly Betts
bf1d3f0714 Remove superfluous semicolons.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12034 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-21 07:10:12 +00:00
Olly Betts
e512093358 [PHP] Stop generating a bogus line of code in certain constructors.
This was mostly harmless, but caused a PHP notice to be issued, if
enabled (SF#2985684).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12033 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-21 07:07:15 +00:00
William S Fulton
76bbd7373d Fix wrapping of C++ enum boolean values when using %javaconst(1)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12029 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-14 19:03:01 +00:00
William S Fulton
8a169eb0cb Fix wrapping of C++ enum boolean values
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12028 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-14 18:46:20 +00:00
Olly Betts
227f2e2e0a [PHP] Fix wrapping of global variables which was producing
uncompilable code in some cases.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12027 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-14 08:22:28 +00:00
Olly Betts
6a9a167e8e Fix typo in comment.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12025 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-14 04:10:19 +00:00
Olly Betts
108f826a76 Fix typo in example in comment.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12024 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-12 23:56:38 +00:00
Joseph Wang
70c557e8e3 add R garbage collection and newfree
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12023 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-12 04:12:42 +00:00
William S Fulton
3cf41050b5 Fix Octave C enums wrapping when the generated code is C++ compiled
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12022 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-11 22:53:33 +00:00
William S Fulton
68308583b7 Apply patch #2955146 from Sergey Satskiy to fix expressions containing divide by operator in constructor initialization lists.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12013 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-07 19:10:41 +00:00