Commit graph

2,134 commits

Author SHA1 Message Date
Stefan Zager
6cecfe4fcf Added documentation about tp_richcompare.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12578 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-31 04:12:29 +00:00
Stefan Zager
e43d328c61 Eliminate -Wformat compiler warning.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12575 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-30 21:41:59 +00:00
Stefan Zager
99dc5893d8 Style fixes, and switch %U to %S
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12573 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-30 19:17:54 +00:00
Stefan Zager
0aa8729d50 Added more documentation of -builtin.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12571 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-30 07:59:52 +00:00
Stefan Zager
3d444101d1 A slew of changes based on William Fulton's code review.
- Fixed naming conventions; SwigPyBuiltin is used a lot
- Removed use of std::vector
- builtin.swg isn't included if -builtin isn't specified
- Changed many feature names to use a "python:" prefix
- Eliminated static vars in std_pair.i
- Eliminated C++-style comments (//)
- Enabled autodoc and docstring with -builtin
- Fixed non-ansi generated C code
- Detect and complain if two incompatible swig modules are loaded
- Removed argcargvtest_runme3.py, and fixed argcargvtest_runme.py
  so that 2to3 handles it better
- Removed anonymous namespaces
- Eliminated builtin_init typemaps; consolidated functionality into
  SWIG_Python_NewPointerObj
- Eliminate printf warnings from %U conversion character by switching
  to %S, which works just as well
- Fixed li_std_set_runme.py for python3, which returns set members in
  a different order from python2





git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12562 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-29 06:57:02 +00:00
Stefan Zager
93499e12af Merged trunk up to revision 12551
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12552 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-24 05:46:05 +00:00
William S Fulton
c339c0b4f7 Add missing headers in generated STL wrappers to fix compilation with gcc-4.6
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12547 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-18 06:57:11 +00:00
William S Fulton
0554313887 Treat None as a Python keyword
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12542 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-16 07:39:17 +00:00
William S Fulton
89face5db1 Fix overloading when using const char[] and char[ANY] and const char[ANY]
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12541 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-15 20:59:04 +00:00
William S Fulton
5f1c242f1a Apply patch #3212624 fixing std::map Keys property.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12540 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-15 07:30:18 +00:00
David Nadlinger
ce6516fb4c [D] nspace support.
As for C# and Java, this doesn't work for free functions/variables yet.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12534 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-13 00:32:26 +00:00
Olly Betts
669bc0e001 [PHP] Fix sharing of type information between multiple SWIG-wrapped modules (SF#3202463).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12528 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-12 01:38:27 +00:00
Olly Betts
4fbb9e24d6 [PHP] Add casts to the typemaps for long long and unsigned long
long to avoid issues when they are used with shorter types via
%apply.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12520 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-07 04:06:54 +00:00
William S Fulton
908c37cef8 Coding style fixes for Python builtin changes added on the szager-builtin branch
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12515 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-03 19:34:18 +00:00
Stefan Zager
97802ab8c4 Changed a bunch of methods from SWIGRUNTIME to SWIGINTERN. Removed a snarky comment.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12513 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-03 04:18:58 +00:00
William S Fulton
3974c39b69 Perl and vc++ warning fix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12504 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-20 18:37:46 +00:00
William S Fulton
564fdbc5a7 more Perl namespace pollution workarounds
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12502 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-20 14:12:00 +00:00
William S Fulton
0a5ca9ccd6 Fix potential name clash in director class
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12501 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-20 13:47:14 +00:00
Ian Lance Taylor
56d808092f Fix li_typemaps_apply test for Go.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12493 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-20 04:08:54 +00:00
Ian Lance Taylor
21ca5a854c Adjust for the elimination of the "float" and "complex" types.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12487 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-19 20:22:33 +00:00
William S Fulton
2c2e5fa9b5 Add some missing signed char and unsigned char Lua typemaps in the typemaps.i library
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12481 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-19 16:12:12 +00:00
William S Fulton
28deca09be [PHP] Add missing INPUT, OUTPUT and INOUT typemaps in the typemaps.i library for primitive reference types as well as signed char * and bool *.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12480 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-19 14:53:53 +00:00
William S Fulton
1677881e01 Remove typemap for illegal type
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12477 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-19 01:23:07 +00:00
Olly Betts
049e51c282 Remove pointless special casing of zero-length strings, remnant of a series
of changes Marcelo made here.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12472 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-18 08:44:44 +00:00
Olly Betts
3cee7b7b3e [PHP] Fix invalid erase during iteration of std::map in generated
director code.  Reported by Cory Bennett in SF#3175820.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12469 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-18 05:30:26 +00:00
Stefan Zager
ea4cab8e4c A small unicode fix.
A partial fix for the problem with overloading, varargs,
and fastunpack: with this fix, the wrappers will compile.
However, they still contain faulty logic and unreachable
code in the dispatch function.

The comprehensive fix would have to be in overload.cxx.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12465 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-17 05:52:18 +00:00
William S Fulton
1fab53b204 [Ocaml] Apply patch #3151788 from Joel Reymont. Brings Ocaml support a up to date (ver 3.11 and 3.12), including std::string.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12460 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-14 07:22:06 +00:00
William S Fulton
7d700cc999 patch #3176274 - Ruby typecheck typemap for time_t.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12459 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-13 22:19:46 +00:00
William S Fulton
ac42dd8153 remove duplicate UTL char * typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12456 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-13 01:27:02 +00:00
Stefan Zager
011049ffe2 Another macro define for unicode.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12447 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-10 05:04:12 +00:00
Stefan Zager
b5889b8b0f Unicode fixes for python3.
Added a few more closure types.

Guard against operator overloads outside of a class declaration.

Incorporate fix for patch #3171793.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12446 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-09 08:59:09 +00:00
William S Fulton
5f8c936569 Fix some eroneous typecheck rankings for php
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12439 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-05 22:58:32 +00:00
Stefan Zager
62fef1bf99 python3 support; passes all regressions.
Adding argcargvtest_runme3.py, because 2to3 can't handle it.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12425 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-03 07:21:37 +00:00
Stefan Zager
00b5fa9c47 Now passes regressions with '-O -builtin'. Almost all changes
are to accomodate -fastunpack.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12423 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-02 10:28:46 +00:00
Stefan Zager
eb669d66c0 typecheck SWIGTYPE *const& has been fixed in Lib/typemaps/swigtype.swg, so remove the override here.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12418 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-30 05:41:51 +00:00
Stefan Zager
9c796f0333 Merged changes from trunk up to revision 12416.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12417 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-30 05:24:00 +00:00
Stefan Zager
288c37f5bf Regressions pass! With a few tweaks for unsupported features, primarily:
- Throwing wrapped types as exceptions is unsupported.
- Reverse comparison operators (e.g., __radd__) aren't supported.

Rationalized destructors.

Finished std::map implementation.  Required fixes to typecheck for
SWIGTYPE* const&.

Need a little special handling of the swig_type_info for SwigPyObject
when multiple modules are loaded.

Fall back to SwigPyObject_richcompare if there's no operator overload.

"memberget" and "memberset" attrs are applied strangely; work around
them.

Added 'this' attribute.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12415 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-30 03:17:28 +00:00
William S Fulton
640cce2c50 Fix typecheck typemaps for SWIGTYPE *const&
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12413 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-30 00:42:27 +00:00
David Nadlinger
828fac25cb [D] Don't break function return types in typemaps.i.
This fixes the new "li_typemaps_apply" testcase as done for C# in r12400.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12409 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-29 21:32:36 +00:00
David Nadlinger
de53ede681 [D] Fix byte/ubyte confusion in typemaps.i.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12408 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-29 21:32:23 +00:00
David Nadlinger
160ee9c937 [D] Support for C++ references to primitive types.
I am not sure why these typemaps were missing before since I included code for this in the C++ part of the feature, but please let me know if I missed some case where this could break generated code.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12406 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-29 21:31:53 +00:00
William S Fulton
2f0dc16b2e Fix C# typemaps.i so that %apply works doesn't break function returns using the same types, for example, %apply int &INPUT { int & } won't break 'int &foo(int &x);'
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12400 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-24 19:27:06 +00:00
Ian Lance Taylor
ef3644f052 Add string & length typemap for Go.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12394 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-14 21:31:36 +00:00
William S Fulton
ef865e06d5 Added some missing multi-argument typemaps: (char *STRING, size_t LENGTH) and (char *STRING, int LENGTH) - Java patch is from Volker Grabsch. Elements of the primitive_types.i testcase for this moved into char_binary.i. Documentation for this enhanced.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12393 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-14 19:06:43 +00:00
Stefan Zager
d4b8048e9a Stopped using template class SwigPyBuiltin, because it caused problems
when two typedef-equivalent types are wrapped as separate classes.

Now failing on refcount.cpptest.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12392 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-12 00:43:01 +00:00
Ian Lance Taylor
18a4f389f9 Update to support current Go releases.
The Go foreign function interface changed.  This changes SWIG
accordingly, and also fixes a couple of bugs.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12389 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-11 18:46:50 +00:00
Stefan Zager
8ac54d1d5e Director issues should be mostly clean now.
Refactored some type initialization out of SWIG_init.

Use __all__ attribute of module to define public interface.
This is necessary to make available symbols starting with '_'.

Now dying on li_boost_shared_ptr.  Looks like it's gonna be ugly.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12373 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-06 00:09:25 +00:00
Stefan Zager
b77b64944b Static member variables are working.
Fixed some corner cases with protected members of director classes.

Now dying in director_finalizer.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12371 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-05 08:35:28 +00:00
David Nadlinger
ab2af5ebe2 [D] Removed leftover %dstripprefix definition.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12359 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-30 17:37:48 +00:00
David Nadlinger
38c88a0931 [D] Operator overloading support for D1 and D2.
As mentioned in the documentation, opIndexAssign and implicit casting are not supported yet.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12357 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-30 02:44:04 +00:00