// Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- info: | Using "try" with "catch" or "finally" statement within/without a "while" statement es5id: 12.14_A10_T4 description: Try statement inside loop, where combinate using break and continue ---*/ // CHECK#1 var c1=0,fin=0; while(c1<2){ try{ c1+=1; break; } catch(er1){} finally{ fin=1; continue; } fin=-1; c1+=2; } if(fin!==1){ throw new Test262Error('#1.1: "finally" block must be evaluated'); } if(c1!==2){ throw new Test262Error('#1.2: "try{break} catch finally{continue}" must work correctly'); } // CHECK#2 var c2=0,fin2=0; while(c2<2){ try{ throw "ex1"; } catch(er1){ c2+=1; break; } finally{ fin2=1; continue; } c2+=2; fin2=-1; } if(fin2!==1){ throw new Test262Error('#2.1: "finally" block must be evaluated'); } if(c2!==2){ throw new Test262Error('#2.2: "try catch{break} finally{continue} must work correctly'); } reportCompare(0, 0);