Hi Doug: Why does the latest version give a failure in: /proj/adaptive/www/sources/DemeterJava/examples/j-constr+alt-edges This worked in 4.3 and earlier. -- Karl demjava -code -outputdir ./gen program Parsing program.cd... Building hashtable of classes... Expanding parameterized classes... Converting repetition classes... Filling in part names... Setting inheritance links... Parsing program.beh... Gathering methods... Expanding traversals... Expanding toClassName... Expanding toAllSubclasses... Generating Java code to ./gen... Done. demjava -grammar -outputdir ./gen program Parsing program.cd... Building hashtable of classes... Expanding parameterized classes... Converting repetition classes... Filling in part names... Setting inheritance links... Generating grammar to ./gen/program.jack... Done. (cd ./gen; jack program.jack) Jack Version 0.5. Copyright (c) 1996 Sun Microsystems Inc. (type "jack" with no arguments for help) Reading from file program.jack . . . Parser generated successfully. CLASSPATH=./gen:$CLASSPATH javac -d ./gen gen/ASCII_UCodeESC_CharStream.java gen/EdgeDistinctionVisitor.java gen/Main.java gen/Parser.java gen/ParserConstants.java gen/ParserTokenManager.java gen/Program.java CLASSPATH=./gen:$CLASSPATH java Main < program.input alternation edge source of edge B target of edge C alternation edge source of edge B target of edge D FAILURE /amd/saentis/export/adaptive/www/sources/DemeterJava/examples/j-constr+alt-edges