The following JavaLex input file is in error; an undefined macro is referenced in the rules section. However, JavaLex generates errors into infinity, which it shouldn't do. -- Elliot **************************************************************************** // // (c) Copyright 1996 PrinceNet, Inc. // All Rights Reserved. // // ------------------------------------------------------------------ // import java.io.*; %% %type java_cup.runtime.Symbol %char %line %{ int firstCharinLine; int tabs = 0; boolean MacroHeaderDetected = false; private int stringstart; private StringBuffer charBuf = null; private java_cup.runtime.Symbol tok(int kind) { return new java_cup.runtime.Symbol(kind, yychar, yychar+yylength()); } private java_cup.runtime.Symbol tok(int kind, Object o) { return new java_cup.runtime.Symbol(kind, yychar, yychar+yylength(), o); } private void error(int line, String text) { System.out.println("Invalid text on line " + line + " " + text); } %} %eofval{ return tok(sym.EOF); %eofval} %% '{' { return tok(sym.LBRACE); } \} { return tok(sym.RBRACE); } " " { } \n { firstCharinLine = yychar+1; } . { error(yyline+1, yytext()); }