Commit #c3f3880d caused the functions
SWIGINTERN int SWIG_Lua_add_namespace_details(lua_State* L,
swig_lua_namespace* ns)
and
SWIGINTERN int SWIG_Lua_namespace_register(lua_State* L,
swig_lua_namespace* ns)
to return void when int returns were expected resulting in the build
failures for plplot's lua bindings for example. This commit fixes the
issue.
Closes#92
* wkalinin-nested-ignore:
Restore warning suppression in testcase
Typo in comment fix
warnings suppressed for deeply nested classes
nested nested class warning filtered
warning filter fixed
error order foxed
WARN_PARSE_UNNAMED_NESTED_CLASS check fixed
more warnings removed
warnfilter fixed scoping for "anonymous forward declaration" fixed
%feature ("flatnested") is set for nested scope test
added forward declaration instead of ignored nested class (resurrected old code)
filtered warnings, turned on "flatnested" for nested template test
Nested classes support is diversified, depending on the language capability. If the language cannot support nested classes, they will be unconditionally moved to the global namespace. If language module does not override Language::nestedClassesSupport() function, nested classes will be ignored, unless "feature:flatnested" is used.
* 'master' of https://github.com/gjanssens/swig:
Guile: make scm to string conversion work with non-ascii strings
Guile: illustrate bug in non-ascii string handling
clang++ using -stdlib=libc++ defines const_reference as a class,
to map boolean vectors onto a bit set. Because swig does
not "see" the type as "const &" it generates incorrect code for this case,
generating a declaration like:
const_reference result;
When const_reference is a typedef to 'bool' as is the case with stdlibc++
this works. When this is actually a constant reference, this is clearly
invalid since it is not initialized. For libc++, this is a class
which cannot be default constructed, resulting in an error. The fix
is to explicitly define the various accessor extensions as having a
bool return type for this specialization.
Generated code does not include <string>, which is referenced in templates.
Clang may be incorrectly or aggresively instantiating some template.
E.g.,
import_stl_b_wrap.cxx:3199:51: error: implicit instantiation of undefined template 'std::__1::basic_string<char, std::__1::char_traits<char>
Certain tests have empty structs or classes.
This encounters a bug with clang: http://llvm.org/bugs/show_bug.cgi?id=16764
This is fixed in later versions of clang, but not the version
currently bundled with Mavericks and XCode 5
The commit 40bf877 fixed warnings about converting between function and object
pointers but introduced warnings about breaking strict-aliasing rules which
appear with -Wstrict-aliasing which is implicitly enabled by -O2.
Avoid these warnings as well by using an intermediate union for conversion
instead of casts trickery.
Use makefiles instead of a make.sh script
Expected results are in individual .stderr files instead of the expected.log file
Add errors test-suite to Travis testing and 'make check'
* 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