OLD | NEW |
1 # Copyright 2013 the V8 project authors. All rights reserved. | 1 # Copyright 2013 the V8 project authors. All rights reserved. |
2 # Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. | 2 # Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. |
3 # | 3 # |
4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
5 # modification, are permitted provided that the following conditions | 5 # modification, are permitted provided that the following conditions |
6 # are met: | 6 # are met: |
7 # 1. Redistributions of source code must retain the above copyright | 7 # 1. Redistributions of source code must retain the above copyright |
8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
9 # 2. Redistributions in binary form must reproduce the above copyright | 9 # 2. Redistributions in binary form must reproduce the above copyright |
10 # notice, this list of conditions and the following disclaimer in the | 10 # notice, this list of conditions and the following disclaimer in the |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 PASS (function (a){'use strict'; delete a;})() threw exception SyntaxError: Dele
te of an unqualified identifier in strict mode.. | 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.. | 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.. | 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.. | 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.. | 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.. | 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. | 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. | 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. | 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. | 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. | 84 PASS (function f(){'use strict'; f.arguments; })() threw exception TypeError: 'c
aller' and 'arguments' are restricted function properties and cannot be accessed
in this context.. |
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. | 85 PASS (function f(){'use strict'; f.caller; })() threw exception TypeError: 'call
er' and 'arguments' are restricted function properties and cannot be accessed in
this context.. |
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. | 86 PASS (function f(){'use strict'; f.arguments=5; })() threw exception TypeError:
'caller' and 'arguments' are restricted function properties and cannot be access
ed in this context.. |
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. | 87 PASS (function f(){'use strict'; f.caller=5; })() threw exception TypeError: 'ca
ller' and 'arguments' are restricted function properties and cannot be accessed
in this context.. |
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. | 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. | 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. | 90 PASS (function f(arg){'use strict'; f.arguments; })() threw exception TypeError:
'caller' and 'arguments' are restricted function properties and cannot be acces
sed in this context.. |
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. | 91 PASS (function f(arg){'use strict'; f.caller; })() threw exception TypeError: 'c
aller' and 'arguments' are restricted function properties and cannot be accessed
in this context.. |
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. | 92 PASS (function f(arg){'use strict'; f.arguments=5; })() threw exception TypeErro
r: 'caller' and 'arguments' are restricted function properties and cannot be acc
essed in this context.. |
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. | 93 PASS (function f(arg){'use strict'; f.caller=5; })() threw exception TypeError:
'caller' and 'arguments' are restricted function properties and cannot be access
ed in this context.. |
94 PASS "caller" in function(){"use strict"} is true | 94 PASS "caller" in function(){"use strict"} is true |
95 PASS (function(){"use strict";}).hasOwnProperty("caller") is true | 95 PASS (function(){"use strict";}).hasOwnProperty("caller") is false |
| 96 PASS (function(){"use strict";}).__proto__.hasOwnProperty("caller") is true |
96 PASS "arguments" in function(){"use strict"} is true | 97 PASS "arguments" in function(){"use strict"} is true |
97 PASS (function(){"use strict";}).hasOwnProperty("arguments") is true | 98 PASS (function(){"use strict";}).hasOwnProperty("arguments") is false |
| 99 PASS (function(){"use strict";}).__proto__.hasOwnProperty("arguments") is true |
98 PASS 'use strict'; (function (){with(1){};}) threw exception SyntaxError: Strict
mode code may not include a with statement. | 100 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. | 101 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.. | 102 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.. | 103 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.. | 104 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.. | 105 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.. | 106 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.. | 107 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. | 108 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. | 109 PASS (function(){'misc directive'; 'use strict'; with({}){}}) threw exception Sy
ntaxError: Strict mode code may not include a with statement. |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 PASS (function (a){'use strict'; var local; (function (){local;})(); a=false; re
turn arguments; })(true)[0] is true | 190 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 | 191 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 | 192 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 | 193 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 | 194 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 | 195 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 | 196 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 | 197 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 | 198 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 | 199 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. | 200 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(f.__p
roto__, 'arguments').value; })() is undefined. |
199 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(f, 'c
aller').value; })() is undefined. | 201 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(f.__p
roto__, 'caller').value; })() is undefined. |
200 PASS (function f(arg){'use strict'; return Object.getOwnPropertyDescriptor(argum
ents, 'callee').value; })() is undefined. | 202 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. | 203 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 | 204 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 | 205 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 | 206 PASS (function f(arg){'use strict'; var descriptor = Object.getOwnPropertyDescri
ptor(f.__proto__, 'caller'); return descriptor.get === descriptor.set; })() is t
rue |
205 PASS (function f(arg){'use strict'; var descriptor = Object.getOwnPropertyDescri
ptor(f, 'arguments'); return descriptor.get === descriptor.set; })() is true | 207 PASS (function f(arg){'use strict'; var descriptor = Object.getOwnPropertyDescri
ptor(f.__proto__, 'arguments'); return descriptor.get === descriptor.set; })() i
s true |
206 PASS 'use strict'; (function f() { for(var i in this); })(); true; is true | 208 PASS 'use strict'; (function f() { for(var i in this); })(); true; is true |
207 PASS 'use strict'̻ threw exception SyntaxError: Unexpected token ILLEGAL. | 209 PASS 'use strict'̻ threw exception SyntaxError: Unexpected token ILLEGAL. |
208 PASS (function(){'use strict'̻}) threw exception SyntaxError: Unexpected token I
LLEGAL. | 210 PASS (function(){'use strict'̻}) threw exception SyntaxError: Unexpected token I
LLEGAL. |
209 PASS 'use strict'5.f threw exception SyntaxError: Unexpected token ILLEGAL. | 211 PASS 'use strict'5.f threw exception SyntaxError: Unexpected token ILLEGAL. |
210 PASS (function(){'use strict'5.f}) threw exception SyntaxError: Unexpected token
ILLEGAL. | 212 PASS (function(){'use strict'5.f}) threw exception SyntaxError: Unexpected token
ILLEGAL. |
211 PASS 'use strict';̻ threw exception SyntaxError: Unexpected token ILLEGAL. | 213 PASS 'use strict';̻ threw exception SyntaxError: Unexpected token ILLEGAL. |
212 PASS (function(){'use strict';̻}) threw exception SyntaxError: Unexpected token
ILLEGAL. | 214 PASS (function(){'use strict';̻}) threw exception SyntaxError: Unexpected token
ILLEGAL. |
213 PASS 'use strict';5.f threw exception SyntaxError: Unexpected token ILLEGAL. | 215 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. | 216 PASS (function(){'use strict';5.f}) threw exception SyntaxError: Unexpected toke
n ILLEGAL. |
215 PASS 'use strict';1-(eval=1); threw exception SyntaxError: Unexpected eval or ar
guments in strict mode. | 217 PASS 'use strict';1-(eval=1); threw exception SyntaxError: Unexpected eval or ar
guments in strict mode. |
216 PASS (function(){'use strict';1-(eval=1);}) threw exception SyntaxError: Unexpec
ted eval or arguments in strict mode. | 218 PASS (function(){'use strict';1-(eval=1);}) threw exception SyntaxError: Unexpec
ted eval or arguments in strict mode. |
217 PASS 'use strict';arguments=1; threw exception SyntaxError: Unexpected eval or a
rguments in strict mode. | 219 PASS 'use strict';arguments=1; threw exception SyntaxError: Unexpected eval or a
rguments in strict mode. |
218 PASS (function(){'use strict';arguments=1;}) threw exception SyntaxError: Unexpe
cted eval or arguments in strict mode. | 220 PASS (function(){'use strict';arguments=1;}) threw exception SyntaxError: Unexpe
cted eval or arguments in strict mode. |
219 PASS 'use strict';1-(arguments=1); threw exception SyntaxError: Unexpected eval
or arguments in strict mode. | 221 PASS 'use strict';1-(arguments=1); threw exception SyntaxError: Unexpected eval
or arguments in strict mode. |
220 PASS (function(){'use strict';1-(arguments=1);}) threw exception SyntaxError: Un
expected eval or arguments in strict mode. | 222 PASS (function(){'use strict';1-(arguments=1);}) threw exception SyntaxError: Un
expected eval or arguments in strict mode. |
221 PASS 'use strict';var a=(eval=1); threw exception SyntaxError: Unexpected eval o
r arguments in strict mode. | 223 PASS 'use strict';var a=(eval=1); threw exception SyntaxError: Unexpected eval o
r arguments in strict mode. |
222 PASS (function(){'use strict';var a=(eval=1);}) threw exception SyntaxError: Une
xpected eval or arguments in strict mode. | 224 PASS (function(){'use strict';var a=(eval=1);}) threw exception SyntaxError: Une
xpected eval or arguments in strict mode. |
223 PASS 'use strict';var a=(arguments=1); threw exception SyntaxError: Unexpected e
val or arguments in strict mode. | 225 PASS 'use strict';var a=(arguments=1); threw exception SyntaxError: Unexpected e
val or arguments in strict mode. |
224 PASS (function(){'use strict';var a=(arguments=1);}) threw exception SyntaxError
: Unexpected eval or arguments in strict mode. | 226 PASS (function(){'use strict';var a=(arguments=1);}) threw exception SyntaxError
: Unexpected eval or arguments in strict mode. |
225 PASS 'use strict'; try { throw 1; } catch (e) { aGlobal = true; } is true | 227 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 | 228 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 | 229 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 | 230 PASS try { throw 1; } catch (e) { aGlobal = true; } is true |
229 PASS (function () { try { throw 1; } catch (e) { aGlobal = true; }})(); aGlobal;
is true | 231 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 | 232 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 () { | 233 FAIL String(Object.getOwnPropertyDescriptor((function() { "use strict"; }).__pro
to__, "caller").get) should be function () { |
232 [native code] | 234 [native code] |
233 }. Was function ThrowTypeError() { [native code] }. | 235 }. Was function ThrowTypeError() { [native code] }. |
234 PASS successfullyParsed is true | 236 PASS successfullyParsed is true |
235 | 237 |
236 TEST COMPLETE | 238 TEST COMPLETE |
237 | 239 |
OLD | NEW |