blob: 9ae20fed9c77d651159d7943d1bbeb06cc755ea1 (
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
|
function g() {}
function h() {
for (var i = 0; i < 9; i++)
x.f = i;
}
function j() {
x.f();
}
var x = {f: 0.7, g: g};
x.g(); // interpreter brands x
h();
print(shapeOf(x));
x.f = function (){}; // does not change x's shape
j();
print(shapeOf(x));
h(); // should change x's shape
var thrown = 'none';
try {
j(); // should throw since x.f === 8
} catch (exc) {
thrown = exc.name;
}
assertEq(thrown, 'TypeError');
|