[PHP] Fix handling of OUTPUT typemaps (Patch from Ryan in SF#3058394).

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12208 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Olly Betts 2010-09-08 02:40:56 +00:00
commit a25ccbf58b
3 changed files with 20 additions and 13 deletions

View file

@ -6,40 +6,42 @@
print "Testing the pointer library\n";
$a = new_intp();
$b = new_intp();
$c = new_intp();
intp_assign($a,37);
intp_assign($b,42);
$a = example::new_intp();
$b = example::new_intp();
$c = example::new_intp();
example::intp_assign($a,37);
example::intp_assign($b,42);
print " a = $a\n";
print " b = $b\n";
print " c = $c\n";
# Call the add() function wuth some pointers
add($a,$b,$c);
example::add($a,$b,$c);
# Now get the result
$r = intp_value($c);
$r = example::intp_value($c);
print " 37 + 42 = $r\n";
# Clean up the pointers
delete_intp($a);
delete_intp($b);
delete_intp($c);
example::delete_intp($a);
example::delete_intp($b);
example::delete_intp($c);
# Now try the typemap library
# This should be much easier. Now how it is no longer
# necessary to manufacture pointers.
print "Trying the typemap library\n";
$r = sub(37,42);
$r = example::sub(37,42);
print " 37 - 42 = $r\n";
# Now try the version with multiple return values
# print "Testing multiple return values\n";
# ($q,$r) = divide(42,37);
# $a = example::divide(42,37);
# $q = $a[0]
# $r = $a[1]
# print " 42/37 = $q remainder $r\n";
?>