Commit graph

20,934 commits

Author SHA1 Message Date
William S Fulton
fa65b24b78 Add stddef.h back in to SwigPySequence_Base fragment 2017-03-17 19:20:02 +00:00
William S Fulton
da381668a2 Python doc correction for %pybuffer_mutable_string usage
[skip ci]
2017-03-17 19:02:38 +00:00
William S Fulton
dcc5911839 Fix handling of typedef'd function pointers for Go
Add equivalent runtime tests for Python and Java
2017-03-17 07:49:21 +00:00
William S Fulton
72ba741d1c Fix wrapping of references/pointers and qualifiers to member pointers
Also fix Go wrapping of member const function pointers.
2017-03-16 21:04:38 +00:00
Vadim Zeitlin
bf11d5ee7a Don't hardcode C# type corresponding to size_t in vector typemaps
The C# type corresponding to size_t may be changed by redefining its "cstype"
type typemap, but this broke compilation of the code using std::vector<> as
the typemap generating it assumed that size_t was always represented by uint
in C#. Make this work in all cases by explicitly looking up cstype of size_t
instead.

Notice that it may be quite useful, and even necessary, to map size_t to int
as when generating C# assembly for use with COM, via .NET interop, as some COM
clients, notably VBA-using ones, including all Microsoft Office applications,
don't support unsigned types and can't call methods using or returning uint in
C# at all.
2017-03-15 23:17:03 +01:00
Vadim Zeitlin
51aa2bdea1 Fix dependency of SwigPySequence_Base fragment
This fragment needs to depend on StdTraits fragment as it specializes the
template struct traits<> defined there and it could happen that the struct was
not declared before being specialized, resulting in compilation errors in the
generated code.

It doesn't seem to need to depend on stddef.h inclusion, however, so replace
it with the correct dependency instead of keeping both.
2017-03-11 18:07:51 +01:00
William S Fulton
cf7d53599c Remove problematic member function pointer tests from Go
Go module needs fixing
2017-03-11 15:05:16 +00:00
William S Fulton
858acf69e4 Add missing function bodies to testcase 2017-03-11 12:43:54 +00:00
William S Fulton
73a5d6c187 Fix testcase 2017-03-11 10:01:11 +00:00
William S Fulton
f9fbaa5cb8 Another C++11 alternate function syntax test 2017-03-10 23:48:32 +00:00
William S Fulton
d851be2b7f Add recent parsing improvements to changes file 2017-03-10 23:34:48 +00:00
William S Fulton
b851e45e0a Fix seg fault for global declarations declared erroneously without a name 2017-03-10 23:25:31 +00:00
William S Fulton
4f235027f4 Improved member function pointer parsing
Add support for parsing member function pointers with qualifiers,
references and pointers, eg

short (Funcs::* const parm)(bool)
2017-03-10 23:25:31 +00:00
William S Fulton
8e86aaf2c3 Add one more alternate function test
Checking member function pointer parameters
2017-03-10 23:25:31 +00:00
William S Fulton
0ccef1424a C++11 alternate syntax for function declarations improvements
Functions can now be declared const/noexcept/final etc
2017-03-10 23:25:31 +00:00
William S Fulton
2a5068bcf2 Add some tests for typedef to member function pointers 2017-03-10 23:25:31 +00:00
William S Fulton
fc638814ae Add support for unnamed parameters: member const function pointers 2017-03-10 23:25:31 +00:00
William S Fulton
5aff26fcb5 Add support for parsing and wrapping member const function pointers 2017-03-10 23:25:31 +00:00
William S Fulton
67edda3bf5 Remove unused cvsignore target 2017-03-10 23:25:31 +00:00
Karl Wette
11ca71fc91 [CI] Fix Octave 4.2 CI job
- Travis adds external PPAs which contain newer versions of packages
  than in baseline trusty. These newer packages prevent some of the
  Octave packages in ppa:kwwette/octave, which rely on the older
  packages in trusty, from installing. To prevent these kind of
  interactions arising, clean out all external PPAs added by Travis
  before installing Octave.
2017-03-09 20:18:11 +01:00
Takashi Tamura
cb1f89cb68 [ruby] must not do a null check for VALUE. 2017-03-07 11:43:01 +09:00
Mark Dufour
5803e81d48 Fix Coverity issue reported for setslice (pycontainer.swg):
"CID 11151 (#3-1 of 3): Using invalid iterator (INVALIDATE_ITERATOR)18.
increment_iterator: Incrementing iterator it though it is already past
the end of its container."

Coverity does not understand 'replace_count', so warns that we may go
past self->end() (or self->rend() I guess).
2017-03-06 21:16:41 +01:00
Mark Dufour
13eeebd2fb [Coverity] fix issue reported for wrapper argument checking
Fix Coverity issue reported for wrapper argument checking:

"Null-checking args suggests that it may be null, but it has already
been dereferenced on all paths leading to the check."

So 'args' is null checked, but after dereferencing it with
PyTuple_Check(args).
2017-03-06 14:07:47 +01:00
Takashi Tamura
d0af6fd97d [ruby] must not do null check for VALUE obj, which can be 0x0 == Qfalse, a valid Ruby object. 2017-03-06 15:13:05 +09:00
Takashi Tamura
b91e03d39a [ruby] add tests for shared_ptr of const Type. 2017-03-03 16:58:51 +09:00
Takashi Tamura
f96c2ad73d [ruby] For swig::from, use template specialization to convert shared_ptr<const T> to shared_ptr<T>. 2017-03-03 12:50:23 +09:00
Takashi Tamura
806f49bf58 [ruby] edit comments [skip ci] 2017-03-02 11:55:09 +09:00
Takashi Tamura
a784ace983 [ruby] move template specialization to std_shared_ptr.i. 2017-03-02 09:47:46 +09:00
Todd Leonhardt
bcf8d927f0 Finished updating Python docs for -threads option 2017-03-01 17:51:47 -05:00
Olly Betts
b451fc464b Escape literal > in HTML 2017-03-02 08:45:45 +13:00
Takashi Tamura
a84ea749b3 [ruby] add tests for upcasting std::shared_ptr within std containers. 2017-03-01 21:32:03 +09:00
Takashi Tamura
50e495c453 [ruby] use template specialization for swig::asptr,asval functions on std:shared_ptr. 2017-03-01 20:17:50 +09:00
Todd Leonhardt
52d12bc415 Started making changes to Python.html to document support for multithreaded Python SWIG applications. 2017-02-28 20:53:30 -05:00
Olly Betts
35e6414099 Add CHANGES.current entry for #908
Fixes #905
2017-02-27 10:11:27 +13:00
Asen Alexandrov
a6e9c087d8 [Issue 905] Add recognition for throw (.+) final|override in parser.y
PROBLEM:
 There is a small ommission in parser.y, which will lead
 to syntax errors in cases when non-empty throw declaration is
 followed by `override`, `final` or both. E.g. in cases like:

       void finalOverriden() throw(std::exception) final override;

SOLUTION:
 - Add a `THROW LPAREN parms RPAREN virt_specifier_seq` to
   exception_specification in Source/CParse/parser.y
 - Add several methods in test-suite/cpp11_final_override.i
   to verify the fix works.
2017-02-27 10:08:23 +13:00
Takashi Tamura
a02b7810bc [ruby] add a test to make sure that std::multiset is including Enumerable. 2017-02-26 22:12:39 +09:00
Takashi Tamura
b525848063 [ruyb] enable std::list test for Ruby. 2017-02-26 07:17:33 +09:00
Takashi Tamura
c88b9e8777 [ruby] make std::list include Enumerable. 2017-02-25 16:08:21 +09:00
Takashi Tamura
b8d383cb4a [ruby] add simple assertions. 2017-02-25 15:44:49 +09:00
Takashi Tamura
9f43082786 [ruby] make std::multiset and std::unordered_multiset include Enumerable. tests added. 2017-02-24 16:59:17 +09:00
Takashi Tamura
005e129287 [ruby] make std::unordered_map include Enumerable. 2017-02-24 16:59:17 +09:00
Takashi Tamura
4f31f5d0a3 [ruby] use %fragment to clarify the dependency of code. 2017-02-23 21:08:04 +09:00
Takashi Tamura
04a7c4f8b8 [ruby] should initialize static variables inside %init{}, in which it will not be
excuted concurrently by multiple threads.
2017-02-22 12:25:27 +09:00
Olly Betts
eeff677c72 [CI] Fix ocaml job to actually run
Fixes #912, reported by Karl Wette.
2017-02-22 10:13:11 +13:00
Takashi Tamura
e7eece9bcd [ruby] * use static variable to avoid creating stirngs every time.
* fix possible overflow.
2017-02-21 21:25:14 +09:00
Olly Betts
5498955931 [CI] Fix octave 4.2 CI job to actually still run
Fix pointed out by Karl Wette in #909.
2017-02-21 11:13:43 +13:00
Takashi Tamura
89695255e6 [ruby] add std::wstring tests for string including a null terminator. 2017-02-20 17:49:17 +09:00
Takashi Tamura
4009da3588 [ruby] * rewrite SWIG_AsWCharPtrAndSize and SWIG_FromWCharPtrAndSize
* use UTF-32LE and UTF-16LE to avoid BOM
       * add tests
2017-02-20 17:00:52 +09:00
Olly Betts
09edd722e1 [CI] Mark Octave 4.2 build as "allowed to fail"
It's started to reliably fail at package install time.  See #909.
2017-02-20 09:49:00 +13:00
Takashi Tamura
5722d81a09 [ruby] use WCHAR_MAX to determine the encoding of std::wstring. 2017-02-19 15:57:34 +09:00