description(
"This test checks that toString() round-trip on a function that has do..while in JavaScript does not insert extra semicolon."
);

function f1() {
    do {} while(0);
}

function f2() {
    do {} while(0)
}

function f3() {
    do {} while(0)   ;
}

function f4() {
    do {} while(0)  /*empty*/ ;
}



if (typeof uneval == "undefined")
    uneval = function(x) { return '(' + x.toString()+ ')'; }


uf1 = uneval(f1);
ueuf1 = uneval(eval(uneval(f1)));

uf2 = uneval(f2);
ueuf2 = uneval(eval(uneval(f2)));

uf3 = uneval(f3);
ueuf3 = uneval(eval(uneval(f3)));

uf4 = uneval(f4);
ueuf4 = uneval(eval(uneval(f4)));



shouldBe("ueuf1", "uf1");
shouldBe("ueuf2", "uf2");
shouldBe("ueuf3", "uf3");
shouldBe("ueuf4", "uf4");
