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

Reply via email to