--- old/src/share/classes/com/sun/tools/javac/parser/Scanner.java 2009-12-27 19:02:20.000000000 +0100 +++ new/src/share/classes/com/sun/tools/javac/parser/Scanner.java 2009-12-27 19:02:20.000000000 +0100 @@ -1008,8 +1008,9 @@ } return; case '#': - scanChar(); - if (ch == '\"') { + // lookahead one character + if (buf[bp + 1] == '\"') { + scanChar(); scanChar(); if (ch == '\"') lexError(pos, "empty.bytecode.ident"); @@ -1024,7 +1025,8 @@ lexError(pos, "unclosed.bytecode.ident"); } } else { - lexError("illegal.char", String.valueOf((int)'#')); + //lexError("illegal.char", String.valueOf((int)'#')); + scanOperator(); } return; default: