Hi Doug /proj/adaptive/www/course/f97/hw/1/adaptive-methods-graph-ex How can I use two visitors in countInhRels4? -- Karl demjava -tracevis -displayvis -printvis -copyvis -equalvis -outputdir ./gen -code -grammar class-graph.cd class-graph.beh Output directory ./gen does not exist, will create. Parsing class-graph.cd... Building hashtable of classes... Adding generic visitors: PrintVisitor CopyVisitor EqualVisitor DisplayVisitor TraceVisitor UniversalVisitor Marking not-parsed classes... Marking visitor classes... Expanding parameterized classes... Converting repetition classes... Filling in part names... Setting inheritance links... Saving expanded CD to ./gen/class-graph.xcd... Reading behavior files: class-graph.beh Filling in visitor names... Marking derived parts... Making generic visitor behavior files... Reading behavior files: ./gen/UniversalVisitor.beh ./gen/PrintVisitor.beh ./gen/CopyVisitor.beh ./gen/EqualVisitor.beh ./gen/DisplayVisitor.beh ./gen/TraceVisitor.beh Building traversal graph... Converting adaptive methods... Building visitor tables... Expanding universal traversal... Expanding static traversals... Marking allInh... expanding... Marking __trav_countInhRels4... expanding... Marking __trav_countInhRels5... expanding... Adding Enumeration thingies to Repetition classes Adding Subtraversal class. Generating Java code to ./gen... Generating grammar to ./gen/grammar.jj... Done. (cd ./gen; javacc grammar.jj) Java Compiler Compiler Version 0.6.1 (Parser Generator) Copyright (c) 1996, 1997 Sun Microsystems Inc. (type "javacc" with no arguments for help) Reading from file grammar.jj . . . File "ParseError.java" does not exist. Will create one. File "Token.java" does not exist. Will create one. File "ASCII_UCodeESC_CharStream.java" does not exist. Will create one. Parser generated successfully. CLASSPATH=./gen:$CLASSPATH javac -J-mx32m -d ./gen -depend -deprecation gen/ASCII_UCodeESC_CharStream.java gen/Adj.java gen/Adj_list.java gen/Alternat.java gen/Any_vertex.java gen/Any_vertex_list.java gen/Cd_graph.java gen/Construct.java gen/CopyVisitor.java gen/CountingVisitor.java gen/DisplayVisitor.java gen/Empty.java gen/Empty_cd_graph.java gen/EqualVisitor.java gen/Labeled_vertex.java gen/Main.java gen/Nany_vertex_list.java gen/Neighbors.java gen/ParseError.java gen/Parser.java gen/ParserConstants.java gen/ParserTokenManager.java gen/PrintVisitor.java gen/Syntax_vertex.java gen/Token.java gen/TraceVisitor.java gen/UniversalVisitor.java gen/Vertex.java gen/__Subtraversal.java gen/__V_Cd_graph_countInhRels3.java gen/__V_Cd_graph_countInhRels5.java gen/Cd_graph.java:30: Variable 'v0' is already defined in this method. DisplayVisitor v0 = new DisplayVisitor(); ^ gen/Cd_graph.java:31: Incompatible type for method. Can't convert DisplayVisitor to CountingVisitor. __trav_countInhRels4(v0, v0); ^ gen/Cd_graph.java:32: Method get_return_val() not found in class DisplayVisitor. return v0.get_return_val(); ^ gen/Parser.java:264: Method common_UniversalVisitor(CountingVisitor) not found in class Parser. common_UniversalVisitor(it); ^ 4 errors make[1]: *** [gen/compile] Error 1 make: *** [gen/Main.class] Error 2