summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/basic/testBug501690.js
blob: 9fa65b6c245faeead0a6608ffb35e9f487dc7e34 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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();