In the meantime interpreter->warns has moved to the context structure and gets now restored for CPS subroutine calls.

But there is a slight problem (as well as with e.g. pad_stacks)
When we have:

  warningson 1
  newsub .Sub, .Continuation, _func, _ret
  ...
  invoke

and _func turns warnings off, the warns are restored fine.

When C<warningson> is after C<newsub>, the continuation has the old state of warns. So we should update the continuation context at C<invoke> time.

Here are some possibilities to achieve this:
- invokecc (this is slow)
- a new opcode e.g. C<updatecc> (update continuation ctx)
- toss invokecc's current functionality and use this opcode to update the context and call the sub.


Comments welcome,
leo



Reply via email to