summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | STL support for copying Python objects supporting Iterator protocolWilliam S Fulton2023-04-011-1/+68
| | | | | | | | | | | | std::array not working though
* | | Merge branch 'js-numinputs'Olly Betts2023-04-273-16/+42
|\ \ \
| * | | try to ninja fix jscMomtchil Momtchev2023-04-261-1/+6
| | | | | | | | | | | | | | | | I don't have access to jsc atm
| * | | take into account numinputs when counting argumentsMomtchil Momtchev2023-04-262-15/+33
| | |/ | |/|
* | | catches_strings_runme.php: Check exact exception messageOlly Betts2023-04-241-2/+2
| | | | | | | | | | | | There's no need to do a substring check here.
* | | [php] Add throws typemaps for string* + const string*Olly Betts2023-04-243-0/+34
| | |
* | | Make typemaps consistently use string::data() vs c_str()Olly Betts2023-04-242-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use c_str() only when we need a terminating zero byte and data() when we don't (as we already did in most cases). The two methods in fact do the same thing as of C++11 (and in practice did for all C++98 implementations I'm aware of) but it's useful to make clear when we need a terminating zero byte and when we don't, for example for adding string_view support (string_view supports data(), but can't support c_str() (since it could be a slice from the middle of a std::string).
* | | [doc] Update sample swig -debug-tags outputOlly Betts2023-04-241-9/+9
|/ / | | | | | | | | The format was changed from that the manual shows in 2010 by 5a3ba0d607132bfe78c5c23b3d8d2694a9250957!
* | Update CHANGES.current for Javascript changesOlly Betts2023-04-231-0/+22
| |
* | [js] Stop using swig -c++ for C examplesOlly Betts2023-04-2322-27/+41
| |
* | [js] Improve default for JSENGINEOlly Betts2023-04-223-17/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the default was always "node", even if nodejs wasn't detected by configure. This leads to a confusing failure from "make check" if you have another support JS engine installed but not node. Now the default it picked based on which engines configure found. If only one was detected, that should be used. If multiple are, you can override the default choice by specifying e.g. ENGINE=jsc on the make command line. Fixes #2453
* | [js] Turn on C++ output for node tooOlly Betts2023-04-222-9/+5
| | | | | | | | | | | | | | | | | | Nodejs is like V8 and needs C++ output enabled when wrapping C code. The testsuite was masking this bug by using SWIG options `-v8 -DBUILDING_NODE_EXTENSION=1` rather than `-node` when testing with nodejs, while the javascript examples currently all seem to all get processed with -c++.
* | Add CHANGES.current entryOlly Betts2023-04-221-0/+8
| |
* | use the renamed name when creating a constantMomtchil Momtchev2023-04-221-2/+1
| |
* | [perl,ruby] Test OUTPUT string& typemapOlly Betts2023-04-212-1/+5
| |
* | [lua] Test INPUT,INOUT,OUTPUT for std::string&Olly Betts2023-04-212-1/+7
| |
* | [php] Support INPUT,INOUT,OUTPUT for std::string&Olly Betts2023-04-214-11/+81
| | | | | | | | | | | | | | By default SWIG/PHP wraps std::string& as a pass-by-reference PHP string parameter, but sometimes such a parameter is only for input or only for output, so add support for the named typemaps that other target languages support.
* | Warnings.html: Add missing warning numbers 472,473Olly Betts2023-04-211-0/+2
| | | | | | | | Fixes #2528
* | Fix CanCastAsInteger if errno is set.Markus Wick2023-04-212-3/+9
| | | | | | | | | | | | | | | | | | | | This method checks if the range of the input variable is fine. However if the errno variable was already set, it fails even for valid inputs. This fixes at least some random failures in the python castmode. Fixes: #2519
* | Add CHANGES.current entry for Ocaml std::string changesOlly Betts2023-04-211-0/+3
| |
* | [ci] Update to latest actions/checkoutOlly Betts2023-04-211-1/+1
| | | | | | | | Should fix "Node.js 12 actions are deprecated" warning.
* | Python: Suggest argcargv.i to handle char**Olly Betts2023-04-212-73/+6
| | | | | | | | | | | | | | | | | | | | | | We were providing an example set of typemaps in the manual, but they were specific to Python2 which isn't helpful these days. For typical cases argcargv.i is a better option. It doesn't currently seem to directly support the "argv without argc" case which this example actually shows, but generally APIs take a length as well as a char**. Closes: #2040
* | C#: Add missing explicit `global::System` in manualOlly Betts2023-04-211-3/+3
| | | | | | | | Closes: #1944
* | [OCaml] Fix reference typemaps for std::stringZackery Spytz2023-04-215-21/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix warnings in the extend_template_method, li_std_string, and template_methods tests. std::string was missing a typecheck typemap. Add extend_template_method_runme.ml, li_std_string_runme.ml, and template_methods_runme.ml. Add INPUT, OUTPUT and INOUT typemaps for string & Use the INOUT typemap in the strings_test example. In the strings_test example, takes_and_gives_std_string() was relying on the silly fact that an argout typemap for string & was enabled by default. Remove the in, out, and typecheck typemaps for string &. Closes: #1439
* | [ocaml] Use CXXFLAGS when compiling C++ testcasesOlly Betts2023-04-211-3/+3
| | | | | | | | Fixes failure for cpp20_spaceship_operator.
* | Fix #ifdef and #ifndef to work inside a %defineOlly Betts2023-04-213-7/+70
| | | | | | | | | | | | | | | | Previously they were silently ignored in this context (but #if defined already worked here if you need a workaround which works for older versions). Fixes #2183
* | Add regression test for << in array size bugOlly Betts2023-04-202-1/+5
| | | | | | | | | | | | | | Go is happy with the testcase if the type is changed from int to char, so just go with that. See https://sourceforge.net/p/swig/bugs/983/
* | Restore handling for '<<' in array sizeOlly Betts2023-04-201-1/+2
| | | | | | | | I accidentally dropped this in 8fb15fcc922a302b88937a68e089223fb90640f9.
* | Add missing newline on new error messageOlly Betts2023-04-201-1/+1
| |
* | Improve error for array size with a '<' characterOlly Betts2023-04-201-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we'd fail an assertion and dump core, which isn't nice: Bad template type passed to SwigType_remember: a(std::numeric_limits< unsigned char >::max()).unsigned char swig: ../../Source/Swig/typesys.c:1709: SwigType_remember_clientdata: Assertion `0' failed. Aborted (core dumped) We also now know that this situation can be triggered by particular user inputs, so an assertion is not an appropriate check anyway. Now we report an error and exit with non-zero status: :1: Error: Array size expressions containing a '<' character not fully supported The `:1:` part isn't ideal but happens because the SwigType doesn't seem to have file:line information. See #2486.
* | Remove remaining traces of PHP7 supportOlly Betts2023-04-205-90/+38
| | | | | | | | | | The bulk of this was already removed in e3b112c69ceed5c39cb07fa45a3ba62b27712679.
* | [php] Remove unused exception.i includeOlly Betts2023-04-201-2/+0
| |
* | Make string& consistent in PHP's std_string.iOlly Betts2023-04-201-6/+6
| |
* | Merge branch 'go-argcargv'Olly Betts2023-04-204-1/+90
|\ \
| * | Clarify comment in _runme.goOlly Betts2023-04-201-1/+4
| | |
| * | Drop __cplusplus conditionals from testcaseOlly Betts2023-04-201-4/+0
| | | | | | | | | | | | This is a C++ testcase so these aren't useful.
| * | Add argc and argv multi-argument to go.Erez Geva2023-04-193-1/+88
| | | | | | | | | | | | | | | | | | Make argc and argv test works in C. Signed-off-by: Erez Geva <ErezGeva2@gmail.com>
* | | [ci] Fix scilab 2023.0.0 download URLOlly Betts2023-04-201-3/+3
| | |
* | | Note that #1882 is fixed by recent changeOlly Betts2023-04-201-4/+4
| | |
* | | Merge branch 'scilab-2023'Olly Betts2023-04-207-31/+117
|\ \ \ | | | | | | | | | | | | Closes #2524
| * | | scilab: add a gateway xml v6 with full function namesClément DAVID2023-04-203-7/+85
| | | |
| * | | scilab: detect version 2023 correctlyClément DAVID2023-04-206-26/+34
|/ / /
* | | [ci] Add scilab 6.1 buildOlly Betts2023-04-201-0/+2
| | |
* | | Make y const in new testcaseOlly Betts2023-04-191-1/+1
| | | | | | | | | | | | Needed to get compilable code for Lua and guile.
* | | Merge branch 'macro-partial-expansion'Olly Betts2023-04-194-16/+76
|\ \ \
| * | | Add CHANGES.current entryOlly Betts2023-04-191-0/+6
| | | |
| * | | Adjust new testsOlly Betts2023-04-192-15/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a regression test based on https://sourceforge.net/p/swig/bugs/1163/ since this patch solves that case too. Replace the __attribute__ test case from #2525 with a variant of the 1163 regression test, since __attribute__ is specific to certain compilers. Adjust the self-referential test case to actually work - it wasn't valid C code before.
| * | | Copy over missing parts of macro expansion codeOlly Betts2023-04-191-1/+6
| | | | | | | | | | | | | | | | | | | | We need to insert newlines for a multi-line macro invocation, and we shouldn't leak memory.
| * | | inline the header into the interface fileMomtchil Momtchev2023-04-172-22/+25
| | | |
| * | | actually test the valueMomtchil Momtchev2023-04-142-1/+4
| | | |