<p>This page tests the evaluated value of a do-while expression.</p>
<pre id="console"></pre>

<script>
if (window.testRunner)
    testRunner.dumpAsText();

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

function shouldBe(a, b)
{
    var evalA;
    try {
        evalA = eval(a);
    } catch(e) {
        evalA = e;
    }
    
    if (evalA === b) {
        log("PASS: " + a + " should be " + b + " and is.");
    } else {
        log("FAIL: " + a + " should be " + b + " but instead is " + evalA + ".");
    }
}

var x;

x = eval("do { 1; } while(0);");
shouldBe("x", 1);

var x = eval("do { 1; break; } while(0);");
shouldBe("x", 1);

var x = eval("do { 1; continue; } while(0);");
shouldBe("x", 1);

var x = eval("do { 1; ; } while(0);");
shouldBe("x", 1);

</script>
