Don't skip checking subsequent arguments just because one of them has "in"
typemap with numinputs=0 attribute.
Add a unit test showing the problem which is relatively rare as it doesn't
happen for the class methods and is hidden unless autodoc feature is used for
the global functions.
Closes#377.
Also fixes: "SystemError: error return without exception set" during error checking
when using just -builtin and the incorrect number of arguments is passed to a class
method expecting zero arguments.
Closes#256Closes#382
Use "compact" arguments form for the function if "default" typemap is defined
for any of its arguments to allow omitting this argument when calling it from
Python.
Closes#377.
Accept not only manifest pointer types (such as e.g. "void *") but also types
that are typedefs for pointer types when checking whether C++ value of 0 must
be represented as 0 or None in Python.
Closes#365, #376.
* amaeldoe-master:
Add python runtime test for dynamically added attributes
Attribute of SWIG wrapped classes instances were overwritten on __init__()
Fix SwigPyObject->dict memory leak
Make __dict__ accessible for Python builtin classes
Attribute set within instance of a SWIG Python wrapped class are
stored in SwigPyObject->dict, which tp_dictoffset slot is pointing to.
However, SWIG wrapped classes did not have a __dict__ attribute.
Inheriting subclasses did not get the attribute either because the
SWIG wrapped classes initialize the tp_dictoffset slot:
From http://bugs.python.org/issue16272:
"If a type defines a nonzero tp_dictoffset, that type is responsible for
defining a `__dict__` slot as part of the tp_getset structures. Failure to
do so will result in the dict being inaccessible from Python via
`obj.__dict__` from instances of the type or subtypes."
Provide a SwigPyObject_get___dict__() function to retrieve the dict
attribute or create it when it does not exist yet (it is normally
created when setting attribute set), and a PyGetSetDef entry pointing
to this function.
In future releases of Go it will not be possible to pass Go pointers
into C/C++ code. The handle is automatically translated back to the
Go value using a Go map. Since directors must be explicitly deleted,
we can reliably use that call to remove the handle from the map.
* stricter-warnings:
Go changes for wrappers to compile as ISO C90
Scilab typecheck typemaps fix for C90
No error for one Javascript node warning
Warning fix in testcase for Javascript node
nested_extend_c testcase fix when compiled by C++ target languages
Temporarily remove -Werror for Scilab testing
C90 fixes for Javascript JSC
There are a couple of testcases that aren't compliant and supression via pragmas doesn't work for gcc < 4.8
Warning suppression change
Scilab typemap fixes for C89
compiler warning suppression correction in testcase
Suppress pedantic warnings in C# testcases
Suppress pedantic warnings in testcases
Pedantic warning fix in testcase
pedantic warning fix for D wrappers
Travis testing to use testflags.py for setting CFLAGS and CXXFLAGS
Add travis build for error-declaration-after-statement branch
longer as of Go 1.5. In Go 1.5 or later user calls to
_swig_makegostring will fail at link time.
Instead, use goout and godirectorin typemaps to allocate strings in Go
code.
Change the Go typemaps support to ignore empty strings, so that we can
define empty strings for regular types so that %apply will override
the definitions for string types.
Fix the gccgo code to wrap SwigCgoCallback around all godirectorin
typemaps.
Add a few newlines after typemap code so that the typemaps don't have
to include them.
for the one from _swig_makegostring. _swig_goallocate can not work
with the future Go 1.5 release. When using Go 1.5 attempts to call
_swig_goallocate will fail at link time.
publicly visible. This permits linking together different SWIG
wrappers in the same program if they wrap the same function. The
unique name is generated by hashing the .swig file.
Setting properties on classic classes was broken in swig-3.0.3 by attempting to use __setattr__. This regression is fixed now by using __dict__ again when using -classic.
Fixes patch #232.