Vadim Zeitlin
cdf1ba9120
Don't accept strings too long to fit in char[N] with trailing NUL.
...
It was previously possible to assign "hello" to a variable backed by char[5]
storage in C, and the array contained the correct character data but without
the trailing NUL, which was unexpected in C.
This is not allowed any more, only "helo" can fit into a char[5] now and
anything else fails the type check, just as it already happened for the longer
strings before.
Closes #122
2013-12-23 21:13:25 +00:00
Vadim Zeitlin
88a0e228a9
Change the length of strings created from fixed-size buffers.
...
Use the usual C rule for NUL-terminated strings instead of discarding all the
trailing NUL characters.
This was unexpected (as buffers in C code are not necessarily always padded
with NULs to their full length) and also inconsistent among languages as this
was only done for those of them using typemaps/strings.swg but not for C# or
Java, for example, which terminated the string at the first NUL even before
this change.
Notice that this patch couldn't use strlen() or wcslen() with possibly not
NUL-terminated strings, so we had to add [our own equivalents of] strnlen()
and wcsnlen() and use them instead. This required adding yet another parameter
to string typemap macros, so update the example using them accordingly too.
2013-12-23 21:12:17 +00:00
Robert Stone
bb6ab0318c
Merge remote branch 'upstream/master' into perl5-directors-minimal
2013-11-16 12:06:34 -08:00
Robert Stone
81ce0a723e
fix "long long" tests for perl v5.6
2013-11-14 11:24:24 -08:00
Robert Stone
e0789366e7
prefer polymorphism on existing destructor over custom destructor method
2013-11-14 08:23:46 -08:00
Robert Stone
0901a3e867
steals python directors and adapts to perl5
2013-11-12 12:45:03 -08:00
Olly Betts
f9566ad2df
Fix assorted typos.
...
From https://sourceforge.net/p/swig/patches/332/ and some others too.
2013-01-08 18:47:40 +13:00
Robert Stone
121086fb77
* revert perl5 li_typemaps run tests due to Windows regressions.
...
* stricter casting to sidestep compiler warnings on Windows.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13002 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-04-18 21:49:32 +00:00
Olly Betts
1d1e8650a3
Remove old copies of Perl Test::Builder and Test::More - these have been
...
included with Perl since 5.6.0.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12864 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-12-08 05:59:37 +00:00
Robert Stone
7d359b7895
Fix for SF bug #1481958 .
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12802 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-09-11 01:04:29 +00:00
William S Fulton
ea00ff974f
Patch #3260265 fixing overloading of non-primitive types and integers in Perl 5.12 and later
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12691 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-05-19 19:31:39 +00:00
William S Fulton
527c3e0552
Test modifications of changed behaviour in perl 5.12 and 5.14 in reporting errors
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12690 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-05-19 18:48:57 +00:00
William S Fulton
ef865e06d5
Added some missing multi-argument typemaps: (char *STRING, size_t LENGTH) and (char *STRING, int LENGTH) - Java patch is from Volker Grabsch. Elements of the primitive_types.i testcase for this moved into char_binary.i. Documentation for this enhanced.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12393 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-01-14 19:06:43 +00:00
Miklos Vajna
451f71d7b1
remove unnecessary extra semicolons in the tesuite
...
Basically just style cleanup, "fi;" or "fi; \" -> "fi".
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11523 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-09 22:52:08 +00:00
William S Fulton
56c5b52c1d
remove unnecessary extra shells being spawned in the test-suite
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11522 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-09 22:39:51 +00:00
Miklos Vajna
88a934d7f0
PHP: fix for the wrapmacro testcase
...
'max' is a built-in function in PHP, so let's rename it to 'maximum'
instead.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11495 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-04 09:32:12 +00:00
William S Fulton
9064b08651
better way to provide custom commandline options for individual tests
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11356 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-03 22:23:43 +00:00
William S Fulton
7db0c01af0
rename byreference testcase to li_reference to follow normal test naming conventions of library files. Remove ability to add testcases into subdirectories (again) - not wanted
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11346 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-02 20:32:51 +00:00
William S Fulton
222b9e4710
remove perl specific modifications to the enum_thorough test
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11280 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-06-16 20:26:28 +00:00
William S Fulton
0a1c7c91b1
fix Java and C# enums when one of the enum items is ignored
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11279 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-06-16 19:29:08 +00:00
Robert Stone
1dc5175753
reference.i improvements, testcase coverage. language specific interface support for test-suite.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11247 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-06-05 18:47:30 +00:00
Robert Stone
6574067b72
Fix SF#2564192
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11110 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-02-05 15:47:42 +00:00
William S Fulton
1c4ec59e45
Apply patch #2143727 for Python from Serge Monkewitz to fix importing base classes when the package option is specified in %module and that module is %import'ed
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10960 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-12-02 20:21:16 +00:00
William S Fulton
db83e51441
modify test-suite (barring python atm) to not rely on the -I path to find the input .i file - removes the new warning 125 and sets up the test-suite for testing with ccache. This change required the use of -outcurrentdir and moving the .i files from the language subdirectories to the directory above along with some .i file name changes.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10949 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-11-26 21:35:15 +00:00
Robert Stone
2ee3d98d79
rollback 10737:10749, this work is better left on a branch until it is
...
in support a significant feature enhancement.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10794 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-08-19 07:09:29 +00:00
Robert Stone
2728e5a606
initial steps to clean up perl5 class methods (primarily constructors).
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10743 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-08-08 03:10:55 +00:00
Robert Stone
d5f16a867c
Hopefully this provides more portable values for Infinity and NaN in Perl.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10616 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-06-30 23:41:27 +00:00
William S Fulton
f8ae12fe4d
variable name changes to remove php keywords
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10575 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-06-24 20:11:46 +00:00
Robert Stone
072ee51942
run test cases in the Perl set by the --with-perl5 configure option.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10498 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-26 20:09:56 +00:00
William S Fulton
f06222b993
Add partialcheck make targets. Also add RUNTOOL, COMPILETOOL and SWIGTOOL variables for invoking tools when running tests, compiling or invoking swig
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10482 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-20 21:27:22 +00:00
William S Fulton
0df0a87981
rename package testcase to packageoption as package is a Java keyword
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10433 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-10 10:36:35 +00:00
Robert Stone
8b713d759d
several testcases for perl
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10403 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-30 21:02:46 +00:00
Jason Stewart
bea5f1d47b
package option for perl5
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10393 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-26 13:12:45 +00:00
Jason Stewart
36e9ba403f
added test which breaks perl
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10342 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-04 10:30:49 +00:00
Jason Stewart
da4c710d60
added post- and pre- increment tests
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10340 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-03 12:03:04 +00:00
Jason Stewart
ad93f971ca
new operator overload tests to locate bugs in pre- increment/decrement operators
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10338 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-03 11:48:41 +00:00
Jason Stewart
128880ea1d
added __rsub__() and test for reversed subtraction operator
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10337 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-03 11:40:20 +00:00
Jason Stewart
ccff189174
fixed name typo
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10335 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-03 11:27:18 +00:00
Jason Stewart
e294f2e158
fixed test-name typo ; add tests for pre- increment/decrement
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10333 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-04-03 11:20:37 +00:00
William S Fulton
e9dc2e8dc9
Fix test since #1798728 was backed out
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10242 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-02-10 20:47:49 +00:00
William S Fulton
0d799435b8
Fix #1798728 - numbers can be passed to functions taking char *
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10190 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-12-12 19:26:22 +00:00
William S Fulton
0d7175fa1c
modify unsigned long long test to use strings as this is portable across all builds of Perl
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10057 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-10-28 16:43:28 +00:00
William S Fulton
ede8b8c87a
Remove cvs $Header$
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10007 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-10-17 21:56:11 +00:00
Olly Betts
e2d7f303b8
[perl5] Use sv_setpvn() to set a scalar from a pointer and length
...
- patch from SF#174460 by "matsubaray".
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9937 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-09-17 23:24:11 +00:00
William S Fulton
f5bdd056f7
Remove obscure mpointer example and replace with member_pointer.i testcase and runtime examples
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9887 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-09 23:47:13 +00:00
William S Fulton
e4bade15f3
fixes to use parallel make when running the examples and test-suite
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9875 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-07-24 21:26:54 +00:00
John Lenz
6dda6f8321
Remove cvsignore files: this is stored on svn:igonre property now
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9593 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-12-03 08:28:42 +00:00
William S Fulton
6c9455d440
Daniel Moore patch - more operator overloading support
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9154 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-06-12 21:07:38 +00:00
Marcelo Matus
20339de8b4
more fixes/tests for empty strings
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9083 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-05-04 04:45:41 +00:00
William S Fulton
2d24918a97
ensure %apply with char*, unsigned char* and signed char* works
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9072 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-05-03 20:58:19 +00:00