<!DOCTYPE html>
<html>
<body>
<div id="console"></div>
<style>
div { -webkit-column-count: 1; }
h2 { -webkit-column-span: all; }
</style>
<script src="../../resources/js-test-pre.js"></script>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
}

function runTest()
{
    document.body.offsetTop;
    child = document.getElementById('test');
    child.parentNode.removeChild(child);
    child = document.getElementById('anything');
    gc();
    document.body.innerHTML = "PASS";

    if (window.testRunner)
        testRunner.notifyDone();
}

setTimeout("runTest()", 0);
</script>
<script src="../../resources/js-test-post.js"></script>
<div>
<span id="test"><h2></span>
</div>
</body>
</html>