This code causes IMCC to hang:
.pcc_sub _main non_prototyped
newsub $P5, .Sub, _ags_3
$P4 = new PerlString
$P4 = "foobar!"
newsub P1, .Continuation, agl_1
.pcc_begin non_prototyped
.arg $P4
.pcc_call $P5, P1
agl_1:
.result $P6
.pcc_end
end
.end
.pcc_sub _ags_3 non_prototyped
.param pmc whattoprint
print whattoprint
print "\n"
$P0 = new PerlUndef
.pcc_begin_return
.return $P0
.pcc_end_return
.end
It seems to get stuck while reading
".pcc_sub _ags_3 non_prototyped";
putting junk in before that line
causes it to crash with an
'unexpected identifier' message, while
it just hangs as usual if I put junk in
after it. This started happening around
the time the 'multiple return' bug was
fixed, as the same code worked fine,
before. I can re-arrange things a bit:
.pcc_sub _main non_prototyped
newsub $P0, .Sub, _pood
newsub P1, .Continuation, blah
$P1 = new PerlString
assign $P1, "fooper"
.pcc_begin non_prototyped
.arg $P1
.pcc_call $P0, P1
blah:
.result $P3
.pcc_end
end
.end
.pcc_sub _pood non_prototyped
.param pmc printme
print printme
print "\n"
.pcc_begin_return
.return printme
.pcc_end_return
.end
And the same thing still happens.
__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com