Commit graph

1,686 commits

Author SHA1 Message Date
Gonzalo Garramuno
5eb47b0da5 Reverted the static_cast fix as it is incorrect due
to swig going thru a void* in-between.
The problem is still present, but will require a much
more elaborate fix.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9947 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-20 00:19:57 +00:00
William S Fulton
0798630f72 fix director typemaps for wstring&
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9945 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-19 23:47:17 +00:00
Gonzalo Garramuno
7a3c9a08a2 Changed swigtype.swg to use static_cast's instead of
reinterpret_cast's.
This fixes a potentially subtle problem with director
classes using reinterpret casts in their casts
and when casting class that have multiple inheritance. 
The code currently generated by swig actually works
find under most compilers but was, afaik, not truly 
C++ conformant.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9942 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-19 09:00:59 +00:00
Olly Betts
83e0e787b7 [php] Add typemaps for handling parameters of type std::string &
which are modified by the wrapped function.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9941 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-18 03:08:06 +00:00
Olly Betts
8178898960 [python] Simpler code for SWIG_AsVal_bool() which fixes a "strict
aliasing" warning from GCC - patch from SF#1724581 by Andrew
Baumann.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9938 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-17 23:52:16 +00:00
Olly Betts
e2d7f303b8 [perl5] Use sv_setpvn() to set a scalar from a pointer and length
- patch from SF#174460 by "matsubaray".


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9937 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-17 23:24:11 +00:00
Olly Betts
c836c81acb When wrapping C++ code, generate code which uses
std::string::assign(PTR, LEN) rather than assigning
std::string(PTR, LEN).  Using assign generates more efficient code
(tested with GCC 4.1.2).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9936 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-17 20:10:57 +00:00
Olly Betts
ef4ca158de [PHP] Use std::string::assign(PTR, LEN) rather than assigning
std::string(PTR, LEN).  Using assign generates more efficient code
(tested with GCC 4.1.2).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9935 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-17 18:39:12 +00:00
Gonzalo Garramuno
94a6b8ddb1 Revered _mSWIG to rubyhead.swg as some tests would fail.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9931 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-04 06:43:28 +00:00
Gonzalo Garramuno
d1defceb95 Moved _mSWIG to rubyrun.swg with all other static
variables.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9927 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-04 06:12:38 +00:00
Gonzalo Garramuno
8f6e08dcb5 Silly gcc was complaining about static initializers when
compiling in C.
Code was now moved to initialization and variables were
prefixed with swig_*.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9925 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-04 05:40:49 +00:00
Mikel Bancroft
3cedba5291 [allegrocl] see CHANGES.current
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9901 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-16 18:39:50 +00:00
Surendra Singhi
e33435c4cc aplied patch 1766076
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9898 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-15 05:09:02 +00:00
William S Fulton
23f4cd4a38 More alternative calling convention names
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9895 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-11 00:02:24 +00:00
William S Fulton
a122368370 Apply patch #1771410 from Wade Brainerd to fix typedef XS(SwigPerlWrapper) in perlrun.swg for ActiveState Perl build 822 and Perl 5.8.9 and 5.10 branches.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9892 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-10 11:54:42 +00:00
William S Fulton
7797ae82aa const enum reference typemaps fixed
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9891 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-10 11:30:03 +00:00
William S Fulton
6e4d5b4b3a Fix member pointer typemaps (32bit fix only though)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9890 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-10 11:16:59 +00:00
Gonzalo Garramuno
bbd80cfa84 Moved some of the common checks for methods/procs and arity
to rubyrun.swg, as they are useful even for not stl stuff.

Added a fragment trait for marking STL containers, but this
fragment cannot be attached due to SWIG %template limitations.




git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9874 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-24 05:46:55 +00:00
William S Fulton
2b93511d17 complete last commit
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9873 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-20 22:35:07 +00:00
William S Fulton
a4eb259f31 member pointer fixes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9868 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-18 21:07:48 +00:00
William S Fulton
edd82d41f2 corrections for last commit
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9867 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-18 21:06:55 +00:00
Mark Gossage
f87371fe8c [lua] extras compability for lua 5.1, fixed a static link name conflict
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9864 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-10 09:30:49 +00:00
Mark Gossage
c3ec8fdce3 [lua] Fix a bug in SWIG_ALLOC_ARRAY()
improved the error messages for incorrect arguments.
Changed the output of swig_type() to use the human readable form of the type, rather than the raw swig type.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9863 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-05 01:31:51 +00:00
Gonzalo Garramuno
a1ed3e094a Fixed C++ comment in potential C file.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9858 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-25 21:43:43 +00:00
William S Fulton
176984f338 std::vector parameter name changes so that these parameters can be individually singled out with typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9856 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-25 21:30:13 +00:00
Gonzalo Garramuno
aa84817ce0 Fixed typo.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9855 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-11 20:03:19 +00:00
Mikel Bancroft
e0449d3d16 [allegrocl] see CHANGES.current
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9854 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-07 23:23:21 +00:00
Olly Betts
333ed5b82d Using an apostrophe in a #error message causes an error for some GCC versions.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9853 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-06 23:20:25 +00:00
Olly Betts
1329624117 [Ruby]
Use whichever of "long" or "long long" is the same size as "void*"
to hold pointers as integers, rather than whichever matches off_t.
Fixes compilation on OS X and GCC warnings on platforms where
sizeof(void*) < sizeof(off_t) (SF patch #1731979).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9852 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-06 21:25:32 +00:00
Gonzalo Garramuno
8a0eba9469 Changed "extern Init_stack" to "RUBY_EXTERN" to make it compatible
with ruby on windows (dllexport issues).



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9845 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-02 10:41:38 +00:00
Gonzalo Garramuno
801fda2b00 Moved Init_stack() declaration over to rubyapi to
avoid potential C++ issues.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9844 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-06-02 10:24:23 +00:00
Olly Betts
db1161de35 Fix typo.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9843 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-31 10:32:01 +00:00
Olly Betts
38829f2ce0 [Python]
Fix "missing initialiser" warning when compiling generated C/C++
wrapper code with Python 2.5 with warnings enabled (patch from
bug#1727668 from Luke Moore).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9842 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-31 02:20:45 +00:00
Gonzalo Garramuno
32b10ee9b7 Dramatically sped up comparison functions for
integers.  This speeds up most std::set<int>, etc.
insertion operations.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9830 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-23 12:46:57 +00:00
Gonzalo Garramuno
776398cd1d Made hash store a counter to the ruby VALUE object.
This should avoid a potential subtle bug when
using operator=.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9829 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-23 11:54:36 +00:00
Gonzalo Garramuno
5aaf3003b6 Added a partial specialization for swig::GC_VALUE
to avoid the need to check each element in the container
during copy constructors.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9828 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-20 15:23:43 +00:00
Gonzalo Garramuno
0b36bc6940 Removed & test and changed it for a simpler T_NONE
test.  This seems to avoid issues and is slightly
faster.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9827 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-19 16:51:39 +00:00
Gonzalo Garramuno
7c2e64a8dd Made check in rubyclasses a little bit safer
to exit early on ints, nil, false, true, symbols,
internal nodes and none.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9825 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-19 09:41:23 +00:00
Gonzalo Garramuno
1cf8d3dd36 Dramatically sped up all STL containers when
they contain swig::GC_VALUEs.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9824 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-19 08:45:09 +00:00
Gonzalo Garramuno
6a01528488 Fixed SWIG_EXPORT_ITERATOR_METHODS in std_set.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9823 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-18 23:32:55 +00:00
Gonzalo Garramuno
49c61cd129 Added missing size(), clear(), empty() functions.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9822 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-18 23:31:14 +00:00
Gonzalo Garramuno
cf0e8cca5a Fixed typecheck for std::complex<double>
which was previously broken.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9817 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-17 11:10:27 +00:00
Gonzalo Garramuno
211ee4eb0a Fix for std::pair< iterator, iterator > making the
iterator non-consts, when the key is always const
and will prevent modification.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9816 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-17 10:28:20 +00:00
Gonzalo Garramuno
b20fd0d06f Moved functors away from std_set.i and std_map.i
into their own std_functors.i file.
Made binarypredicate, etc. be templates to allow more
strict predicates/functors.




git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9815 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-16 22:48:01 +00:00
Gonzalo Garramuno
765e3d27f0 Removed incorrect noconst trait.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9814 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-16 22:25:31 +00:00
Gonzalo Garramuno
72b118220f Added some spaces in template names to avoid
potential compilation errors.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9812 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-16 21:29:34 +00:00
Gonzalo Garramuno
361a5d67b4 Removed older renames.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9811 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-16 21:28:20 +00:00
Gonzalo Garramuno
d4eec2670b Fixed renames of std_* containers to a safer
%rename directive.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9810 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-16 21:27:08 +00:00
Gonzalo Garramuno
50c035fb07 Ruby complex was broken for one of its constructors.
Fixed.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9809 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-16 21:24:41 +00:00
Olly Betts
4aaf48d650 swig -python -threads now generates C/C++ code which uses Python's
own threading abstraction (from pythread.h) rather than OS specific
code.  The old code failed to compile on MS Windows.  (See SF patch
tracker #1710341).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9806 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-05-12 13:55:19 +00:00