*** empty log message ***

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@770 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Thien-Thi Nguyen 2000-08-31 19:27:42 +00:00
commit c2956274ae

View file

@ -3,6 +3,12 @@ SWIG (Simplified Wrapper and Interface Generator)
Version 1.3 Alpha 4 (not yet released) Version 1.3 Alpha 4 (not yet released)
====================================== ======================================
8/31/00 : ttn
Added Makefile target `check-c++-examples', which uses new
files under Examples/C++ contributed by Tal Shalif. Now "make
check" also does "make check-c++-examples". Also, expanded
actions in `check-gifplot-example' and `check-aliveness'.
8/30/00 : mkoeppe 8/30/00 : mkoeppe
Major clean-up in the Guile module. Added typemap-driven Major clean-up in the Guile module. Added typemap-driven
documentation system. Changed to handle more than 10 documentation system. Changed to handle more than 10
@ -14,7 +20,7 @@ Version 1.3 Alpha 4 (not yet released)
into a portion of the output wrapper file. This is only intended into a portion of the output wrapper file. This is only intended
for use by writers of language modules. Works as follows: for use by writers of language modules. Works as follows:
%insert(headers) "file.swg"; %insert(headers) "file.swg";
%insert(runtime) "file.swg"; %insert(runtime) "file.swg";
%insert(wrappers) "file.swg"; %insert(wrappers) "file.swg";
%insert(init) "file.swg"; %insert(init) "file.swg";
@ -24,17 +30,17 @@ Version 1.3 Alpha 4 (not yet released)
8/29/00 : beazley 8/29/00 : beazley
Added new %runtime directive which includes code into the runtime Added new %runtime directive which includes code into the runtime
portion of the wrapper code. For example: portion of the wrapper code. For example:
%runtime %{ %runtime %{
... some internal runtime code ... ... some internal runtime code ...
%} %}
There is no practical reason for ordinary users to use this There is no practical reason for ordinary users to use this
feature (almost everything can be done using %{ ... %} feature (almost everything can be done using %{ ... %}
instead). However, writers of language modules may want to instead). However, writers of language modules may want to
use this in language configuration files. use this in language configuration files.
*** NEW FEATURE *** *** NEW FEATURE ***
======= end of combination ======= end of combination
8/28/00 : beazley 8/28/00 : beazley
Typemaps can now be specified using string literals like Typemaps can now be specified using string literals like
@ -48,7 +54,7 @@ Version 1.3 Alpha 4 (not yet released)
code string so if you want to include a quote or some code string so if you want to include a quote or some
other special character, make sure you use a (\). other special character, make sure you use a (\).
*** NEW FEATURE *** *** NEW FEATURE ***
8/27/00 : beazley 8/27/00 : beazley
Typemaps have been modified to follow typedef declarations. Typemaps have been modified to follow typedef declarations.
For example, if you have this: For example, if you have this:
@ -73,7 +79,7 @@ Version 1.3 Alpha 4 (not yet released)
%typemap(in) int SWIG_DEFAULT_TYPE { %typemap(in) int SWIG_DEFAULT_TYPE {
... ...
} }
To specify the default handling of a datatype. Now that To specify the default handling of a datatype. Now that
SWIG follows typedef declarations, this is unnecessary. SWIG follows typedef declarations, this is unnecessary.
Simply specifying a typemap for 'int' will work for all Simply specifying a typemap for 'int' will work for all
@ -84,7 +90,7 @@ Version 1.3 Alpha 4 (not yet released)
different. This must be done as follows: different. This must be done as follows:
%typemap() SWIGPOINTER * { %typemap() SWIGPOINTER * {
... a pointer ... ... a pointer ...
} }
%typemap() SWIGREFERENCE & { %typemap() SWIGREFERENCE & {
... a reference ... ... a reference ...
@ -111,7 +117,7 @@ Version 1.3 Alpha 4 (not yet released)
1. Typemap scoping is currently broken. Because of this, the 1. Typemap scoping is currently broken. Because of this, the
following code won't work. following code won't work.
%typemap(in) blah * { %typemap(in) blah * {
... ...
} }
class Foo { class Foo {
@ -124,18 +130,18 @@ Version 1.3 Alpha 4 (not yet released)
generated after the entire interface file has been processed). generated after the entire interface file has been processed).
This is only a temporary bug. This is only a temporary bug.
2. In SWIG1.1, the %apply directive worked by performing a 2. In SWIG1.1, the %apply directive worked by performing a
very complex type-aliasing procedure. From this point on, very complex type-aliasing procedure. From this point on,
%apply is simply a generalized typemap copy operation. %apply is simply a generalized typemap copy operation.
For example, For example,
%apply double *OUTPUT { double *x, double *y }; %apply double *OUTPUT { double *x, double *y };
Copies *ALL* currently defined typemaps for 'double *OUTPUT' and Copies *ALL* currently defined typemaps for 'double *OUTPUT' and
copies them to 'double *x' and 'double *y'. copies them to 'double *x' and 'double *y'.
Most people probably won't even notice this change in Most people probably won't even notice this change in
%apply. However, where it will break things is in code like %apply. However, where it will break things is in code like
this: this:
%apply double *OUTPUT { double *x }; %apply double *OUTPUT { double *x };
@ -152,7 +158,7 @@ Version 1.3 Alpha 4 (not yet released)
after the %apply directive. after the %apply directive.
3. The %clear directive has been modified to erase all currently 3. The %clear directive has been modified to erase all currently
defined typemaps for a particular type. This differs from defined typemaps for a particular type. This differs from
SWIG1.1 where %clear only removed rules that were added using SWIG1.1 where %clear only removed rules that were added using
the %apply directive. the %apply directive.
@ -166,7 +172,7 @@ Version 1.3 Alpha 4 (not yet released)
arrays, and references. For example: arrays, and references. For example:
%typemap(in) double * { } %typemap(in) double * { }
used to apply to 'double &', 'double []', Now, it only applies used to apply to 'double &', 'double []', Now, it only applies
to 'double *'. If you want a 'double &', you'll need to handle to 'double *'. If you want a 'double &', you'll need to handle
that separately. that separately.
@ -174,7 +180,7 @@ Version 1.3 Alpha 4 (not yet released)
5. Array matching has been simplfied. In SWIG1.1, array matching 5. Array matching has been simplfied. In SWIG1.1, array matching
was performed by trying various combinations of dimensions. was performed by trying various combinations of dimensions.
For example, 'double a[10][20]' was matched as follows: For example, 'double a[10][20]' was matched as follows:
double [10][20] double [10][20]
double [ANY][20] double [ANY][20]
double [10][ANY] double [10][ANY]
@ -198,7 +204,7 @@ Version 1.3 Alpha 4 (not yet released)
any temporary files such as _wrap.wrap, _wrap.ii, _wrap.init. any temporary files such as _wrap.wrap, _wrap.ii, _wrap.init.
Instead, these "files" are kept around in memory as strings Instead, these "files" are kept around in memory as strings
(although this is transparent to language moduels). (although this is transparent to language moduels).
8/4/00 : ttn 8/4/00 : ttn
Added Makefile target "check" and variants. Added Makefile target "check" and variants.
This can be used like "make check" or, to explicitly skip a This can be used like "make check" or, to explicitly skip a