| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
parsed.
For D, this fixes a segfault in SWIG.
Java, C#, D, Go now produce code that compiles, although the definition of the
enum is needed in order to use the enum properly from the target language.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Only a Python True or False will now work for C++ bool parameters.
This fixes overloading bool with other types.
|
|
|
|
|
|
|
|
|
| |
Fixes problem with method overloading when some methods are added by %extend
and others are real methods and using template default parameters with smart pointers.
This is noticeable as a regression since 2.0.12 when using the default smart pointer
handling for some languages when the smart pointer wraps std::map and other STL containers.
Fixes SF Bug 1363
|
|
|
|
|
|
|
|
|
|
|
| |
variable on the 'cvar' object.
The exception thrown used to be a NameError. However, as this access is
via a primary, an AttributeError is more correct and so the exception
thrown now is an AttributeError. Reference:
http://docs.python.org/2/reference/expressions.html#attribute-references
SF Patch #346.
|
|
|
|
|
| |
Using type() on a builtin type should include the package and module
name, see http://docs.python.org/2/c-api/typeobj.html
|
| |
|
| |
|
|
|
|
|
| |
The features need to be merged in before issuing a warning as
%warnfilter is a %feature.
|
| |
|
|
|
|
| |
warnings (previously Go and R were missing).
|
| |
|
|
|
|
|
|
|
|
|
| |
and newer (and some missing ones from 5.3). Reserved PHP constants
names are now checked against enum values and constants, instead
of against function and method names. Built-in PHP function names
no longer match methods added by %extend. Functions and methods
named '__sleep', '__wakeup', 'not', 'parent', or 'virtual' are no
longer needlessly renamed.
|
| |
|
|
|
|
|
|
|
| |
Bug reported was incorrect renaming of PHP built-in functions, such as
next. See PHPFN in phpkw.swg.
Add some tests for the %rename predicates.
|
|
|
|
|
| |
A number of fixes committed since 2.0.11 release were intended for the
3.0.0 release were backported to the maintenance-2.0 branch for 2.0.12.
|
|
|
|
|
|
| |
segfaulting Python
Patch #137
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
expansion
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* diorcety-typedef-prefix:
Modify typedef_typedef testcase to work for all languages
Add test for checking prefix resolving in typedef
Typedef typedef prefix test for templates
Resolve prefix when resolving typedef
Conflicts:
CHANGES.current
|
| |
| |
| |
| |
| |
| | |
Add CHANGES note
Closes #112.
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
| |
Fix and document the naturalvar feature override behaviour - the naturalvar
feature attached to a variable name has precedence over the naturalvar
feature attached to the variable's type. The overriding was not working
when turning the feature off on the variable's name.
Fix so that any use of the naturalvar feature will override the global
setting. Previously when set globally by -naturalvar or %module(naturalvar=1),
use of the naturalvar feature was not always honoured.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was previously possible to assign "hello" to a variable backed by char[5]
storage in C, and the array contained the correct character data but without
the trailing NUL, which was unexpected in C.
This is not allowed any more, only "helo" can fit into a char[5] now and
anything else fails the type check, just as it already happened for the longer
strings before.
Closes #122
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use the usual C rule for NUL-terminated strings instead of discarding all the
trailing NUL characters.
This was unexpected (as buffers in C code are not necessarily always padded
with NULs to their full length) and also inconsistent among languages as this
was only done for those of them using typemaps/strings.swg but not for C# or
Java, for example, which terminated the string at the first NUL even before
this change.
Notice that this patch couldn't use strlen() or wcslen() with possibly not
NUL-terminated strings, so we had to add [our own equivalents of] strnlen()
and wcsnlen() and use them instead. This required adding yet another parameter
to string typemap macros, so update the example using them accordingly too.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The erase and insert methods in the containers use const_iterator instead
of iterator in C++11. There are times when the methods wrapped must match
the parameters exactly. Specifically when full type information for
template types is missing or SWIG fails to look up the type correctly,
for example:
%include <std_vector.i>
typedef float Real;
%template(RealVector) std::vector<Real>;
SWIG does not find std::vector<Real>::iterator because %template using
typedefs does not always work and so SWIG doesn't know if the type is
copyable and so uses SwigValueWrapper<iterator> which does
not support conversion to another type (const_iterator). This resulted
in compilation errors when using the C++11 version of the containers.
Closes #73
|
|
|
|
| |
examples or testsuite.
|
| |
|
| |
|
|
|
|
| |
into executable, rather than using a shared library.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
changed to be consistent with other languages. The typemaps
provided by SWIG have been updated accordingly, but if you
have written your own directorout typemaps, you'll need to
update $input to &$input (or make equivalent changes).
*** POTENTIAL INCOMPATIBILITY ***
|
|
|
|
| |
Mention the target languages affected.
|
|
|
|
|
|
|
| |
These typemaps are currently defined for C#, Java and Python only and the
tests are provided only for these languages.
Also add a brief description of the new header to the documentation.
|
| |
|