OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Flags: --allow-natives-syntax --turbo | 5 // Flags: --allow-natives-syntax --harmony-tailcalls |
6 | 6 |
7 function f() { | 7 function f() { |
8 var o = {}; | 8 "use strict"; |
9 o.a = 1; | 9 return undefined(0, 0); |
10 } | 10 } |
11 function g() { | 11 function g() { |
12 var o = { ['a']: function(){} }; | 12 return f(); |
13 f(); | |
14 } | 13 } |
15 f(); | 14 assertThrows(g, TypeError); |
16 f(); | 15 assertThrows(g, TypeError); |
17 %OptimizeFunctionOnNextCall(g); | 16 %OptimizeFunctionOnNextCall(g); |
18 g(); | 17 assertThrows(g, TypeError); |
OLD | NEW |