Vladimir Lipskiy <[EMAIL PROTECTED]> wrote: > What are "-", "X", and " "(whitespace) supossed to mean there?
"X" is meaning "is in context". Sorry if that is misleading, I'll update the pod. > Why is Eval not there? Does it have no context? Its not specified yet, how eval fits into the picture. Its currently different, because it runs a different code segment. We don't have general support for multiple code segment yet. > "If items in the interpreter context are changed between creation of the > subroutine/return continuation and its invocation, the C<updatecc> opcode > should be used:" > What items? Items of the interpreter context or items of the Sub context > mentioned above? Is there any difference betwen these? How do I know > items are changed? If you have something like: newsub .Sub, .Continuation, _sub_label, ret_label ... loop: ... invoke ret_label: branch loop and e.g. interpreter's warning flags are changed during creation of the return continuation and the subroutine call, the C<updatecc> opcode updates the warnings in the return continuation, so that after returning you have the very same interpreter context. The C<updatecc> should finally set the same state of the return continuation, as if you had an C<invokecc> inside the loop, without the overhead of creating new continuation objects every time. When using the PIR .pcc_begin/.pcc_end directives, C<updatecc> gets inserted automatically when needed. > Thanks. leo