summaryrefslogtreecommitdiff
path: root/lib/ExtUtils/xsubpp
diff options
context:
space:
mode:
authorTim Jenness <tjenness@cpan.org>2001-03-25 06:46:12 -1000
committerJarkko Hietaniemi <jhi@iki.fi>2001-03-27 14:48:34 +0000
commitf8c117644848ab2dc358c65c9264a47dc0568336 (patch)
tree931eef559e92ed1c3ac5f89b35c8c8cf703f76da /lib/ExtUtils/xsubpp
parentab3ed403141a8007775bca440211b25b96a13154 (diff)
downloadperl-f8c117644848ab2dc358c65c9264a47dc0568336.tar.gz
Typemap testing
Message-ID: <Pine.LNX.4.30.0103251629350.16988-101000@lapaki.jach.hawaii.edu> (The first part of the patch.) p4raw-id: //depot/perl@9380
Diffstat (limited to 'lib/ExtUtils/xsubpp')
-rwxr-xr-xlib/ExtUtils/xsubpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/ExtUtils/xsubpp b/lib/ExtUtils/xsubpp
index 2093633930..c4287b79c9 100755
--- a/lib/ExtUtils/xsubpp
+++ b/lib/ExtUtils/xsubpp
@@ -1621,6 +1621,7 @@ sub generate_init {
blurt("Error: No INPUT definition for type '$subtype', typekind '$type_kind{$subtype}' found"), return
unless defined $input_expr{$type_kind{$subtype}} ;
$subexpr = $input_expr{$type_kind{$subtype}};
+ $subexpr =~ s/\$type/\$subtype/g;
$subexpr =~ s/ntype/subtype/g;
$subexpr =~ s/\$arg/ST(ix_$var)/g;
$subexpr =~ s/\n\t/\n\t\t/g;
@@ -1671,6 +1672,7 @@ sub generate_output {
$type = TidyType($type) ;
if ($type =~ /^array\(([^,]*),(.*)\)/) {
+ print "\t$arg = sv_newmortal();\n";
print "\tsv_setpvn($arg, (char *)$var, $2 * sizeof($1));\n";
print "\tSvSETMAGIC($arg);\n" if $do_setmagic;
} else {