2008-05-19 | Paul Boddie | raw annotate files changeset graph | Moved Label into the common module. Fixed code generation for class storage. Fixed context generation in method invocations. Added stack pop operation for Discard nodes. Tidied the instructions, adding get_operand methods for use in RSVPMachine instances. Improved instruction coverage in RSVPMachine, employing the instruction representations used elsewhere. Added a function which converts the code such that Attr instances become simplified values of the form (context, reference). |
1 Exception Handling 2 ------------------ 3 4 Where exceptions may be raised, the following rules are applied: 5 6 1. If exception labels exist, any raised exception causes a jump to the 7 handler label. 8 9 2. If no exception labels exist, any raised exception causes the current 10 function to be terminated with an exception condition. 11 12 3. Where an invocation returns with an exception condition set, rules #1 and 13 #2 are applied.