<!DOCTYPE html>
<html>
<body>
<script src="../../resources/js-test-pre.js"></script>
<script>

description("Tests what happens when you make prototype chain accesses with impure GetOwnPropertySlot traps in the way.");

var obj = {};
obj.__proto__ = document;

function f() {
    return obj.getElementsByTagName;
}

var expected = "\"function\"";
for (var i = 0; i < 40; ++i) {
    if (i == 35) {
        var img = new Image();
        img.name = "getElementsByTagName";
        document.body.appendChild(img);
        expected = "\"object\"";
    }
    shouldBe("typeof f()", expected);
}

</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>
