William Coleda <[EMAIL PROTECTED]> wrote:
> So, it's possible for someone to crash parrot by writing questionable PIR? ^_^

Yes. It's assembler programming basically. But eventually we'll have to
set GCed items in such a way that an access doesn't segfault but throws
an exception.

> (This was working fine for quite some time, btw.)

Yes. Recent changes to compile caused a different behavior.

I've already asked a few times about the wanted default behavior of
compiled code subroutines.

  .sub sub1
    ...
  .sub sub2
    ...

Should compile return the first sub as the result?

  .sub sub1 @ANON
    ...
  .sub sub2 @MAIN, @ANON
    ...

This should return 'sub2' and not install the globals. How is 'sub1'
kept alive and how long?

Currently in all cases a *new* Eval object is returned, which represents
the compiled code. It overlaps the first compiled subroutine - both have
the same start address. And this returned object has to be kept alive.

> Also, what do I need to do to save these subroutines?

See above.

leo

Reply via email to