<p>This page verifies that function parameters cannot be deleted.</p>
<pre id="console"></pre>
<script>
if (window.testRunner)
    testRunner.dumpAsText();

function log(s)
{
    document.getElementById("console").appendChild(document.createTextNode(s + "\n"));
}

function f(x)
{
    delete x;
    try {
        x; // This line will throw an exception if x has been deleted.
        log("PASS: Function parameter not deleted.");
    } catch(e) {
        log("FAIL: Function parameter deleted (" + e + ").");
    }
}
f();
eval("f()");
</script>
