OLD | NEW |
| (Empty) |
1 // Copyright 2014 the V8 project authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // Flags: --allow-natives-syntax --expose-natives-as=builtins --expose-gc | |
6 | |
7 var SetIterator = builtins.ImportNow("SetIterator"); | |
8 var MapIterator = builtins.ImportNow("MapIterator"); | |
9 var __v_7 = []; | |
10 var __v_8 = {}; | |
11 var __v_10 = {}; | |
12 var __v_11 = this; | |
13 var __v_12 = {}; | |
14 var __v_13 = {}; | |
15 var __v_14 = ""; | |
16 var __v_15 = {}; | |
17 try { | |
18 __v_1 = {x:0}; | |
19 %OptimizeFunctionOnNextCall(__f_1); | |
20 assertEquals("good", __f_1()); | |
21 delete __v_1.x; | |
22 assertEquals("good", __f_1()); | |
23 } catch(e) { print("Caught: " + e); } | |
24 try { | |
25 __v_3 = new Set(); | |
26 __v_5 = new SetIterator(__v_3, -12); | |
27 __v_4 = new Map(); | |
28 __v_6 = new MapIterator(__v_4, 2); | |
29 __f_3(Array); | |
30 } catch(e) { print("Caught: " + e); } | |
31 function __f_4(__v_8, filter) { | |
32 function __f_6(v) { | |
33 for (var __v_4 in v) { | |
34 for (var __v_4 in v) {} | |
35 } | |
36 %OptimizeFunctionOnNextCall(filter); | |
37 return filter(v); | |
38 } | |
39 var __v_7 = eval(__v_8); | |
40 gc(); | |
41 return __f_6(__v_7); | |
42 } | |
43 function __f_5(__v_6) { | |
44 var __v_5 = new Array(__v_6); | |
45 for (var __v_4 = 0; __v_4 < __v_6; __v_4++) __v_5.push('{}'); | |
46 return __v_5; | |
47 } | |
48 try { | |
49 try { | |
50 __v_8.test("\x80"); | |
51 assertUnreachable(); | |
52 } catch (e) { | |
53 } | |
54 gc(); | |
55 } catch(e) { print("Caught: " + e); } | |
OLD | NEW |