Merge branch 'fix-ignore-param'
Fix for wrongly renaming parameters to "$ignore" in Python. See https://github.com/swig/swig/pull/1462
This commit is contained in:
commit
ddf4bbe112
3 changed files with 35 additions and 5 deletions
|
|
@ -8,12 +8,15 @@
|
|||
|
||||
%typemap(freearg) char* a ""; // ensure freearg is not generated (needed for Java at least)
|
||||
|
||||
%ignore unignorable;
|
||||
|
||||
%inline %{
|
||||
// global function tests
|
||||
char* jaguar(char* a, int b, double c) { return a; }
|
||||
int lotus(char* aa, int bb, double cc) { return bb; }
|
||||
double tvr(char* aaa, int bbb, double ccc) { return ccc; }
|
||||
int ferrari(int bb) { return bb; }
|
||||
int fiat(int unignorable) { return unignorable; }
|
||||
|
||||
// member function tests
|
||||
struct SportsCars {
|
||||
|
|
@ -21,6 +24,7 @@ struct SportsCars {
|
|||
int astonmartin(char* aa, int bb, double cc) { return bb; }
|
||||
double bugatti(char* aaa, int bbb, double ccc) { return ccc; }
|
||||
int lamborghini(int bb) { return bb; }
|
||||
int maseratti(int unignorable) { return unignorable; }
|
||||
};
|
||||
|
||||
// constructor tests
|
||||
|
|
|
|||
23
Examples/test-suite/python/ignore_parameter_runme.py
Normal file
23
Examples/test-suite/python/ignore_parameter_runme.py
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
from ignore_parameter import *
|
||||
|
||||
def check(a, b):
|
||||
if a != b:
|
||||
raise RuntimeError('"%s" != "%s"' % (a, b))
|
||||
|
||||
check(jaguar(200, 0), "hello")
|
||||
check(lotus("foo", 1), 101)
|
||||
check(tvr("bar", 2), 8.8)
|
||||
check(ferrari(), 101)
|
||||
check(fiat(17), 17)
|
||||
|
||||
car = SportsCars()
|
||||
check(car.daimler(200, 0), "hello")
|
||||
check(car.astonmartin("foo", 1), 101)
|
||||
check(car.bugatti("bar", 2), 8.8)
|
||||
check(car.lamborghini(), 101)
|
||||
check(car.maseratti(289), 289)
|
||||
|
||||
MiniCooper(200, 0)
|
||||
MorrisMinor("baz", 0)
|
||||
FordAnglia("quux", 200)
|
||||
AustinAllegro()
|
||||
Loading…
Add table
Add a link
Reference in a new issue