<!DOCTYPE html>
<html>
<head>
<script src="../../js/resources/js-test-pre.js"></script>
</head>
<body>
<div id="test">
    <div id="console"></div>
</body>
<script>
window.jsTestIsAsync = true;

var form, input, str;

window.onload = function()
{
    form = document.body.appendChild(document.createElement("form"));
    form.id = "form";
  
    input = document.createElement("input");
    input.id = "input";
    input.setAttribute("form", "form");
    form.elements.namedItem("input");
  
    input = null;

    gc();
    setTimeout(step2, 100);
}

function step2()
{
    try {
        str = typeof form['input'].form;
    } catch(e) {
        str = 'threw exception';
    }
    shouldBe("str", "'threw exception'");
    finishJSTest();
}

window.successfullyParsed = true;
</script>
<script src="../../js/resources/js-test-post.js"></script>
</html>
