'oficially' add fastdispatch option
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7953 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
ca7f770ac1
commit
cef0013285
7 changed files with 215 additions and 10 deletions
|
|
@ -1,6 +1,41 @@
|
|||
Version 1.3.28 (unreleased).
|
||||
===========================
|
||||
|
||||
12/08/2005: mmatus
|
||||
|
||||
- Add the -fastdispatch option (fastdispatch feature). This
|
||||
enable the "fast dispatch" mechanism for overloaded
|
||||
methods provided by Salvador Fandi~no Garc'ia (#930586).
|
||||
|
||||
The resulting code is smaller and faster since less type
|
||||
checking are performed. However, the error messages you
|
||||
get when the overloading is not resolved could be
|
||||
different from what the traditional method returns.
|
||||
|
||||
With the old method you always get an error such as
|
||||
|
||||
"No matching function for overloaded ..."
|
||||
|
||||
with the new method you can also get errors such as
|
||||
|
||||
"Type error in argument 1 of type ..."
|
||||
|
||||
See bug report #930586 for more details.
|
||||
|
||||
So, we let to the user the option to enable this
|
||||
optimization.
|
||||
|
||||
You use this new mechanism as
|
||||
|
||||
swig -fastdispatch
|
||||
|
||||
or using the feature form
|
||||
|
||||
%feature("fastdispatch") method;
|
||||
or
|
||||
%fastdispatch method;
|
||||
|
||||
|
||||
12/06/2005: mmatus
|
||||
|
||||
- Several memory and speed improvements, specially for
|
||||
|
|
@ -12,7 +47,7 @@ Version 1.3.28 (unreleased).
|
|||
pcs/architectures.
|
||||
|
||||
|
||||
- add option "cpperraswarn/nocpperraswarn" to force the swig
|
||||
- add options "cpperraswarn/nocpperraswarn" to force the swig
|
||||
preprocessor to treat the #error directive as a #warning.
|
||||
|
||||
the default behavior is cpperraswarn, so, swig doesn't
|
||||
|
|
@ -45,22 +80,27 @@ Version 1.3.28 (unreleased).
|
|||
|
||||
%module("threads"=1)
|
||||
|
||||
2.- Equivalent to that, is the following swig option
|
||||
2.- Equivalent to that, is the new '-threads' swig option
|
||||
|
||||
swig -threads -python ...
|
||||
|
||||
ie, swig enables thread support for the module.
|
||||
|
||||
3.- You can partially disable thread support for a given
|
||||
method using:
|
||||
|
||||
%feature("nothread") method;
|
||||
or
|
||||
%nothread method;
|
||||
|
||||
also, you can disable sections of the thread support,
|
||||
for example
|
||||
|
||||
%feature("nothreadblock") method;
|
||||
or
|
||||
%nothreadblock method;
|
||||
|
||||
%feature("nothreadallow") method;
|
||||
or
|
||||
%nothreadallow method;
|
||||
|
||||
the first disables the C++/python thread protection, and the
|
||||
second disables the python/C++ thread protection.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue