* luav-master:
Doc corrections for %shared_ptr and enhancements for %inline
Library docs chapter tweaks
%rename for functions with default parameters explained, see #1087
%shared_ptr usage for the templates documented, see #1049
Includes inside %inline block documented, see #1068
Choose compile time failures over runtime errors.
This change highlighted a problem in the constructor wrappers for tp_init
where the kwargs parameter was missing in the generated wrapper function.
Leave casts in for 0 initialization.
* cpp11-ref-qualifiers:
Warnings in testcases fix
Add support for %typemap and member function pointers with qualifiers
Fix wrapping of some member function pointer parameters
Add support for member function pointers with ref-qualifiers
Add error for constructors, destructors, static methods declared with qualifiers
Add support for conversion operators with ref-qualifiers
Alternate function syntax parsing improvement
Re-organise parser grammar for initializer rules
Re-organise parser grammar for declarator and initializer rules
Add docs for C++11 ref-qualifiers
Add unignore for rvalue ref-qualifiers
Improve ref-qualifier implementation
Fix support for member const function pointer variables
Use normal SWIG encodings for ref-qualifiers
C++11 ref-qualifier support added
Travis is now testing on Ubuntu Trusty by default instead of Ubuntu
Precise. SWIG wrappers need some work for this environment.
Travis build failure: https://travis-ci.org/swig/swig/jobs/273885208
Issue #971
Step 1 to make these closer to the definitions used in the standard.
The initializer rule should not include qualifiers and exception specification.
- split cpp_const into add qualifiers_exception_specification and empty rules
- simplify initializer to use new qualifiers_exception_specification rule
Use std::move on this pointer as the default approach to supporting
rvalue ref-qualifiers if a user really wants to wrap.
std::move requires <memory> headers so add swigfragments.swg for all
languages to use common fragments. Just header file fragments for now.
Internally, handle function ref-qualifiers in the function decl type string.
Needed for a whole host of things to work like %feature and %rename.
Add %feature %rename and %ignore testing for ref-qualifiers.
Was not generating code that compiled when the variable was not
a simple member pointer, for example,
a const reference member pointer:
short (Funcs::* const& cc7)(bool) const = cc1;
Fixes#1059
Methods with rvalue ref-qualifiers are ignored by default as it is not
possible to have an rvalue temporary from the target language (which is
needed to call the rvalue ref-qualified method).
A warning 405 is shown mentioning the ignored rvalue ref-qualifier method
which can be seen with the -Wextra option.
cpp_refqualifier.i:15: Warning 405: Method with rvalue ref-qualifier ignored h() const &&.
Usually rvalue and lvalue ref-qualifier overloaded methods are written - the
lvalue method will then be wrapped.