Commit graph

2,764 commits

Author SHA1 Message Date
Marcelo Matus
6184dceb5b Fragments can now be "type especialized", as the typemaps. The
syntax is as follows

 %fragment("name","header") { /* an old fragment */ }
 %fragment("name" {Type}, "header") { /* the fragment is type dependent */}

Now fragments can also be used inside templates:

 template <class T>
 struct A {
   %fragment("incode"{A<T>},"header") {
     /* 'incode' especialized fragment */
   }

   %typemap(in,fragment="incode"{A<T>}) {
     /*
       here we use the 'type especialized' fragment
       "incode"{A<T> }
      */
   }
 };

Also, there is a minor templ.c fix when expanding '#T'.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5749 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-17 08:01:06 +00:00
William S Fulton
d05b12f642 documentation version number corrected
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5748 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-11 21:32:25 +00:00
William S Fulton
9491429860 Director fix. Some director callback methods were not being called on all operating systems.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5746 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-11 21:26:47 +00:00
William S Fulton
ba68c5f253 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5745 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-11 21:25:46 +00:00
Matthias Köppe
fcd9181a1e *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5744 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-02 15:55:41 +00:00
Matthias Köppe
a5bc7fc6a7 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5743 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-02 12:58:30 +00:00
Matthias Köppe
e3635aed11 In -scm mode, don't forget to check the type of string arguments.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5742 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-02 12:58:00 +00:00
William S Fulton
baded88f32 no message
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5741 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-24 21:07:26 +00:00
William S Fulton
93492cfe6a All tests now use the -namespace commandline option
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5740 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-24 21:06:54 +00:00
William S Fulton
173a25a6fd New commandline option -namespace for putting all generated classes into a C# namespace.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5739 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-24 21:05:48 +00:00
William S Fulton
f306061b04 Generate package statement after the SWIG banner
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5738 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-24 21:03:47 +00:00
Matthias Köppe
5bea0cb140 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5737 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-23 13:56:41 +00:00
Matthias Köppe
30d9c11393 Define FUNC_NAME also in the dispatch wrapper for overloaded
functions.  Patch by John Lenz, SF #896255.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5736 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-23 13:56:29 +00:00
Matthias Köppe
5650e26ccd *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5735 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-23 12:57:50 +00:00
Matthias Köppe
f7b0956236 Use FUNC_NAME rather than a bogus typemap variable for signalling
errors.  Call scheme_wrong_type with a zero-based argument number.
Reported by Ondrej Pacovsky, SF #902621.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5734 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-23 12:56:58 +00:00
Matthias Köppe
5d0752c94f *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5733 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-22 15:28:14 +00:00
Matthias Köppe
7fbaa3b633 Don't try to invoke a null destructor function.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5732 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-22 15:28:03 +00:00
William S Fulton
d3d9210bd0 Replace ; with && where appropriate. This fixes the makefiles so that Make correctly errors out rather than blindly carrying on when some error occurs.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5731 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-20 22:57:23 +00:00
William S Fulton
c227c0a166 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5730 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-20 22:54:30 +00:00
William S Fulton
06b079936c bool patch code removal
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5729 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-20 22:52:49 +00:00
William S Fulton
6516029372 Fixes for compilation by the Digital Mars Compiler. Submitted by Scott Michel.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5728 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-20 22:51:47 +00:00
William S Fulton
73d0efa0d8 boring warning fix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5727 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-19 21:45:10 +00:00
William S Fulton
ef24de36fb bool patch fix. Needed for NextStep.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5726 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-19 21:44:44 +00:00
Matthias Köppe
7126136e01 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5724 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-13 16:03:32 +00:00
Matthias Köppe
e2d254b686 Don't produce invalid C code when invoked with the
-declaremodule option.  Reported by Tim Brown, SF #891108.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5723 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-13 16:03:24 +00:00
Matthias Köppe
90c3bb8085 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5722 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-13 15:50:41 +00:00
Matthias Köppe
64818068f6 [MzScheme]: Use the new command-line argument -noinit.
[Guile]: Build the runtime library with passive linkage, so as to
rename the SWIG_init function uniquely.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5721 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-13 15:50:21 +00:00
Matthias Köppe
994a002fdb New command-line argument -init.
We use it for building the runtime library, where we don't want the
functions scheme_initialize et al.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5720 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-13 15:47:55 +00:00
Dave Beazley
a1ef09aa22 Removed 'bool' datatype. Not portable. Please don't use.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5719 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-13 00:20:12 +00:00
William S Fulton
93fcabc087 -mno-cygwin for C# on Cygwin due to recent change in Cygwin stopping pure Cygwin built dlls from working.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5718 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 22:36:25 +00:00
William S Fulton
04c803daa9 CHANGES.current
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5717 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 22:00:48 +00:00
William S Fulton
6ad892a1b7 Updates for overloading methods which cannot be disambiguated by SWIG
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5716 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 21:51:59 +00:00
William S Fulton
f09b8b4af8 new overload warnings for statically typed languages
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5715 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 21:51:19 +00:00
William S Fulton
2f22b3deb2 overloading for static typed languages notes added
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5714 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 21:50:48 +00:00
William S Fulton
72618a43fb Overloading fixes for when methods cannot be disambiguated.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5713 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 21:48:55 +00:00
William S Fulton
ad5d600aeb Bill Hoffman patch to stop crashing when typewrapper class cannot be created. Overloading fixes for when methods cannot be disambiguated.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5712 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 21:48:37 +00:00
William S Fulton
f4a2470325 overloading when SWIG cannot disambiguate parameters tests added
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5711 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-12 21:45:11 +00:00
Matthias Köppe
1336cbf434 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5710 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 15:26:47 +00:00
Matthias Köppe
e863eb01d6 Replace the "known_classes" hash table by a node attribute. Methods
of classes in C++ namespaces now get the proper specializer in the
GOOPS declaration.  Reported by rm@mh-freiburg.de.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5709 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 15:26:22 +00:00
Marcelo Matus
2c15a0a2b1 add argcargv test
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5708 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 10:02:33 +00:00
Marcelo Matus
4e3d516cee now use the new argcargv.i
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5707 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 09:55:58 +00:00
Marcelo Matus
68024b15ce Reducing pyrun.swg and splitting python.swg into different files
for clarity and for easier maintainance.

pyrun.swg almost the same than 1.3.20, therefore there will be
compatible again.

code generated is reduced by the use and reuse of %fragments.

as usual, all the test-suite is compiling and a much bigger
"test project" too.

with the new typemaps definition should be much eaiser and
uniform add stl/std and user types.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5706 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 09:50:24 +00:00
Marcelo Matus
7fef280ae0 Added the ref/unref 'recursive' featues. See refcount.i for details
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5705 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 09:21:36 +00:00
Marcelo Matus
2a573e9a08 Keep the old non-resolved type str and add the fully
resolved one if is needed.

Add examples showing the problem with SWIG_TypeQuery
and template+typedef and the old type str, and how
it works now.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5704 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 08:37:30 +00:00
Marcelo Matus
d3caa4eefc Fixes for SWIG_TypeQuery and templates/typedefs,
before the swig_type_info fields 'str' and 'name'
where not consistent, one was fully resolved (name),
the other not, therefore

  typedef int Int;
  template <class C> struct Class {};

  SWIG_TypeQuery($descriptor(Class<int>*))

wasn't necessary the same that

  typedef int Int;
  template <class C> struct Class {};

  SWIG_TypeQuery("Class<int> *")

the problem was visible only when the latter form was used,
like in a static auxiliar function outside a typemap.

also, relax type name comparison with blanks, ie

  SWIG_TypeQuery("Class<int> *") := SWIG_TypeQuery("Class<int > *")


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5703 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 03:42:38 +00:00
Logan Johnson
8f7e15900e Omit unused parameter names for C++ code only; this is illegal in C.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5702 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-09 23:08:54 +00:00
Logan Johnson
acbb784a50 Be sure to initialize all of the fields of a PyMethodDef struct to some
value, to avoid numerous compiler warnings.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5701 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-06 17:46:50 +00:00
Logan Johnson
d562e7eef4 Be sure to initialize all of the fields of the PyTypeObject struct to
something, to avoid numerous compiler warnings.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5700 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-06 17:45:49 +00:00
Logan Johnson
4328d45859 Make sure that all fields of the swig_type_info struct are initialized
to something, to avoid numerous compiler warnings.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5699 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-06 17:44:13 +00:00
William S Fulton
b0bb8b7158 New test case testing some broken aspects of %feature
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5698 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-04 21:05:39 +00:00