Age | Commit message (Collapse) | Author |
|
|
|
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.
|
|
|
|
As given in Diorcet Yann's example in issue #50
|
|
|
|
|
|
These didn't work, were not documented and don't seem necessary
|
|
|
|
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.
|
|
This is broken and needs fixing at some point.
Problem reported by Pierre-Henri Wuillemin on swig-devel mailing list.
|
|
Work around gcc warning about function pointers conversions.
|
|
Work around harmless (at least under POSIX systems where function pointers are
guaranteed to have the same representation as object pointers) but annoying
warnings given by gcc when converting between function and object pointers, e.g.
Source/DOH/fio.c: In function 'DohEncoding':
Source/DOH/fio.c:51: warning: ISO C forbids conversion of function pointer to object pointer type
Source/DOH/fio.c: In function 'encode':
Source/DOH/fio.c:75: warning: ISO C forbids conversion of object pointer to function pointer type
Source/DOH/base.c: In function 'DohCall':
Source/DOH/base.c:952: warning: ISO C forbids conversion of object pointer to function pointer type
Use an extra level of pointer indirection to avoid them.
|
|
|
|
|
|
|
|
Parsing support added. The final and override information is not used or
added to the parse tree atm.
|
|
|
|
fixed enums & enum values language symbol table namespace
fixed skipping of %templates in %extend if they are in the wrong scope
|
|
|
|
|
|
Docs for SFbug1297 patch (PR #7)
closes #111
|
|
|
|
This changeset resolves several issues related to python imports.
For example, it's possible now to import modules having same module
names, but belonging to different packages.
From the user's viewpoint, this patch gives a little bit more control on
import directives generated by swig. The user may choose to use relative
or absolute imports (docs are provided in separate PR).
Some details:
- we (still) generate import directives in form 'import a.b.c' which
corresponds to absolute imports in python3 and (the only available)
ambiguous one in python2.
- added -relativeimport option to use explicit relative import syntax
(python3),
Tests are under Examples/python, these are in fact regression tests but
with the current swig testing framework it seems to be impossible to put
appropriate tests under test-suite.
Closes #7
|
|
|
|
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.
|
|
Exact paths comparison doesn't work when SWIG is built in a directory
different from the source one, so check whether the path just ends with the
expected path components instead.
This allows all Java tests to pass in this build configuration.
closes #115
|
|
Remove redundant #ifdef __cplusplus markers in director.swg
|
|
Also some comment corrections for Perl
|
|
|
|
|
|
into talby--perl5-directors-minimal
* 'perl5-directors-minimal' of https://github.com/talby-/swig:
try adding travis ci to this branch
ran "beautify-file" make target over perl5.cxx patch hunks and rewrote callback and extend examples in the style of existing examples
prefer polymorphism on existing destructor over custom destructor method
fix string mangled by tidy
eliminate dead director code and convert remaining blocks
mitigate ConvertPtr director cost when directors are not enabled
steals python director docs and adapts to perl5
adds "callback" and "extend" examples
don't forget the most important part
steals python directors and adapts to perl5
|
|
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
|
|
|
|
|
|
|
|
go_cpp, rather than in go_run. This permits eliminating go_run_cpp.
|
|
fixed skipping of %templates in %extend if they are in the wrong scope
|
|
WARN_DEPRECATED_NESTED_WORKAROUND test added
WARN_PARSE_NAMED_NESTED_CLASS test removed
|
|
|
|
fixed language symbol table nested classes name separator, test added
fixed %feature "flatnested" working with %extend
fixed Swig_offset_string for empty string
added simple template to save/restore values in current scope (readability reasons)
|
|
examples or testsuite.
|
|
|
|
|
|
|
|
into executable, rather than using a shared library.
|
|
The breaks were fixed in the last couple of commits
|
|
|