summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/statements/for/S12.6.3_A10.1_T2.js
blob: cea5e89e7a26c08d5e74fbe429eee2693b93c418 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
info: Nested "var-loops" nine blocks depth is evaluated properly
es5id: 12.6.3_A10.1
description: >
    Checking if executing nested "var-loops" nine blocks depth is
    evaluated properly
---*/

var __str, index2, index3, index6;

//////////////////////////////////////////////////////////////////////////////
//CHECK#1
try {
	__in__deepest__loop=__in__deepest__loop;
} catch (e) {
	throw new Test262Error('#1: "__in__deepest__loop=__in__deepest__loop" does not lead to throwing exception');
}
//
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
//CHECK#2
try {
	index0=index0;
} catch (e) {
	throw new Test262Error('#2: "index0=index0" does not lead to throwing exception');
}
//
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
//CHECK#3
try {
	index1=index1;
} catch (e) {
	throw new Test262Error('#3: "index1=index1" does not lead to throwing exception');
}
//
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
//CHECK#4
try {
	index4=index4;
} catch (e) {
	throw new Test262Error('#4: "index4=index4" does not lead to throwing exception');
}
//
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
//CHECK#5
try {
	index5=index5;
} catch (e) {
	throw new Test262Error('#4: "index5=index5" does not lead to throwing exception');
}
//
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
//CHECK#6
try {
	index7=index7;
} catch (e) {
	throw new Test262Error('#6: "index7=index7" does not lead to throwing exception');
}
//
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
//CHECK#7
try {
	index8=index8;
} catch (e) {
	throw new Test262Error('#7: "index8=index8" does not lead to throwing exception');
}
//
//////////////////////////////////////////////////////////////////////////////

__str="";

for( var index0=0; index0<=1; index0++) {
	for(var index1=0; index1<=index0; index1++) {
		for( index2=0; index2<=index1; index2++) {
			for( index3=0; index3<=index2; index3++) {
				for(var index4=0; index4<=index3; index4++) {
					for(var index5=0; index5<=index4; index5++) {
						for( index6=0; index6<=index5; index6++) {
							for(var index7=0; index7<=index6; index7++) {
								for(var index8=0; index8<=index1; index8++) {
									var __in__deepest__loop;
									__str+=""+index0+index1+index2+index3+index4+index5+index6+index7+index8+'\n';
								}
							}
						}
					}
				}
			}
		}
	}
}

//////////////////////////////////////////////////////////////////////////////
//CHECK#2
if (__str!== "000000000\n100000000\n110000000\n110000001\n111000000\n111000001\n111100000\n111100001\n111110000\n111110001\n111111000\n111111001\n111111100\n111111101\n111111110\n111111111\n") {
	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  );
}
//
//////////////////////////////////////////////////////////////////////////////

reportCompare(0, 0);