git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@7235 626c5289-ae23-0410-ae9c-e8d60b6d4f22
572 lines
26 KiB
Text
572 lines
26 KiB
Text
Version 1.3.25 (In progress)
|
|
============================
|
|
|
|
05/27/2005: wsfulton
|
|
Modernised and tidied up Windows macros --> SWIGEXPORT, SWIGSTDCALL. They can be overridden
|
|
by users via -D compiler directives if need be.
|
|
|
|
05/26/2005: wsfulton
|
|
%csmethodmodifiers can be applied to variables as well as methods now.
|
|
|
|
In addition to the default 'public' modifier that SWIG generates, %csmethodmodifiers will also
|
|
replace the virtual/new/override modifiers that SWIG thinks is appropriate. This feature is
|
|
useful for some obscure cases where SWIG might get the modifiers incorrect, for example
|
|
with private inheritance and overriding a method in the base class.
|
|
|
|
*** POTENTIAL INCOMPATIBILITY FOR C# MODULE ***
|
|
|
|
05/25/2005: wsfulton
|
|
Added missing constructors to std::pair wrappers (std_pair.i) for all languages.
|
|
|
|
05/25/2005: wsfulton
|
|
[C#] Added std::pair wrappers in std_pair.i
|
|
|
|
05/25/2005: wsfulton
|
|
[C#] The C# 'new' and 'override' modifiers will be generated when a C++ class inherits methods
|
|
via a C++ 'using' declaration.
|
|
|
|
05/25/2005: wsfulton
|
|
Fix for exception specifications previously being ignored in classes that inherited methods
|
|
from 'using' declarations, eg calls to Derived::bar below will convert C++ exceptions into
|
|
a target language exception/error, like it always has done for Base::Bar.
|
|
|
|
class Base {
|
|
virtual bar() throw (std::string);
|
|
};
|
|
class Derived : public Base {
|
|
using Base::bar;
|
|
};
|
|
|
|
05/23/2005: wsfulton
|
|
Fixes for detecting virtual methods in %extend for the -fvirtual option and C# override and new
|
|
method modifiers.
|
|
|
|
05/23/2005: wsfulton
|
|
[C#] The 'new' modifier is now generated on the proxy method when a method in a derived
|
|
class is not polymorphic and the same method exists in the derived class (ie it hides
|
|
the base class' non-virtual method).
|
|
|
|
05/23/2005: wsfulton
|
|
[Java, C#] Fixes to detection of covariant return types - when the class hierarchy is more
|
|
than 2 classes deep.
|
|
|
|
05/21/2005: wsfulton
|
|
[Java] std::wstring typemaps moved from std_string.i to std_wstring.i
|
|
|
|
05/21/2005: wsfulton
|
|
Fix for crash in DohStrstr, bug #1190921
|
|
|
|
05/21/2005: wsfulton
|
|
[TCL] Fix for methods with similar names when showing list of names on error - bug #1191828.
|
|
Patch from Jeroen Dobbelaere.
|
|
|
|
05/21/2005: wsfulton
|
|
[TCL] long long overloading fix - bug #1191835, patch from Jeroen Dobbelaere.
|
|
|
|
05/21/2005: wsfulton
|
|
Fix bug #1196755 to remove debug from swigtcl8.swg.
|
|
|
|
05/19/2005: wsfulton
|
|
[C# and -fvirtual option] Fix for the override key not being generated in the derived class when a
|
|
virtual method's return type was a typedef in either the base or derived class. Also ensures the
|
|
method is eliminated when using the -fvirtual option. For example, Derived.method now has the C#
|
|
override keyword generated:
|
|
|
|
typedef int* IntegerPtr;
|
|
|
|
struct Base {
|
|
virtual IntegerPtr method();
|
|
};
|
|
|
|
struct Derived : Base {
|
|
int * method() const;
|
|
};
|
|
|
|
[C#] Fix for the override key being incorrectly generated for virtual methods when a base class
|
|
is ignored with %ignore.
|
|
|
|
05/13/2005: wsfulton
|
|
[Java] Fixes to remove "dereferencing type-punned pointer will break strict-aliasing rules"
|
|
warnings in C wrappers when compiling C code with 'gcc -Wall -fstrict-aliasing'. Patch from
|
|
Michael Cahill. This modifies many of the casts slightly, for example
|
|
arg1 = *(DB_ENV **)&jarg1;
|
|
to
|
|
arg1 = *(DB_ENV **)(void *)&jarg1;
|
|
|
|
05/12/2005: wsfulton
|
|
[C#] Support for C# attributes. C# attributes can be generated:
|
|
1) On a C/C++ type basis by specifying an inattributes and/or outattributes typemap attribute
|
|
in the imtype or cstype typemaps (for C# return type or C# parameter type attributes).
|
|
2) On a wrapped method or variable by specifying a csattributes feature (%feature).
|
|
3) On a wrapped proxy class or enum by specifying a csattributes typemap.
|
|
|
|
Examples are in the C# documentation (CSharp.html).
|
|
|
|
04/29/2005: wsfulton
|
|
New configure option to turn off the default maximum compiler warning as
|
|
they couldn't be removed even when overriding CFLAGS and CXXFLAGS with configure
|
|
(./configure CFLAGS= CXXFLAGS=). To turn the maximum warnings off, run:
|
|
|
|
./configure --without-maximum-compile-warnings
|
|
|
|
04/28/2005: wsfulton
|
|
Patch from Scott Michel which reworks the Java constructor and finalize/destructor typemaps,
|
|
for directors to reduce the number of overall Java typemaps. Added the director_take and
|
|
director_release typemaps to emulate other modules' __disown__ functionality.
|
|
|
|
*** POTENTIAL INCOMPATIBILITY FOR JAVA DIRECTORS ***
|
|
|
|
04/28/2005: wsfulton
|
|
[C#] Fixed problems due to the over eager garbage collector. Occasionally the
|
|
garbage collector would collect a C# proxy class instance while it was being used
|
|
in unmanaged code if the object was passed as a parameter to a wrapped function.
|
|
Needless to say this caused havoc as the C# proxy class calls the C++ destructor
|
|
when it is collected. Proxy classes and type wrapper classes now use a HandleRef,
|
|
which holds an IntPtr, instead of a plain IntPtr to marshal the C++ pointer to unmanaged
|
|
code. There doesn't appear to be any performance degradation as a result of this
|
|
modification.
|
|
|
|
The changes are in the proxy and type wrapper classes. The swigCPtr is now of type HandleRef
|
|
instead of IntPtr and consequently the getCPtr method return type has also changed. The net
|
|
effect is that any custom written typemaps might have to be modified to suite. Affected users
|
|
should note that the implementation uses the new 'out' attribute in the imtype typemap as the
|
|
input type is now a HandleRef and the output type is still an IntPtr.
|
|
|
|
*** POTENTIAL INCOMPATIBILITY FOR C# MODULE ***
|
|
|
|
04/28/2005: wsfulton
|
|
[C#] Support for asymmetric type marshalling added. Sometimes the output type needs to be
|
|
different to the input type. Support for this comes in the form of a new optional 'out'
|
|
attribute for the ctype, imtype and cstype typemaps. If this typemap attribute is not
|
|
specified, then the type used for both input and output is the type specified in the
|
|
typemap, as has always previously been the case. If this typemap attribute is specified,
|
|
then the type specified in the attribute is used for output types and the type specified
|
|
in the typemap itself is used for the input type. An output type is a return value from
|
|
a wrapped method or wrapped constant and an input type is a parameter in a wrapped method.
|
|
|
|
An example shows that char * could be marshalled in different ways,
|
|
|
|
%typemap(imtype, out="IntPtr") char * "string"
|
|
char * function(char *);
|
|
|
|
The output type is thus IntPtr and the input type is string. The resulting intermediary C# code is:
|
|
|
|
public static extern IntPtr function(string jarg1);
|
|
|
|
04/22/2005: mkoeppe (Matthias Koeppe)
|
|
[Guile] Fix generation of "define-method" for methods of
|
|
classes with a constructor. Reported by Luigi Ballabio.
|
|
|
|
04/15/2005: wuzzeb (John Lenz)
|
|
[Chicken]
|
|
For wrapped functions that return multiple values (using argout),
|
|
SWIG CHICKEN now returns them as multiple values instead of as
|
|
a list. They can then be accessed using (call-with-values).
|
|
|
|
04/14/2005: wuzzeb (John Lenz)
|
|
[Chicken]
|
|
+ Added a whole bunch of new _runme scripts into the chicken test
|
|
suite. Also fix some bugs these new scripts turned up.
|
|
|
|
+ Added optimization when returning a wrapped proxy class. Before,
|
|
a minor garbage collection was invoked every time a function returned.
|
|
|
|
+ All the chicken Examples should now run correctly
|
|
|
|
04/14/2005: wsfulton
|
|
[C#] More fixes for typemap matching when wrapping variables, in particular
|
|
std::string, so that std::string variables can be easily marshalled with
|
|
a C# string property using:
|
|
|
|
%include "std_string.i"
|
|
%apply const std::string & { std::string *variable_name };
|
|
std::string variable_name;
|
|
|
|
(Recall that all class variables are wrapped using pointers)
|
|
|
|
04/05/2005: wuzzeb (John Lenz)
|
|
[Chicken]
|
|
+ Added Examples/chicken/egg, an example on how to build a chicken
|
|
extension library in the form of an egg. Also updated the
|
|
documentation on the different linking options.
|
|
|
|
+ chicken test-suite now has support to check SWIG with the -proxy
|
|
argument if there exists a _proxy_runme.ss file.
|
|
|
|
+ More fixes for overloaded functions and -proxy
|
|
|
|
03/31/2005: wsfulton
|
|
Turned on extra template features for all languages which were
|
|
previously only available to Python.
|
|
|
|
This enables typemaps defined within a templated class to be used as
|
|
expected. Requires %template on the templated class, %template() will
|
|
also pick up the typemaps. Example:
|
|
|
|
template <typename T> struct Foo {
|
|
...
|
|
%typemap(in) Foo "in typemap for Foo<T> "
|
|
or
|
|
%typemap(in) Foo<T> "in typemap for Foo<T> "
|
|
};
|
|
|
|
%template(Foo_i) Foo<int>;
|
|
%template() Foo<double>;
|
|
|
|
will generate the proper 'in' typemaps wherever Foo<int> and Foo<double>
|
|
are used.
|
|
|
|
03/30/2005: mkoeppe (Matthias Koeppe)
|
|
[MzScheme] Patch from Hans Oesterholt for supporting MzScheme 30x.
|
|
|
|
03/29/2005: wuzzeb (John Lenz)
|
|
[Chicken]
|
|
+ Reallow older versions of chicken (1.40 to 1.89) by passing -nocollection
|
|
argument to SWIG
|
|
+ %import now works correctly with tinyclos. (declare (uses ...)) will be
|
|
exported correctly.
|
|
+ TinyCLOS proxy classes now work correctly with overloaded functions
|
|
and constructors.
|
|
|
|
03/29/2005: wsfulton
|
|
[Java] Patch from Scott Michel for directorout typemaps. Java directors
|
|
require the directorout typemaps like the other languages now. The new
|
|
typemaps provide fixes for methods where the return type is returned
|
|
by reference (this cannot automatically be made thread safe though).
|
|
|
|
03/22/2005: wsfulton
|
|
Enum casting fixes. Visual C++ didn't like the C type casting SWIG produced
|
|
when wrapping C++ enum references, as reported by Admire Kandawasvika.
|
|
|
|
03/21/2005: wsfulton
|
|
[Perl] SF #1124490. Fix Perl macro clashes when using Visual Studio's STL string,
|
|
so now projects can #include <string>.
|
|
|
|
03/21/2005: wsfulton
|
|
Fixed %varargs which got broken with the recent default argument changes.
|
|
Also works for Java and C# for the first time now.
|
|
|
|
03/17/2005: wuzzeb (John Lenz)
|
|
[Chicken]
|
|
+ Fix a whole bunch of bugs in the chicken module. The entire
|
|
test suite now compiles, with the exception of the tests that require
|
|
std_vector.i, std_deque.i, and so on, which chicken does not have yet.
|
|
|
|
+ Add support for %exception and %typemap(exceptions). Exceptions are
|
|
thrown with a call to (abort) and can be handled by (handle-exceptions)
|
|
|
|
03/15/2005: wsfulton
|
|
[Java] Patch from Scott Michel for directors. Modifications to the typemaps
|
|
giving users fine control over memory ownership and lifetime of director classes.
|
|
Director classes no longer live forever by default as they are now collectable
|
|
by the GC.
|
|
|
|
03/15/2005: wuzzeb (John Lenz)
|
|
[Chicken] Add support for adding finalizers garbage collected objects.
|
|
Functions that return new objects should be marked with %newobject and
|
|
input arguments which consume (or take ownership) of a pointer should
|
|
be marked with the DISOWN typemap.
|
|
|
|
Also add support for correctly checking the number of arguments passed
|
|
to a function, and raising an error if the wrong number are passed.
|
|
|
|
03/14/2005: wuzzeb (John Lenz)
|
|
Add --without-alllang option to configure.in, which is the same as
|
|
passing all the --without-python --without-perl5 etc... that Matthias added.
|
|
|
|
03/09/2005: wsfulton
|
|
[Php] Memory leak fix for functions returning classes/structs by value.
|
|
|
|
03/08/2005: wsfulton
|
|
[Perl] Fix for Perl incorrectly taking memory ownership for return types that
|
|
are typedefs to a struct/class pointer. Reported by Josh Cherry.
|
|
|
|
03/07/2005: wsfulton
|
|
[C#] Various exception changes for the std::vector wrappers. These now more
|
|
accurately mirror the same exceptions that System.Collections.ArrayList throw.
|
|
|
|
03/07/2005: wsfulton
|
|
[C#] Fix undefined behaviour after any of the std::vector methods
|
|
throw an exception.
|
|
|
|
03/07/2005: wsfulton
|
|
[C#] When null is passed for a C++ reference or value parameter, the
|
|
exception thrown has been corrected to an ArgumentNullException instead
|
|
of NullReferenceException as recommended in the .NET Framework documentation.
|
|
|
|
The default throws typemaps turn a C++ exception into an ApplicationException,
|
|
not a SystemException now.
|
|
|
|
03/07/2005: wsfulton
|
|
[C#] Numerous changes in C# exception handling have been made over the past
|
|
few weeks. A summary follows:
|
|
|
|
The way in which C++ exceptions are mapped to C# exceptions is quite different.
|
|
The change is to fix C# exceptions so that the C++ exception stack is correctly
|
|
unwound as previously C++ exceptions were being thrown across the C PInvoke layer
|
|
into the managed world.
|
|
|
|
New typemap attributes (canthrow and excode) have been introduced to control the
|
|
mapping of C++ to C# exceptions. Essentially a callback into the unmanaged world
|
|
is made to set a pending exception. The exception to throw is stored in thread local
|
|
storage (so the approach is thread-safe). The typemaps are expected to return
|
|
from unmanaged code as soon as the pending exception is set. Any pending exceptions
|
|
are checked for and thrown once managed code starts executing. There should
|
|
be minimal impact on execution speed during normal behaviour. Full details will be
|
|
documented in CSharp.html.
|
|
|
|
The SWIG_CSharpThrowException() function has been removed and replaced with the
|
|
SWIG_CSharpSetPendingExceptionArgument() and SWIG_CSharpSetPendingException()
|
|
functions. The original name has been deliberately changed to break old code as
|
|
the old approach was somewhat flawed. Any user defined exceptions that follow the
|
|
same pattern as the old approach should also be fixed.
|
|
|
|
Numerous new .NET framework exceptions are now available for easy throwing from
|
|
unmanaged code. The complete list is:
|
|
|
|
ApplicationException, ArithmeticException, DivideByZeroException,
|
|
IndexOutOfRangeException, InvalidOperationException, IOException,
|
|
NullReferenceException, OutOfMemoryException, OverflowException,
|
|
SystemException, ArgumentException, ArgumentNullException and
|
|
ArgumentOutOfRangeException.
|
|
|
|
*** POTENTIAL INCOMPATIBILITY FOR C# MODULE ***
|
|
|
|
05/05/2005: mmatus
|
|
|
|
Fix several memory leaks around. Even when we survive knowning
|
|
swig is a memory leak factory, it was a little out of
|
|
control. To run std_containers.i in the python test-suite,
|
|
swig was using ~260MB, now it uses 'only' ~40MB, which is
|
|
the same ammount that g++ uses, so, is not that bad.
|
|
In the process, I found a couple of extra Deletes, which
|
|
in some cases could trigger seg. faults and/or
|
|
DOH/asserts.
|
|
|
|
[python] Better support for directors + exception. More
|
|
verbose errors and added an unexpected exception handler.
|
|
|
|
[python] Fix memory leak for the
|
|
|
|
std::vector<std::vector<int> >
|
|
|
|
case,reported by Bo Peng.
|
|
|
|
[python] Fix SwigPyObject compare problem reporte by
|
|
Cameron Patrick.
|
|
|
|
[python] Fix several warnings in the generated code
|
|
for gnu-gcc, Intel and VC7.1 compilers.
|
|
|
|
|
|
02/25/2005: wuzzeb (John Lenz)
|
|
Update documentation to use CSS and <div> instead of <blockquote>
|
|
I used a script to convert the docs, and it set all the box classes
|
|
to be "code". There are actually 4 different classes,
|
|
"shell", "code", "targetlang", and "diagram". We need to go through
|
|
and convert the divs depending on what they contain.
|
|
|
|
02/23/2005: mmatus
|
|
|
|
[Python] Added option -nortti to disable the use of native
|
|
C++ RTTI with directors (dynamic_cast<> is not used).
|
|
|
|
Add more code for directors to detect and report errors in
|
|
the python side.
|
|
|
|
Extend the use of SWIGINTERN whenever is possible.
|
|
|
|
Remove template warnings reported by VC7.1.
|
|
|
|
Remove warnings reported by gcc/g++. Finally you can
|
|
compile using
|
|
|
|
g++ -W -Wall -c mymodule_wrap.cxx
|
|
|
|
and no spurious errors will be generated in the wrapper
|
|
code.
|
|
|
|
02/23/2005: wuzzeb (John Lenz)
|
|
Added -external-runtime argument. This argument is used to dump
|
|
out all the code needed for external access to the runtime system,
|
|
and it replaces including the files directly. This change adds
|
|
two new virtual functions to the Language class, which are used
|
|
to find the language specific runtime code. I also updated
|
|
all languages that use the runtime to implement these two functions.
|
|
|
|
02/22/2005: mmatus
|
|
Fix %template + private error SF#1099976.
|
|
|
|
02/21/2005: mmatus
|
|
|
|
Fix swigrun.swg warnings reported when using "gcc -W -Wall"
|
|
(static/inline not used in front of a function
|
|
declaration), and add SWIGUNUSED attribute to avoid
|
|
unused warnings elsewhere.
|
|
|
|
Fix unused variable warnings.
|
|
|
|
[Python] Use new SWIGUNUSED attribute to avoid warnings in
|
|
SWIGINTERN methods.
|
|
|
|
[Python] Fix PyOS_snprintf for python versions < 2.2 (SF #1104919).
|
|
|
|
[Python] Fix map/multimap to allow empty maps (reported by
|
|
Philippe Hetroy).
|
|
|
|
[Docs] Add some documentation to Python.html and
|
|
SWIGPlus.html, including for example the fact that
|
|
'friends' are now supported.
|
|
|
|
02/21/2005: wsfulton
|
|
[PHP] Patch from Olly Betts, so that wrappers compile with Zend thread safety enabled.
|
|
|
|
02/17/2005: wsfulton
|
|
Memory leak fix in some of the scripting language modules when using default
|
|
arguments in constructors. The scripting language was not taking ownership of the
|
|
C++ object memory when any of the constructors that use default arguments was called.
|
|
|
|
02/16/2005: wsfulton
|
|
SF #1115055: Failed make install. Patch from Rob Stone.
|
|
|
|
02/16/2005: wsfulton
|
|
[Java] SF #1123416 from Paul Moore. Correct memory allocation for STRINGARRAY
|
|
typemaps in various.i.
|
|
|
|
02/15/2005: wsfulton
|
|
Disabled typemap search changes for now (see entry 19/12/2004). It breaks
|
|
old typemaps, lengthens the execution time by about 25% and introduces
|
|
inconsistencies.
|
|
|
|
02/15/2005: wsfulton
|
|
swig -help follows other software by printing to stdout instead of stderr now.
|
|
swig -version also displays to stdout instead of stderr now.
|
|
Behaviour reported by Torsten Landschoff.
|
|
|
|
02/15/2005: wsfulton
|
|
[Ruby] Fix for the less commonly used ordering of %include and #include, so
|
|
that the generated code compiles. Bug reported by reported by Max Bowsher.
|
|
%include foo.h
|
|
%{
|
|
#include foo.h
|
|
%}
|
|
|
|
02/15/2005: wsfulton
|
|
[C#, Java] SWIG_exception macro will now return from unmanaged code / native code
|
|
as soon as it is called. Fixes possible JVM crashes and other code unexpectedly
|
|
being executed. Note SWIG_exception is only occasionally used by SWIG library
|
|
writers, and is best avoided by SWIG users.
|
|
|
|
02/15/2005: wsfulton
|
|
[C#, Java] Typemaps can now be targeted at global variable names
|
|
and static member variable names. Previously the typemaps for
|
|
the setters were ignored, for example:
|
|
|
|
%typemap(in) int globalint "..."
|
|
int globalint;
|
|
|
|
02/13/2005: mkoeppe (Matthias Koeppe)
|
|
[Guile] Add %typecheck for SWIGTYPE, add %typecheck for ptrdiff_t, fix
|
|
typemaps for size_t.
|
|
|
|
[Pike] Merge patch from Torsten Landschoff for improved Pike configuration.
|
|
|
|
02/12/2005: mkoeppe (Matthias Koeppe)
|
|
New configure switches --without-tcl, --without-python etc. allow to
|
|
disable the search for installed languages.
|
|
|
|
01/31/2005: wuzzeb (John Lenz)
|
|
- Add DohSortList to DOH
|
|
|
|
- Improve the runtime type system:
|
|
+ Speed. Type loading is now O(n log n) instead of O(N^2), which
|
|
for large modules is a huge improvement.
|
|
+ A whole bunch of functions in swigrun.swg no longer need the
|
|
swig_type_list_handle passed to them. The only one left is
|
|
TypeQuery. This also makes runtime.swg a lot smaller.
|
|
+ Split up swig_type_info structure into two structures
|
|
(swig_type_info and swig_cast_info)
|
|
+ Store a pointer to a swig_type_info rather than just the type
|
|
name string in the linked list of casts. First off, this makes
|
|
the guile module a little faster, and second, the
|
|
SWIG_TypeClientData() function is faster too.
|
|
+ Add the idea of a module into the type system. Before, all the
|
|
types were stored in one huge linked list. Now, another level is
|
|
added, and the type system stores a linked list of modules, each
|
|
of which stores an array of types associated with it.
|
|
+ For more information of how the runtime type system now works,
|
|
please see Doc/Manual/typemaps.html and Doc/Devel/runtime.txt
|
|
|
|
- Update all language modules to use the new type system. The changes
|
|
to each language module are minor. All languages are now able to
|
|
use runtime.swg for external access to the type system. Before
|
|
only python and perl did.
|
|
|
|
- [guile, mzscheme, ocaml, and php4] These languages opened up the
|
|
init function inside the .cxx code, and any code in the .swg files
|
|
in the init section was inside this function. This was a problem
|
|
for swiginit.swg, which needs to be inserted before the SWIG_init
|
|
function is opened. Thus I changed these languages to be like
|
|
python or perl, where the init function is declared in the .swg
|
|
file.
|
|
|
|
- [Ruby] Instead of moving the init function to the .swg file, I
|
|
added a new section initbeforefunc, and then added
|
|
%insert(initbeforefunc) "swiginit.swg"
|
|
|
|
- [MzScheme] Fix enums and fix Examples/Makefile.in so that if
|
|
multiple -I arguments are specified in the INCLUDES variable, each
|
|
gets a ++ccf.
|
|
|
|
- [Guile GH] Update Guile GH to use the new type system. See
|
|
Doc/Manual/Guile.html for how smobs are now used.
|
|
|
|
01/11/2005: wsfulton
|
|
[C#] New typemap called 'csconstruct'. The code in this typemaps was previously hard
|
|
coded and could not be customised by a user. This typemap contains the code that is
|
|
generated into a proxy class's constructor.
|
|
|
|
[Java] New typemap called 'javaconstruct'. The code in this typemaps was previously hard
|
|
coded and could not be customised by a user. This typemap contains the code that is
|
|
generated into a proxy class's constructor. Another typemap named 'javaconstruct_director'
|
|
is used instead when the proxy class is a director class.
|
|
|
|
[C#, Java] If a C++ class did not have a default constructor, a protected default constructor
|
|
was automatically generated by SWIG. This seems is unnecessary and has been removed
|
|
and thereby giving the user almost complete control over the generated code along with the
|
|
new typemaps above.
|
|
|
|
19/12/2004: mmatus
|
|
[Disabled, see entry 02/15/2004]
|
|
- Fix typemap search, now the "out" typemap search is done as follows
|
|
|
|
int *Foo::foo(int bar) -> int *Foo::foo(int bar)
|
|
-> int *Foo::foo
|
|
-> int *foo(int bar)
|
|
-> int *foo
|
|
-> int *
|
|
|
|
then, now you can be more specific, and define
|
|
|
|
/* apply only for 'Foo::foo' method */
|
|
%typemap(out) int * Foo::foo(int *bar) ...;
|
|
|
|
/* apply for all 'foo' functions/methods */
|
|
%typemap(out) int * foo(int *bar) ...;
|
|
|
|
%inline {
|
|
struct Foo {
|
|
int *foo(int *bar);
|
|
};
|
|
}
|
|
|
|
|
|
15/12/2004: mmatus
|
|
- More fixes for templates and template default args.
|
|
See template_default.i for scary cases that now are
|
|
supported, besides the already ugly STL/std cases.
|
|
|
|
- Cosmetics and more use of 'const' where it was implicit.
|
|
- Other fixes for OSS, which is now working again with 1.3.25.
|
|
|
|
|