/*
 *  There is a bug filed at:
 *
 *    https://bugs.ecmascript.org/show_bug.cgi?id=8
 *
 *  The bug is about the expression:
 *
 *    do{;}while(false)false
 *
 *  which is prohibited in the specification but allowed in actual
 *  implementations.  The syntax error is that a do statement is
 *  supposed to be followed by a semicolon and since there is no
 *  newline following the right parenthesis, an automatic semicolon
 *  should not be allowed.
 */

/*===
OK
===*/

try {
    eval("do{;}while(false)false");
    print("OK");
} catch (e) {
    print(e.name);
}

