diff options
author | Karl Wette <karl.wette@ligo.org> | 2017-01-22 11:53:12 +1300 |
---|---|---|
committer | Karl Wette <karl.wette@ligo.org> | 2017-01-22 11:53:12 +1300 |
commit | e24ec4089585f38b01ac2e73f1c7ddf5e6862341 (patch) | |
tree | 3821c376c808a640b96cf67086e9882c1e69772d /Lib/typemaps | |
parent | 52455b81d2018dad46eae587be1c7ddfd35750c4 (diff) | |
download | swig-e24ec4089585f38b01ac2e73f1c7ddf5e6862341.tar.gz |
Octave: add support for version 4.2
- .travis.yml:
- ppa:kwwette/octaves has Octave version 4.2, also run C++11 tests
- configure.ac:
- prefer Octave program "octave-cli" to "octave"
- extract any -std=* flags from CXX, add to OCTAVE_CXXFLAGS
- Lib/typemaps/fragments.swg:
- SWIG_isfinite_func(): extern "C++" is required as this fragment can
end up inside an extern "C" { } block
- Lib/octave:
- add std_wstring.i (copied from std_string.i) for C++11 tests
- Lib/octave/octrun.swg:
- move Octave version-checking macros to octruntime.swg
- Octave single()/double() functions now call .as_single()/.as_double()
methods; redirect calls to __float__() method as per .scalar_value()
- << and >> operators are no longer supported by Octave
- Lib/octave/octruntime.swg:
- move Octave version-checking macros here for conditional #includes
- #include interpreter.h instead of #toplev.h
- #include call-stack.h (now needed for octave_call_stack)
- unwind_protect is now in octave:: namespace
- error_state and warning_state are deprecated; use try/catch to catch
errors in feval() instead
- always set octave_exit = ::_Exit, to try to prevent segfault on exit
- Lib/octave/octopers.swg:
- << and >> operators are no longer supported by Octave
- Lib/octave/exception.i:
- Add macro SWIG_RETHROW_OCTAVE_EXCEPTIONS which rethrows any
exceptions raised by Octave >= 4.2
- Examples/test-suite/exception_order.i:
- Use macro SWIG_RETHROW_OCTAVE_EXCEPTIONS to rethrow exceptions
raised by error() function in Octave >= 4.2
- Update Doc/Manual/Octave.html and CHANGES.current
Diffstat (limited to 'Lib/typemaps')
-rw-r--r-- | Lib/typemaps/fragments.swg | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Lib/typemaps/fragments.swg b/Lib/typemaps/fragments.swg index f89a16e8b..3f33ca98d 100644 --- a/Lib/typemaps/fragments.swg +++ b/Lib/typemaps/fragments.swg @@ -177,9 +177,11 @@ * versions. * * Make sure namespace std exists to avoid compiler warnings. + * + * extern "C++" is required as this fragment can end up inside an extern "C" { } block */ namespace std { } -template<typename T> +extern "C++" template<typename T> inline int SWIG_isfinite_func(T x) { using namespace std; return isfinite(x); |