Commit graph

14,825 commits

Author SHA1 Message Date
Stefan Zager
3a86f2068f Added support for multiple inheritance. Not as hard as I feared.
Apply operator features to both the operator name, and the renamed
"__*__" method.  That's the only way to hit all corners.

Added support for %pythonnondynamic.  I believe this implementation
is more correct than the existing implementation, but I'm still
waiting for an adjudication on the behavior of the python_nondynamic
test.

Current list of unsupported features that require minor tweaks
to the test suite:

- 'this' member variable is obsolete.

- No support for reversible operator overloads (e.g., __radd__).  You
can still support this:

a = MyString("foo")
b = "bar"
c = a + b

... but you can't do this:

a = "foo"
b = MyString("bar")
c = a + b

With the tweaks, the test suite now fails on python_nondynamic.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12353 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-20 23:35:18 +00:00
Stefan Zager
dd465f9588 Finished std::pair and std::map support.
li_std_pair_extra test fails, because the _runme.py uses the
secret 'this' member variable, which doesn't exist when the
-builtin option is used.  Seems like a flaw in the test.

Test suite now fails on li_std_string_extra, because static
member variables are not fully implemented.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12351 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-15 23:04:20 +00:00
Stefan Zager
8a7ad756d0 Added sequence and mapping support for builtin types.
Fixed object ownership in %pyswigbinoperator.

Test suite now fails on li_std_vector_extra.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12346 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-14 21:11:02 +00:00
Stefan Zager
b1682d4d80 Added support for operator overrides (PyNumberMethods) and
member variable access.

test suite now croaks on inplaceadd.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12345 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-14 00:08:45 +00:00
Stefan Zager
399ae62561 Basic director support (passes first few director tests). Now fails on iadd_runme, because member variable support is missing.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12340 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-08 21:57:27 +00:00
Stefan Zager
ee3a6623da First cut. Works for wrapping OpenAccess, but there's plenty
left to do.

Currently, the test suite hurls at director_stl.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12332 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-07 21:50:00 +00:00
Stefan Zager
25a1f9844b Branch for development of -builtin option for python.
With this option, swig will produce new built-in python
types for all wrapped classes.  Built-in types offer a
substantial performance benefit compared to the current
shadow class implementation.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12331 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-07 21:36:40 +00:00
William S Fulton
5558d0092a Remove bad usage of a String rather than SwigType for D directors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12330 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-07 21:15:05 +00:00
Stefan Zager
f4e5cd4f88 Branch for development of -builtin option for python.
With this option, swig will produce new built-in python
types for all wrapped classes.  Built-in types offer a
substantial performance benefit compared to the current
shadow class implementation.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12326 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-07 20:32:19 +00:00
William S Fulton
61fefd8cc4 Remove bad usage of a String rather than SwigType for csharp directors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12325 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-07 20:12:17 +00:00
Ian Lance Taylor
8467a6926e We disable Go if the compiler is too old.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12324 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-07 20:03:47 +00:00
Ian Lance Taylor
6d75f6cc1c Disable Go (6g/8g) if the version is too old.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12323 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-07 20:01:59 +00:00
William S Fulton
02750e80a3 Fix #3127394 - use of network paths on Windows/MSys.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12322 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-06 20:43:56 +00:00
William S Fulton
24591490c2 Mention SWIG_FEATURES for running the test-suite
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12321 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-03 17:29:07 +00:00
William S Fulton
d87c312fd0 Corrections to calls to SwigType_manglestr to use a genuine SwigType
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12320 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-29 07:49:42 +00:00
David Nadlinger
3477a9dff1 [D] Replaced the term "wrap D module" with "intermediary D module" (including names derived from it).
This was suggested by wsfulton on the mailing list in order to bring the D module in line with the C# one, the naming scheme of which is intended to be language-independent.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12319 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-28 23:12:03 +00:00
David Nadlinger
a22df2eca9 [D] Refer to the built-in Exception class using its fully-qualified name.
A C++ class called "Exception" could shadow the built-in one before, leading to compilation errors in the exception handling code.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12318 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-27 00:13:44 +00:00
David Nadlinger
d7cc6904c5 [D] Document "-d2" switch, native pointer support and D_VERSION=2.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12317 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-26 23:23:26 +00:00
William S Fulton
b89248404d Remove generated files from svn for Go examples
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12316 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-26 20:32:23 +00:00
William S Fulton
75ad4f57b9 Incorrect mangling leading to some cast errors in the Go director destructors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12315 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-26 20:28:39 +00:00
William S Fulton
004643ff30 Fix mangling of PHP constructor wrapper when types use global scope or typedefs
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12309 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-25 20:39:11 +00:00
William S Fulton
e0c82f6f2b portability fix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12308 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-25 20:35:10 +00:00
David Nadlinger
e362f85431 [D] Use __cdecl instead of __stdcall on Windows as well to avoid special casing.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12303 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-22 00:33:26 +00:00
David Nadlinger
cd492d8300 [D] Added a missing part of the Windows wrapper library loading code.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12302 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-21 23:43:19 +00:00
David Nadlinger
68678aefd5 Added note about the inclusion of D to the CHANGES file.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12301 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 10:16:15 +00:00
David Nadlinger
d69d8ff641 [D] Renamed the "dnativeconst" feature to "dmanifestconst".
This should make it clearer that it controls manifest constant generation, not handling of C++ const member functions.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12300 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 10:16:05 +00:00
David Nadlinger
03aefbc6e9 Added support for the D programming languge.
It is still a bit rough around some edges, particularly with regard to multi-threading and operator overloading, and there are some documentation bits missing, but it should be fine for basic use.

The test-suite should build and run fine with the current versions of DMD, LDC and Tango (at least) on Linux x86_64 and Mac OS X 10.6.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12299 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 00:24:02 +00:00
David Nadlinger
a355d2d46a Added special cases to the test-suite as required for D.
This is a part of the pending merge of the D module.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12298 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 00:17:37 +00:00
David Nadlinger
2070812f09 Minor rename in the 'operbool' test-case to avoid special casing for D.
This is a part of the pending merge of the D module, where a method having the same name as the module would lead to ambiguities.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12297 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 00:16:23 +00:00
David Nadlinger
4d09774cef Minor rename in the 'smart_pointer_templatemethods' test-case to avoid special casing for D.
This is a part of the pending merge of the D module, where 'Object' is a keyword.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12296 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 00:16:02 +00:00
David Nadlinger
0fb77ce206 Renamed 'template' test-case to 'template_basic'.
This is a part of the pending merge of the D module, where 'template' is a keyword (and thus not a valid module name).

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12295 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 00:15:41 +00:00
David Nadlinger
ee1c2f3ef0 Renamed 'immutable' test-case to 'immutable_values'.
This is a part of the pending merge of the D module, where 'immutable' is a keyword (and thus not a valid module name).

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12294 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-18 00:15:13 +00:00
Vadim Zeitlin
f6cab0170a Ignore non-matching regex renames when searching renames list.
Skip over %renames with non-matching %(regex)s expansion when looking for the
one to apply to the given name. This allows to have multiple anonymous renames
using regex as now the first _matching_ one will be used instead of always
using the first one and ignoring all the rest of them.

Extend unit tests to verify that applying two anonymous %renames does work as
expected.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12293 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-16 14:09:39 +00:00
Vadim Zeitlin
953c4abaca Use rename list and not hash for renames with regextarget attribute.
Renames which are regular expressions can't be put in the regex hash as they
don't literally match the real declarations names. Instead, put them in the
rename list against which we will match the declarations names later.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12292 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-16 14:09:09 +00:00
Vadim Zeitlin
e30befd138 Correct explanation of how to match on class name in %rename.
Replace incorrect documentation of $parentNode from %rename discussion: it
advised using match$parentNode but this doesn't work because the parent node
is not yet set when %rename is parsed.

Document the "fullname" attribute of %rename which can be used to restrict the
match to the given full name of a declaration only.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12291 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-16 14:08:50 +00:00
Ian Lance Taylor
580f254958 Update for recent runtime name changes (a better mechanism is clearly
needed here).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12290 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-12 16:43:03 +00:00
William S Fulton
77b87aa919 typo fix in help message
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12288 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-11 19:30:44 +00:00
Sylvestre Ledru
43794d90cd Revert of commit 12269
see: http://sourceforge.net/mailarchive/forum.php?thread_name=4CC08FAA.5050009%40fultondesigns.co.uk&forum_name=swig-devel

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12286 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-29 10:22:03 +00:00
Olly Betts
28e277f8c5 Fix typo "the the" -> "the"
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12285 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-19 06:31:31 +00:00
William S Fulton
383230d734 minor clarification about %{ %} blocks
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12284 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-18 18:59:57 +00:00
Joseph Wang
f77ccd81d5 [R] Improve error message for missing argtypes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12283 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-17 09:35:34 +00:00
Joseph Wang
98441fc6ad [R] Fix failure in overloaded functions which was breaking
QuantLib-SWIG



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12282 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-17 07:33:58 +00:00
Sylvestre Ledru
2453aee4e7 2010-10-14: Sylvestre Ledru
Fails the configure if cannot find a yacc implementation
            (like bison)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12269 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-14 12:43:15 +00:00
Olly Betts
9eaf5ba1be [PHP] Allow compilation on non-conforming Microsoft C++ compilers
which don't accept: return function_returning_void();
Reported by Frank Vanden Berghen on the SWIG mailing list.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12265 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-14 05:13:09 +00:00
William S Fulton
c9ede7e622 Fix unary scope operator (::) (global scope) regression introduced in 2.0.0. The mangled symbol names were incorrect, sometimes resulting in types being incorrectly treated as opaque types.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12264 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-13 05:48:59 +00:00
William S Fulton
a4a56acd33 dos to unix fileformatting
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12261 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-07 06:06:12 +00:00
William S Fulton
a56ee9cb1b Bump version to 2.0.2 and move CHANGES.current to CHANGES
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12260 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-05 06:11:50 +00:00
William S Fulton
aabd75f3d8 New major contributors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12256 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-04 19:30:53 +00:00
William S Fulton
9b3d2ec9b0 Add missing Go language CHANGES entry
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12255 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-04 19:30:15 +00:00
William S Fulton
2e4cff5699 minor tweak to release notes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12254 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-04 19:16:12 +00:00