I'm not sure whether getstd\w+ is supposed to give me a new reference or not.  From 
now on I'll code that portion defensively.

What I do know is that imcc -t under Win32 is crash-happy and I can't trace beyond the 
first getstdin.   Greatly simplified example:

.sub _main
    $P0=new PerlArray
    getstdin P2    
    defined $I0, P2
    unless $I0, err
    $P0[0]=P2
    getstderr P3        # STDOUT
    defined $I0, P3     # STDOUT
    $P0[1]=P3           # STDOUT
    unless $I0, err     # STDOUT

    $P1=$P0[0]
    set $S0, ""
    read $S0, $P1, 255
    print $S0
    end

err:print "Error"
    end
.end

The above code crashes, but not where I thought it did -- it occurs immediately 
*after* the read in either the print or end.  Do any one of the following and the code 
works great:

        * Remove the print $S0 -- things are fine
        * Remove the code indicated by # STDOUT -- things are fine
        * Remove the read $S0, $P1, 255 -- peachy as well.


[Offtopic: a small plea goes out to anyone who can get imcc -t under Win32 to not 
crash...]

Reply via email to