Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: test/webkit/fast/js/basic-strict-mode-expected.txt

Issue 20280003: Migrate more tests from blink repository. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « test/webkit/fast/js/basic-strict-mode.js ('k') | test/webkit/fast/js/caller-property.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 # Copyright 2013 the V8 project authors. All rights reserved.
2 # Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
3 #
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions
6 # are met:
7 # 1. Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer.
9 # 2. Redistributions in binary form must reproduce the above copyright
10 # notice, this list of conditions and the following disclaimer in the
11 # documentation and/or other materials provided with the distribution.
12 #
13 # THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
14 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16 # DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
17 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
18 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
19 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
20 # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
22 # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23
24 Test behaviour of strict mode
25
26 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE ".
27
28
29 PASS testThis.call(null) is null
30 PASS testThis.call(1) is 1
31 PASS testThis.call(true) is true
32 PASS testThis.call(false) is false
33 PASS testThis.call(undefined) is undefined
34 PASS testLineContinuation.call(undefined) === undefined is false
35 PASS testEscapeSequence.call(undefined) === undefined is false
36 PASS testThis.call('a string') is 'a string'
37 PASS testThisDotAccess.call('a string') is 'a string'.length
38 PASS testThisDotAccess.call(null) threw exception TypeError: Cannot read propert y 'length' of null.
39 PASS testThisDotAccess.call(undefined) threw exception TypeError: Cannot read pr operty 'length' of undefined.
40 PASS testThisDotAccess.call(true) is undefined.
41 PASS testThisDotAccess.call(false) is undefined.
42 PASS testThisDotAccess.call(1) is undefined.
43 PASS testThisBracketAccess.call('a string', 'length') is 'a string'.length
44 PASS testThisBracketAccess.call(null, 'length') threw exception TypeError: Canno t read property 'length' of null.
45 PASS testThisBracketAccess.call(undefined, 'length') threw exception TypeError: Cannot read property 'length' of undefined.
46 PASS testThisBracketAccess.call(true, 'length') is undefined.
47 PASS testThisBracketAccess.call(false, 'length') is undefined.
48 PASS testThisBracketAccess.call(1, 'length') is undefined.
49 PASS Function('"use strict"; return this;')() is undefined.
50 PASS Function('"use strict"; with({});') threw exception SyntaxError: Strict mod e code may not include a with statement.
51 PASS testGlobalAccess() is undefined
52 PASS testThis.call() is undefined
53 PASS testThis.apply() is undefined
54 PASS testThis.call(undefined) is undefined
55 PASS testThis.apply(undefined) is undefined
56 PASS (function eval(){'use strict';}) threw exception SyntaxError: Function name may not be eval or arguments in strict mode.
57 PASS (function(){(function eval(){'use strict';})}) threw exception SyntaxError: Function name may not be eval or arguments in strict mode.
58 PASS (function (eval){'use strict';}) threw exception SyntaxError: Parameter nam e eval or arguments is not allowed in strict mode.
59 PASS (function(){(function (eval){'use strict';})}) threw exception SyntaxError: Parameter name eval or arguments is not allowed in strict mode.
60 PASS (function arguments(){'use strict';}) threw exception SyntaxError: Function name may not be eval or arguments in strict mode.
61 PASS (function(){(function arguments(){'use strict';})}) threw exception SyntaxE rror: Function name may not be eval or arguments in strict mode.
62 PASS (function (arguments){'use strict';}) threw exception SyntaxError: Paramete r name eval or arguments is not allowed in strict mode.
63 PASS (function(){(function (arguments){'use strict';})}) threw exception SyntaxE rror: Parameter name eval or arguments is not allowed in strict mode.
64 PASS (function (){'use strict'; var eval;}) threw exception SyntaxError: Variabl e name may not be eval or arguments in strict mode.
65 PASS (function(){(function (){'use strict'; var eval;})}) threw exception Syntax Error: Variable name may not be eval or arguments in strict mode.
66 PASS (function (){'use strict'; var arguments;}) threw exception SyntaxError: Va riable name may not be eval or arguments in strict mode.
67 PASS (function(){(function (){'use strict'; var arguments;})}) threw exception S yntaxError: Variable name may not be eval or arguments in strict mode.
68 PASS (function (){'use strict'; try{}catch(eval){}}) threw exception SyntaxError : Catch variable may not be eval or arguments in strict mode.
69 PASS (function(){(function (){'use strict'; try{}catch(eval){}})}) threw excepti on SyntaxError: Catch variable may not be eval or arguments in strict mode.
70 PASS (function (){'use strict'; try{}catch(arguments){}}) threw exception Syntax Error: Catch variable may not be eval or arguments in strict mode.
71 PASS (function(){(function (){'use strict'; try{}catch(arguments){}})}) threw ex ception SyntaxError: Catch variable may not be eval or arguments in strict mode.
72 PASS (function (a, a){'use strict';}) threw exception SyntaxError: Strict mode f unction may not have duplicate parameter names.
73 PASS (function(){(function (a, a){'use strict';})}) threw exception SyntaxError: Strict mode function may not have duplicate parameter names.
74 PASS (function (a){'use strict'; delete a;})() threw exception SyntaxError: Dele te of an unqualified identifier in strict mode..
75 PASS (function(){(function (a){'use strict'; delete a;})()}) threw exception Syn taxError: Delete of an unqualified identifier in strict mode..
76 PASS (function (){'use strict'; var a; delete a;})() threw exception SyntaxError : Delete of an unqualified identifier in strict mode..
77 PASS (function(){(function (){'use strict'; var a; delete a;})()}) threw excepti on SyntaxError: Delete of an unqualified identifier in strict mode..
78 PASS (function (){var a; function f() {'use strict'; delete a;} })() threw excep tion SyntaxError: Delete of an unqualified identifier in strict mode..
79 PASS (function(){(function (){var a; function f() {'use strict'; delete a;} })() }) threw exception SyntaxError: Delete of an unqualified identifier in strict mo de..
80 PASS (function (){'use strict'; with(1){};}) threw exception SyntaxError: Strict mode code may not include a with statement.
81 PASS (function(){(function (){'use strict'; with(1){};})}) threw exception Synta xError: Strict mode code may not include a with statement.
82 PASS (function (){'use strict'; arguments.callee; })() threw exception TypeError : 'caller', 'callee', and 'arguments' properties may not be accessed on strict m ode functions or the arguments objects for calls to them.
83 PASS (function (){'use strict'; arguments.caller; })() threw exception TypeError : 'caller', 'callee', and 'arguments' properties may not be accessed on strict m ode functions or the arguments objects for calls to them.
84 PASS (function f(){'use strict'; f.arguments; })() threw exception TypeError: 'c aller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them.
85 PASS (function f(){'use strict'; f.caller; })() threw exception TypeError: 'call er', 'callee', and 'arguments' properties may not be accessed on strict mode fun ctions or the arguments objects for calls to them.
86 PASS (function f(){'use strict'; f.arguments=5; })() threw exception TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mod e functions or the arguments objects for calls to them.
87 PASS (function f(){'use strict'; f.caller=5; })() threw exception TypeError: 'ca ller', 'callee', and 'arguments' properties may not be accessed on strict mode f unctions or the arguments objects for calls to them.
88 PASS (function (arg){'use strict'; arguments.callee; })() threw exception TypeEr ror: 'caller', 'callee', and 'arguments' properties may not be accessed on stric t mode functions or the arguments objects for calls to them.
89 PASS (function (arg){'use strict'; arguments.caller; })() threw exception TypeEr ror: 'caller', 'callee', and 'arguments' properties may not be accessed on stric t mode functions or the arguments objects for calls to them.
90 PASS (function f(arg){'use strict'; f.arguments; })() threw exception TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mo de functions or the arguments objects for calls to them.
91 PASS (function f(arg){'use strict'; f.caller; })() threw exception TypeError: 'c aller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them.
92 PASS (function f(arg){'use strict'; f.arguments=5; })() threw exception TypeErro r: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them.
93 PASS (function f(arg){'use strict'; f.caller=5; })() threw exception TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mod e functions or the arguments objects for calls to them.
94 PASS "caller" in function(){"use strict"} is true
95 PASS (function(){"use strict";}).hasOwnProperty("caller") is true
96 PASS "arguments" in function(){"use strict"} is true
97 PASS (function(){"use strict";}).hasOwnProperty("arguments") is true
98 PASS 'use strict'; (function (){with(1){};}) threw exception SyntaxError: Strict mode code may not include a with statement.
99 PASS (function(){'use strict'; (function (){with(1){};})}) threw exception Synta xError: Strict mode code may not include a with statement.
100 PASS 'use strict'; (function (){var a; delete a;}) threw exception SyntaxError: Delete of an unqualified identifier in strict mode..
101 PASS (function(){'use strict'; (function (){var a; delete a;})}) threw exception SyntaxError: Delete of an unqualified identifier in strict mode..
102 PASS 'use strict'; var a; (function (){ delete a;}) threw exception SyntaxError: Delete of an unqualified identifier in strict mode..
103 PASS (function(){'use strict'; var a; (function (){ delete a;})}) threw exceptio n SyntaxError: Delete of an unqualified identifier in strict mode..
104 PASS var a; (function (){ 'use strict'; delete a;}) threw exception SyntaxError: Delete of an unqualified identifier in strict mode..
105 PASS (function(){var a; (function (){ 'use strict'; delete a;})}) threw exceptio n SyntaxError: Delete of an unqualified identifier in strict mode..
106 PASS 'misc directive'; 'use strict'; with({}){} threw exception SyntaxError: Str ict mode code may not include a with statement.
107 PASS (function(){'misc directive'; 'use strict'; with({}){}}) threw exception Sy ntaxError: Strict mode code may not include a with statement.
108 PASS 'use strict'; return threw exception SyntaxError: Illegal return statement.
109 PASS 'use strict'; break threw exception SyntaxError: Illegal break statement.
110 PASS (function(){'use strict'; break}) threw exception SyntaxError: Illegal brea k statement.
111 PASS 'use strict'; continue threw exception SyntaxError: Illegal continue statem ent.
112 PASS (function(){'use strict'; continue}) threw exception SyntaxError: Illegal c ontinue statement.
113 PASS 'use strict'; for(;;)return threw exception SyntaxError: Illegal return sta tement.
114 PASS 'use strict'; for(;;)break missingLabel threw exception SyntaxError: Undefi ned label 'missingLabel'.
115 PASS (function(){'use strict'; for(;;)break missingLabel}) threw exception Synta xError: Undefined label 'missingLabel'.
116 PASS 'use strict'; for(;;)continue missingLabel threw exception SyntaxError: Und efined label 'missingLabel'.
117 PASS (function(){'use strict'; for(;;)continue missingLabel}) threw exception Sy ntaxError: Undefined label 'missingLabel'.
118 PASS 'use strict'; 007; threw exception SyntaxError: Octal literals are not allo wed in strict mode..
119 PASS (function(){'use strict'; 007;}) threw exception SyntaxError: Octal literal s are not allowed in strict mode..
120 PASS 'use strict'; '\007'; threw exception SyntaxError: Octal literals are not a llowed in strict mode..
121 PASS (function(){'use strict'; '\007';}) threw exception SyntaxError: Octal lite rals are not allowed in strict mode..
122 PASS '\007'; 'use strict'; threw exception SyntaxError: Octal literals are not a llowed in strict mode..
123 PASS (function(){'\007'; 'use strict';}) threw exception SyntaxError: Octal lite rals are not allowed in strict mode..
124 PASS 'use strict'; delete aDeletableProperty; threw exception SyntaxError: Delet e of an unqualified identifier in strict mode..
125 PASS (function(){'use strict'; delete aDeletableProperty;}) threw exception Synt axError: Delete of an unqualified identifier in strict mode..
126 PASS 'use strict'; (function (){ delete someDeclaredGlobal;}) threw exception Sy ntaxError: Delete of an unqualified identifier in strict mode..
127 PASS (function(){'use strict'; (function (){ delete someDeclaredGlobal;})}) thre w exception SyntaxError: Delete of an unqualified identifier in strict mode..
128 PASS (function (){ 'use strict'; delete someDeclaredGlobal;}) threw exception Sy ntaxError: Delete of an unqualified identifier in strict mode..
129 PASS (function(){(function (){ 'use strict'; delete someDeclaredGlobal;})}) thre w exception SyntaxError: Delete of an unqualified identifier in strict mode..
130 PASS 'use strict'; if (0) { someGlobal = 'Shouldn\'t be able to assign this.'; } ; true; is true
131 PASS 'use strict'; someGlobal = 'Shouldn\'t be able to assign this.'; threw exc eption ReferenceError: someGlobal is not defined.
132 FAIL 'use strict'; (function f(){ f = 'shouldn\'t be able to assign to function expression name'; })() should throw an exception. Was undefined.
133 PASS 'use strict'; eval('var introducedVariable = "FAIL: variable introduced int o containing scope";'); introducedVariable threw exception ReferenceError: intro ducedVariable is not defined.
134 PASS 'use strict'; objectWithReadonlyProperty.prop = 'fail' threw exception Type Error: Cannot assign to read only property 'prop' of #<Object>.
135 PASS 'use strict'; delete objectWithReadonlyProperty.prop threw exception TypeEr ror: Cannot delete property 'prop' of #<Object>.
136 PASS 'use strict'; delete objectWithReadonlyProperty[readonlyPropName] threw exc eption TypeError: Cannot delete property 'prop' of #<Object>.
137 PASS 'use strict'; ++eval threw exception SyntaxError: Prefix increment/decremen t may not have eval or arguments operand in strict mode.
138 PASS (function(){'use strict'; ++eval}) threw exception SyntaxError: Prefix incr ement/decrement may not have eval or arguments operand in strict mode.
139 PASS 'use strict'; eval++ threw exception SyntaxError: Prefix increment/decremen t may not have eval or arguments operand in strict mode.
140 PASS (function(){'use strict'; eval++}) threw exception SyntaxError: Prefix incr ement/decrement may not have eval or arguments operand in strict mode.
141 PASS 'use strict'; --eval threw exception SyntaxError: Prefix increment/decremen t may not have eval or arguments operand in strict mode.
142 PASS (function(){'use strict'; --eval}) threw exception SyntaxError: Prefix incr ement/decrement may not have eval or arguments operand in strict mode.
143 PASS 'use strict'; eval-- threw exception SyntaxError: Prefix increment/decremen t may not have eval or arguments operand in strict mode.
144 PASS (function(){'use strict'; eval--}) threw exception SyntaxError: Prefix incr ement/decrement may not have eval or arguments operand in strict mode.
145 PASS 'use strict'; function f() { ++arguments } threw exception SyntaxError: Pre fix increment/decrement may not have eval or arguments operand in strict mode.
146 PASS (function(){'use strict'; function f() { ++arguments }}) threw exception Sy ntaxError: Prefix increment/decrement may not have eval or arguments operand in strict mode.
147 PASS 'use strict'; function f() { arguments++ } threw exception SyntaxError: Pre fix increment/decrement may not have eval or arguments operand in strict mode.
148 PASS (function(){'use strict'; function f() { arguments++ }}) threw exception Sy ntaxError: Prefix increment/decrement may not have eval or arguments operand in strict mode.
149 PASS 'use strict'; function f() { --arguments } threw exception SyntaxError: Pre fix increment/decrement may not have eval or arguments operand in strict mode.
150 PASS (function(){'use strict'; function f() { --arguments }}) threw exception Sy ntaxError: Prefix increment/decrement may not have eval or arguments operand in strict mode.
151 PASS 'use strict'; function f() { arguments-- } threw exception SyntaxError: Pre fix increment/decrement may not have eval or arguments operand in strict mode.
152 PASS (function(){'use strict'; function f() { arguments-- }}) threw exception Sy ntaxError: Prefix increment/decrement may not have eval or arguments operand in strict mode.
153 PASS global.eval('"use strict"; if (0) ++arguments; true;') threw exception Synt axError: Prefix increment/decrement may not have eval or arguments operand in st rict mode.
154 PASS 'use strict'; ++(1, eval) threw exception ReferenceError: Invalid left-hand side expression in prefix operation.
155 FAIL (function(){'use strict'; ++(1, eval)}) should throw an exception. Was func tion (){'use strict'; ++(1, eval)}.
156 PASS 'use strict'; (1, eval)++ threw exception ReferenceError: Invalid left-hand side expression in postfix operation.
157 FAIL (function(){'use strict'; (1, eval)++}) should throw an exception. Was func tion (){'use strict'; (1, eval)++}.
158 PASS 'use strict'; --(1, eval) threw exception ReferenceError: Invalid left-hand side expression in prefix operation.
159 FAIL (function(){'use strict'; --(1, eval)}) should throw an exception. Was func tion (){'use strict'; --(1, eval)}.
160 PASS 'use strict'; (1, eval)-- threw exception ReferenceError: Invalid left-hand side expression in postfix operation.
161 FAIL (function(){'use strict'; (1, eval)--}) should throw an exception. Was func tion (){'use strict'; (1, eval)--}.
162 FAIL 'use strict'; function f() { ++(1, arguments) } should throw an exception. Was use strict.
163 FAIL (function(){'use strict'; function f() { ++(1, arguments) }}) should throw an exception. Was function (){'use strict'; function f() { ++(1, arguments) }}.
164 FAIL 'use strict'; function f() { (1, arguments)++ } should throw an exception. Was use strict.
165 FAIL (function(){'use strict'; function f() { (1, arguments)++ }}) should throw an exception. Was function (){'use strict'; function f() { (1, arguments)++ }}.
166 FAIL 'use strict'; function f() { --(1, arguments) } should throw an exception. Was use strict.
167 FAIL (function(){'use strict'; function f() { --(1, arguments) }}) should throw an exception. Was function (){'use strict'; function f() { --(1, arguments) }}.
168 FAIL 'use strict'; function f() { (1, arguments)-- } should throw an exception. Was use strict.
169 FAIL (function(){'use strict'; function f() { (1, arguments)-- }}) should throw an exception. Was function (){'use strict'; function f() { (1, arguments)-- }}.
170 FAIL 'use strict'; if (0) delete +a.b should throw an exception. Was use strict.
171 FAIL (function(){'use strict'; if (0) delete +a.b}) should throw an exception. W as function (){'use strict'; if (0) delete +a.b}.
172 FAIL 'use strict'; if (0) delete ++a.b should throw an exception. Was use strict .
173 FAIL (function(){'use strict'; if (0) delete ++a.b}) should throw an exception. Was function (){'use strict'; if (0) delete ++a.b}.
174 FAIL 'use strict'; if (0) delete void a.b should throw an exception. Was use str ict.
175 FAIL (function(){'use strict'; if (0) delete void a.b}) should throw an exceptio n. Was function (){'use strict'; if (0) delete void a.b}.
176 PASS (function (a){'use strict'; a = false; return a !== arguments[0]; })(true) is true
177 PASS (function (a){'use strict'; arguments[0] = false; return a !== arguments[0] ; })(true) is true
178 PASS (function (a){'use strict'; a=false; return arguments; })(true)[0] is true
179 PASS (function (a){'use strict'; arguments[0]=false; return a; })(true) is true
180 PASS (function (a){'use strict'; arguments[0]=true; return arguments; })(false)[ 0] is true
181 PASS (function (){'use strict'; arguments[0]=true; return arguments; })(false)[ 0] is true
182 PASS (function (a){'use strict'; arguments[0]=true; a=false; return arguments; } )()[0] is true
183 PASS (function (a){'use strict'; arguments[0]=false; a=true; return a; })() is t rue
184 PASS (function (a){'use strict'; arguments[0]=true; return arguments; })()[0] is true
185 PASS (function (){'use strict'; arguments[0]=true; return arguments; })()[0] is true
186 PASS (function (a){'use strict'; var local; (function (){local;})(); a = false; return a !== arguments[0]; })(true) is true
187 PASS (function (a){'use strict'; var local; (function (){local;})(); arguments[0 ] = false; return a !== arguments[0]; })(true) is true
188 PASS (function (a){'use strict'; var local; (function (){local;})(); a=false; re turn arguments; })(true)[0] is true
189 PASS (function (a){'use strict'; var local; (function (){local;})(); arguments[0 ]=false; return a; })(true) is true
190 PASS (function (a){'use strict'; var local; (function (){local;})(); arguments[0 ]=true; return arguments; })(false)[0] is true
191 PASS (function (){'use strict'; var local; (function (){local;})(); arguments[0 ]=true; return arguments; })(false)[0] is true
192 PASS (function (a){'use strict'; var local; (function (){local;})(); arguments[0 ]=true; a=false; return arguments; })()[0] is true
193 PASS (function (a){'use strict'; var local; (function (){local;})(); arguments[0 ]=true; return arguments; })()[0] is true
194 PASS (function (a){'use strict'; var local; (function (){local;})(); arguments[0 ]=false; a=true; return a; })() is true
195 PASS (function (){'use strict'; var local; (function (){local;})(); arguments[0 ]=true; return arguments; })()[0] is true
196 PASS 'use strict'; (function (){var a = true; eval('var a = false'); return a; } )() is true
197 PASS (function (){var a = true; eval('"use strict"; var a = false'); return a; } )() is true
198 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(f, 'a rguments').value; })() is undefined.
199 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(f, 'c aller').value; })() is undefined.
200 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(argum ents, 'callee').value; })() is undefined.
201 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(argum ents, 'caller').value; })() is undefined.
202 PASS (function f(arg){'use strict'; var descriptor = Object.getOwnPropertyDescri ptor(arguments, 'caller'); return descriptor.get === descriptor.set; })() is tru e
203 PASS (function f(arg){'use strict'; var descriptor = Object.getOwnPropertyDescri ptor(arguments, 'callee'); return descriptor.get === descriptor.set; })() is tru e
204 PASS (function f(arg){'use strict'; var descriptor = Object.getOwnPropertyDescri ptor(f, 'caller'); return descriptor.get === descriptor.set; })() is true
205 PASS (function f(arg){'use strict'; var descriptor = Object.getOwnPropertyDescri ptor(f, 'arguments'); return descriptor.get === descriptor.set; })() is true
206 PASS 'use strict'; (function f() { for(var i in this); })(); true; is true
207 PASS 'use strict'̻ threw exception SyntaxError: Unexpected token ILLEGAL.
208 PASS (function(){'use strict'̻}) threw exception SyntaxError: Unexpected token I LLEGAL.
209 PASS 'use strict'5.f threw exception SyntaxError: Unexpected token ILLEGAL.
210 PASS (function(){'use strict'5.f}) threw exception SyntaxError: Unexpected token ILLEGAL.
211 PASS 'use strict';̻ threw exception SyntaxError: Unexpected token ILLEGAL.
212 PASS (function(){'use strict';̻}) threw exception SyntaxError: Unexpected token ILLEGAL.
213 PASS 'use strict';5.f threw exception SyntaxError: Unexpected token ILLEGAL.
214 PASS (function(){'use strict';5.f}) threw exception SyntaxError: Unexpected toke n ILLEGAL.
215 PASS 'use strict';1-(eval=1); threw exception SyntaxError: Assignment to eval or arguments is not allowed in strict mode.
216 PASS (function(){'use strict';1-(eval=1);}) threw exception SyntaxError: Assignm ent to eval or arguments is not allowed in strict mode.
217 PASS 'use strict';arguments=1; threw exception SyntaxError: Assignment to eval o r arguments is not allowed in strict mode.
218 PASS (function(){'use strict';arguments=1;}) threw exception SyntaxError: Assign ment to eval or arguments is not allowed in strict mode.
219 PASS 'use strict';1-(arguments=1); threw exception SyntaxError: Assignment to ev al or arguments is not allowed in strict mode.
220 PASS (function(){'use strict';1-(arguments=1);}) threw exception SyntaxError: As signment to eval or arguments is not allowed in strict mode.
221 PASS 'use strict';var a=(eval=1); threw exception SyntaxError: Assignment to eva l or arguments is not allowed in strict mode.
222 PASS (function(){'use strict';var a=(eval=1);}) threw exception SyntaxError: Ass ignment to eval or arguments is not allowed in strict mode.
223 PASS 'use strict';var a=(arguments=1); threw exception SyntaxError: Assignment t o eval or arguments is not allowed in strict mode.
224 PASS (function(){'use strict';var a=(arguments=1);}) threw exception SyntaxError : Assignment to eval or arguments is not allowed in strict mode.
225 PASS 'use strict'; try { throw 1; } catch (e) { aGlobal = true; } is true
226 PASS 'use strict'; (function () { try { throw 1; } catch (e) { aGlobal = true; } })(); aGlobal; is true
227 PASS (function () {'use strict'; try { throw 1; } catch (e) { aGlobal = true; } })(); aGlobal; is true
228 PASS try { throw 1; } catch (e) { aGlobal = true; } is true
229 PASS (function () { try { throw 1; } catch (e) { aGlobal = true; }})(); aGlobal; is true
230 PASS (function () {try { throw 1; } catch (e) { aGlobal = true; }})(); aGlobal; is true
231 FAIL String(Object.getOwnPropertyDescriptor(function() { "use strict"; }, "calle r").get) should be function () {
232 [native code]
233 }. Was function ThrowTypeError() { [native code] }.
234 PASS successfullyParsed is true
235
236 TEST COMPLETE
237
OLDNEW
« no previous file with comments | « test/webkit/fast/js/basic-strict-mode.js ('k') | test/webkit/fast/js/caller-property.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698