function testBug501690() { | |
// Property cache assertion when 3 objects along a prototype chain have the same shape. | |
function B(){} | |
B.prototype = {x: 123}; | |
function D(){} | |
D.prototype = new B; | |
D.prototype.x = 1; // [1] shapeOf(B.prototype) == shapeOf(D.prototype) | |
arr = [new D, new D, new D, D.prototype]; // [2] all the same shape | |
for (var i = 0; i < 4; i++) | |
assertEq(arr[i].x, 1); // same kshape [2], same vshape [1] | |
} | |
testBug501690(); |