Author: kjs Date: Wed Dec 5 09:08:50 2007 New Revision: 23504 Modified: trunk/docs/pdds/draft/pdd19_pir.pod
Log: [pdd19] * remove some notes about deprecated things that are removed by now. * add .get_results directive. Modified: trunk/docs/pdds/draft/pdd19_pir.pod ============================================================================== --- trunk/docs/pdds/draft/pdd19_pir.pod (original) +++ trunk/docs/pdds/draft/pdd19_pir.pod Wed Dec 5 09:08:50 2007 @@ -338,8 +338,6 @@ above), but string sub names can contain any characters, including characters from different character sets (see L<Constants> above). -{{ NOTE: the optional comma in the flag list is deprecated RT#45697 }} - Always paired with C<.end>. =item .end @@ -360,8 +358,6 @@ =head3 Directives used for Parrot calling conventions. -{{ DEPRECATED: the "pcc_" prefix. See #45925. }} - =over 4 =item .begin_call and .end_call @@ -420,6 +416,24 @@ {{ TODO: once these flag bits are solidified by long-term use, then we may choose to copy appropriate bits of the documentation to here. }} + +=head3 Catching Exceptions + +Using the C<push_eh> op you can install an exception handler. If an exception +is thrown, Parrot will execute the installed exception handler. In order to +retrieve the thrown exception, use the C<.get_results> directive. + + push_eh handler + ... + handler: + .local pmc exception + .local string message + .get_results (exception, message) + ... + +This is syntactic sugar for the C<get_results> op, but any flags set on the +targets will be handled automatically by the PIR compiler. + =head2 Syntactic Sugar Any PASM opcode is a valid PIR instruction. In addition, PIR defines some