S12.6.3_A10.1_T1.js (3744B)
1 // Copyright 2009 the Sputnik authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 info: Nested "var-loops" nine blocks depth is evaluated properly 6 es5id: 12.6.3_A10.1 7 description: > 8 Checking if executing nested "var-loops" nine blocks depth is 9 evaluated properly 10 flags: [noStrict] 11 ---*/ 12 13 ////////////////////////////////////////////////////////////////////////////// 14 //CHECK#1 15 try { 16 __in__deepest__loop=__in__deepest__loop; 17 } catch (e) { 18 throw new Test262Error('#1: "__in__deepest__loop=__in__deepest__loop" does not lead to throwing exception'); 19 } 20 // 21 ////////////////////////////////////////////////////////////////////////////// 22 23 ////////////////////////////////////////////////////////////////////////////// 24 //CHECK#2 25 try { 26 index0=index0; 27 } catch (e) { 28 throw new Test262Error('#2: "index0=index0" does not lead to throwing exception'); 29 } 30 // 31 ////////////////////////////////////////////////////////////////////////////// 32 33 ////////////////////////////////////////////////////////////////////////////// 34 //CHECK#3 35 try { 36 index1=index1; 37 } catch (e) { 38 throw new Test262Error('#3: "index1=index1" does not lead to throwing exception'); 39 } 40 // 41 ////////////////////////////////////////////////////////////////////////////// 42 43 ////////////////////////////////////////////////////////////////////////////// 44 //CHECK#4 45 try { 46 index4=index4; 47 } catch (e) { 48 throw new Test262Error('#4: "index4=index4" does not lead to throwing exception'); 49 } 50 // 51 ////////////////////////////////////////////////////////////////////////////// 52 53 ////////////////////////////////////////////////////////////////////////////// 54 //CHECK#5 55 try { 56 index5=index5; 57 } catch (e) { 58 throw new Test262Error('#4: "index5=index5" does not lead to throwing exception'); 59 } 60 // 61 ////////////////////////////////////////////////////////////////////////////// 62 63 ////////////////////////////////////////////////////////////////////////////// 64 //CHECK#6 65 try { 66 index7=index7; 67 } catch (e) { 68 throw new Test262Error('#6: "index7=index7" does not lead to throwing exception'); 69 } 70 // 71 ////////////////////////////////////////////////////////////////////////////// 72 73 ////////////////////////////////////////////////////////////////////////////// 74 //CHECK#7 75 try { 76 index8=index8; 77 } catch (e) { 78 throw new Test262Error('#7: "index8=index8" does not lead to throwing exception'); 79 } 80 // 81 ////////////////////////////////////////////////////////////////////////////// 82 83 __str=""; 84 85 for( var index0=0; index0<=1; index0++) { 86 for(var index1=0; index1<=index0; index1++) { 87 for( index2=0; index2<=index1; index2++) { 88 for( index3=0; index3<=index2; index3++) { 89 for(var index4=0; index4<=index3; index4++) { 90 for(var index5=0; index5<=index4; index5++) { 91 for( index6=0; index6<=index5; index6++) { 92 for(var index7=0; index7<=index6; index7++) { 93 for(var index8=0; index8<=index1; index8++) { 94 var __in__deepest__loop; 95 __str+=""+index0+index1+index2+index3+index4+index5+index6+index7+index8+'\n'; 96 } 97 } 98 } 99 } 100 } 101 } 102 } 103 } 104 } 105 106 ////////////////////////////////////////////////////////////////////////////// 107 //CHECK#2 108 if (__str!== "000000000\n100000000\n110000000\n110000001\n111000000\n111000001\n111100000\n111100001\n111110000\n111110001\n111111000\n111111001\n111111100\n111111101\n111111110\n111111111\n") { 109 throw new Test262Error('#2: __str === "000000000\\n100000000\\n110000000\\n110000001\\n111000000\\n111000001\\n111100000\\n111100001\\n111110000\\n111110001\\n111111000\\n111111001\\n111111100\\n111111101\\n111111110\\n111111111\\n". Actual: __str ==='+ __str ); 110 } 111 // 112 ////////////////////////////////////////////////////////////////////////////// 113 114 reportCompare(0, 0);