Lines 538-544
Link Here
|
538 |
naturalExitExceptionHandler.placeEnd(); |
538 |
naturalExitExceptionHandler.placeEnd(); |
539 |
codeStream.recordPositionsFrom( |
539 |
codeStream.recordPositionsFrom( |
540 |
position, |
540 |
position, |
541 |
this.finallyBlock.sourceEnd); |
541 |
this.finallyBlock.sourceEnd); |
542 |
break; |
542 |
break; |
543 |
case FINALLY_INLINE : |
543 |
case FINALLY_INLINE : |
544 |
// inlined finally here can see all merged variables |
544 |
// inlined finally here can see all merged variables |
Lines 550-556
Link Here
|
550 |
// entire sequence for finally is associated to finally block |
550 |
// entire sequence for finally is associated to finally block |
551 |
this.finallyBlock.generateCode(this.scope, codeStream); |
551 |
this.finallyBlock.generateCode(this.scope, codeStream); |
552 |
if (postCatchesFinallyLabel != null && requiresCatchesExit) { |
552 |
if (postCatchesFinallyLabel != null && requiresCatchesExit) { |
|
|
553 |
position = codeStream.position; |
554 |
// entire sequence for finally is associated to finally block |
553 |
codeStream.goto_(postCatchesFinallyLabel); |
555 |
codeStream.goto_(postCatchesFinallyLabel); |
|
|
556 |
codeStream.recordPositionsFrom( |
557 |
position, |
558 |
this.finallyBlock.sourceEnd); |
554 |
} |
559 |
} |
555 |
break; |
560 |
break; |
556 |
case FINALLY_DOES_NOT_COMPLETE : |
561 |
case FINALLY_DOES_NOT_COMPLETE : |