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