Annotation of parser3/tests/457.html, revision 1.2
1.2 ! moko 1: # The request gets recovery reserve many times (feature #1298)
1.1 moko 2: @main[][i]
1.2 ! moko 3: $report[ $.caught(0) $.finally(0) ]
! 4: ^for[i](1;5){
1.1 moko 5: $calls(0)
6: ^try{^recurse[]}{
7: $report.caught($report.caught+1)
8: $report.calls_$i($calls)
9: $exception.handled(true)
10: }{
11: $report.finally($report.finally+1)
12: }
13: }
14: $report.after(true)
1.2 ! moko 15:
! 16: # the handler itself may run away and recover on its own
! 17: ^try{^recurse[]}{
! 18: ^try{^recurse[]}{
! 19: $report.caught_in_catch(true)
! 20: $exception.handled(true)
! 21: }
! 22: $exception.handled(true)
! 23: }
! 24:
! 25: # the handler runs away too, yet finally still gets its own reserve
! 26: ^try{
! 27: ^try{^recurse[]}{
! 28: ^recurse[]
! 29: }{
! 30: ^try{^recurse[]}{
! 31: $report.caught_in_finally(true)
! 32: $exception.handled(true)
! 33: }
! 34: }
! 35: }{
! 36: $report.catch_error_propagated(true)
! 37: $report.finally_error[$exception.comment]
! 38: $exception.handled(true)
! 39: }
1.1 moko 40: ^json:string[$report; $.indent(true)]
41:
42: @recurse[]
43: $calls($calls+1)
44: ^recurse[]
45:
46: @unhandled_exception[exception;stack]
47: $exception.handled(true)
48: $report.error[$exception.comment]
49: ^json:string[$report; $.indent(true)]
E-mail: