Commit graph

241 commits

Author SHA1 Message Date
William S Fulton
afecabc4f3 XML patch from Robin Dunn adds -dump_xml and -xmlout <file> for generating XML of post processed parse tree
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@6037 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-07-12 19:53:23 +00:00
William S Fulton
24a7f00d0a New feature attributes added
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5998 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-06-27 20:53:22 +00:00
William S Fulton
2c301423bf Patch to fix wrapping of templated methods. ISO compliant compilers, like
Comeau and GCC-3.4.0, don't like the template specifier that SWIG was generating
when calling the method. This fix may break some non standard compliant compilers,
for example, Sun workshop compilers prior to version 6.2.p2. Patch submitted
by Bill Clarke.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5975 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-06-03 22:57:27 +00:00
Marcelo Matus
a04dc64d04 fixes for const char[]
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5931 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-27 11:29:39 +00:00
William S Fulton
b6cb23c83e unnamed global enum variables support
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5927 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-24 20:35:16 +00:00
William S Fulton
d346f06722 unnamed enum member variables - less verbose code generation that has a single solution for all compilers. Will only fail silently (no printfs like before) when using compiler switches that force enums to be different size to integers. If anyone ever does this, I will eat my hat
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5883 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-22 20:42:37 +00:00
Marcelo Matus
1eba66b31b fix java reg. tests and add -directors flag
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5867 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 05:55:35 +00:00
Marcelo Matus
a9b4a82eae fix inplace python opers
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5859 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 21:58:47 +00:00
William S Fulton
1e5687070e Comments on the symbol table added
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5846 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:23:01 +00:00
William S Fulton
ef291371d5 enum fixes for the typesystem
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5845 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:22:01 +00:00
Marcelo Matus
4e64b1e7be fix array + typedef
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5827 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-03 08:45:22 +00:00
Marcelo Matus
ecff58b6bb fix casting type
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5814 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-01 03:58:47 +00:00
Marcelo Matus
facee0d359 slightly better support for template const/dest and features
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5811 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-31 11:29:54 +00:00
Marcelo Matus
0a3d3c0d0d added support for unnamed C++ enum members
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5805 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-31 01:35:44 +00:00
Marcelo Matus
b1291b5a7b fixes some compiler warnings, and add better support
for member variables (in C++/python).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5793 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-28 14:04:36 +00:00
Marcelo Matus
40e6464045 simpler mangling method
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5791 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-23 01:47:54 +00:00
Marcelo Matus
1e70ba49e7 Using the same mangling method whenever is needed.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5786 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-23 00:59:26 +00:00
Marcelo Matus
48df694c7b add missing Swig_typedef_resolve_all
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5769 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-18 20:35:15 +00:00
Marcelo Matus
6c150e4328 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> }
      */
   }
 };


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5753 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-17 08:36:06 +00:00
Marcelo Matus
2e88f79ace Using the unused 'Swig_string_mangle' method to
implement the #@ preprocessor mangling


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5751 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-17 08:27:02 +00:00
William S Fulton
5998ecb442 bool patch code removal
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5729 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-20 22:52:49 +00:00
Dave Beazley
f64d62c80c Removed 'bool' datatype. Not portable. Please don't use.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5719 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-13 00:20:12 +00:00
Marcelo Matus
15923cd8b8 Added the ref/unref 'recursive' featues. See refcount.i for details
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5705 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 09:21:36 +00:00
Marcelo Matus
d29dbe752d 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@5704 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 08:37:30 +00:00
Marcelo Matus
9f9e05ad30 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@5703 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-10 03:42:38 +00:00
Logan Johnson
48cd3f8afc 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@5699 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-06 17:44:13 +00:00
Marcelo Matus
9b4df57aa4 Simple patch to allow fragments to include other fragments:
%fragment("Hello","header") "..."

%fragment("Hi","header",fragment="Hello") "..."

the latter fragment will include the first one if is invoked.

more than one fragment can be included at the time, just
keep adding fragment="f1",fragment="f2", etc.

this is used to emulate typemaps reuse, where all the
reusable typemap code is put in a fragment static method,
and then it can be included from another fragment typemap
as needed.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5690 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-27 23:39:35 +00:00
Marcelo Matus
f2995151b1 fix expansion for templates, ie from Type<(int)> to Type<int>
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5686 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-25 09:22:35 +00:00
William S Fulton
238e948bbe Eric Sunshine patch - Mods to work on NextStep
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5674 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-22 22:42:18 +00:00
William S Fulton
643da18a02 forte warning fixes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5663 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-21 21:27:43 +00:00
William S Fulton
8377edf02a Various warning fixes for .NET 2003 cl /W4 to work barring one warning and for gcc -ansi -Wall -pedantic to be warning free:
const fixes and function prototype declarations matching the definition etc


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5639 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-15 22:46:07 +00:00
Marcelo Matus
48d11474ee - Normalize the 'Swig_error' calls and formats, before some
of the strings start like "Error. XXX", others like "XXX".
  The format is now defined in 'error.c:Swig_error_msg_format()'.

- Normalize the multiline error/warning messages to correctly
  use -Fformat definition.

- Centralize the error/warning format definitions in
  'error.c:Swig_error_msg_format()'.

- Fix a minor error in cpp.c, that after finding an error, still
  was emitting a redefined macro, producing duplicated error/warning
  messages in parser.y.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5635 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-15 08:33:12 +00:00
William S Fulton
e684591411 Warning and error messages output is selectable via commandline options
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5613 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-10 00:08:18 +00:00
William S Fulton
62ba646c89 Moved non static function declarations from source files into header files
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5602 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-28 21:48:39 +00:00
William S Fulton
ca2d01a081 Fix so that Windows paths are displayed correctly when reporting errors.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5600 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-28 21:38:58 +00:00
Dave Beazley
7d38c269be Fixed casting problem with references to arrays in gcc-3.3 (and maybe other versions).
I'm not sure if this is a gcc bug or a SWIG bug.  However, the patch makes the
arrayref.i test work on my machine.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5433 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-28 19:06:35 +00:00
Marcelo Matus
595d36bf1a Fixed not '0' terminated string, that could result in a getting a bad error code
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5424 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-27 00:11:18 +00:00
Dave Beazley
019cf61e92 Fixed infinite recursion bug (maybe)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5422 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-26 20:56:44 +00:00
Dave Beazley
97c4e44437 Added Swig_push_directory() and Swig_pop_directory()
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5297 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-11 20:16:35 +00:00
Dave Beazley
3b0b37f616 Added functions to support preprocessor enhancement.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5296 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-11 20:16:11 +00:00
Dave Beazley
9f5df641f9 Eliminate compiler warning.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5217 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-31 17:48:02 +00:00
Dave Beazley
91ab4d286e Eliminated compiler warning.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5216 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-31 17:47:53 +00:00
William S Fulton
8e017fe286 Fixes to comply with with ISO/IEC 14882:1998(E) 17.4.3.1.2 (symbol names)
Symbols in the generated director code.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5154 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-23 21:26:31 +00:00
William S Fulton
f569dd135d __DIRECTOR__ renamed Swig::Director
SWIG_DIRECTOR_EXCEPTION renamed Swig::DirectorException (similarly for derived classes)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5138 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-22 20:13:42 +00:00
Logan Johnson
30a2c777a9 Fixed some problems in Swig_ConstructorToFunction() for the case where
the parameter list (parms) is NULL.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5121 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-19 18:20:16 +00:00
Dave Beazley
4cf4dad108 Major refactoring of DOH List/Hash iterators. See CHANGES
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5101 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-11 20:26:57 +00:00
Matthias Köppe
1da47228e1 Remove prototypes for the deleted functions SwigType_reset_scopes,
SwigType_set_scope_name, Swig_debug_emit, Swig_typemap_lookup_multi.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5097 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-09 12:42:20 +00:00
William S Fulton
d79b53bb54 Java directors implementation contributed by Scott Michel.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5076 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-04 23:26:29 +00:00
Dave Beazley
48ad8e3946 misc cleanup.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5045 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-01 17:03:29 +00:00
Mark Rose
c1b57370b6 Abstract directors and typemap fixes.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5024 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-08-30 05:03:34 +00:00