# New Ticket Created by  Klaas-Jan Stol 
# Please include the string:  [perl #48326]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=48326 >


ACcording to PDD19:

If you directly reference P99, Parrot will blindly allocate 100 registers


It doesn't.

.sub main
    P99 = new 'Integer'
    P99 = 3
    print P99
.end

running parrot -o - <file> gives the following, as does parrot -t <file>.

# IMCC does produce b0rken PASM files
# see http://[EMAIL PROTECTED]/rt3/Ticket/Display.html?id=32392
main:
        new P0, 'Integer'
        new P0, 'Integer'
        set P0, 3
        print P0
        set_returns
        returncc

According to the spec, this is a bug.

Now, this isn't a big deal, because the semantics of the program aren't
changed. The only problem I can imagine is for embedders, but I'm not sure
if you can poke into parrot registers from a C program. If you can, and you
expect something to be there because you stuffed it into a PASM style
register (not symbolic PIR reg), then things go wrong.

kjs

Reply via email to