Hi Doug: Jon and i don't understand why this does not compile. Please can you take a look. -- Karl /proj/adaptive2/course/com1205/f00/project/kelley Running the compiler... Found 1 semantic error compiling "gen/Program.java": 37. where.traverse(this,xV); <---------------------> *** Error: No match was found for method "traverse(Program, XMLVisitor)". Found 20 semantic errors compiling "gen/Visitor.java": 20. public static Visitor parse(java.io.Reader in) throws ParseException { return new Parser(in)._Visitor(); } <-----------------------> *** Error: No method named "_Visitor" was found in type "Parser". However, there is an accessible method "_VisitorDirective" whose name closely matches the name "_Visitor". 21. public static Visitor parse(java.io.InputStream in) throws ParseException { return new Parser(in)._Visitor(); } <-----------------------> *** Error: No method named "_Visitor" was found in type "Parser". However, there is an accessible method "_VisitorDirective" whose name closely matches the name "_Visitor". 29. ((UniversalVisitor) _v_).before(this); <-----------------------------------> *** Error: No match was found for method "before(Visitor)". 33. ((UniversalVisitor) _v_).after(this); <----------------------------------> *** Error: No match was found for method "after(Visitor)". 38. ((UniversalVisitor) _v_).before_classname(this, classname); <--------------------------------------------------------> *** Error: No match was found for method "before_classname(Visitor, ClassName)". 40. ((UniversalVisitor) _v_).after_classname(this, classname); <-------------------------------------------------------> *** Error: No match was found for method "after_classname(Visitor, ClassName)". 42. ((UniversalVisitor) _v_).before_visitorname(this, visitorname); <------------------------------------------------------------> *** Error: No match was found for method "before_visitorname(Visitor, VisitorName)". 44. ((UniversalVisitor) _v_).after_visitorname(this, visitorname); <-----------------------------------------------------------> *** Error: No match was found for method "after_visitorname(Visitor, VisitorName)". 50. ((DisplayVisitor) __v0).before(this); <----------------------------------> *** Error: No match was found for method "before(Visitor)". 54. ((DisplayVisitor) __v0).after(this); <---------------------------------> *** Error: No match was found for method "after(Visitor)". 59. ((DisplayVisitor) __v0).before_classname(this, classname); <-------------------------------------------------------> *** Error: No match was found for method "before_classname(Visitor, ClassName)". 61. ((UniversalVisitor) __v0).after_classname(this, classname); <--------------------------------------------------------> *** Error: No match was found for method "after_classname(Visitor, ClassName)". 63. ((DisplayVisitor) __v0).before_visitorname(this, visitorname); <-----------------------------------------------------------> *** Error: No match was found for method "before_visitorname(Visitor, VisitorName)". 65. ((UniversalVisitor) __v0).after_visitorname(this, visitorname); <------------------------------------------------------------> *** Error: No match was found for method "after_visitorname(Visitor, VisitorName)". 71. ((UniversalVisitor) __v0).before(this); <------------------------------------> *** Error: No match was found for method "before(Visitor)". 75. ((UniversalVisitor) __v0).after(this); <-----------------------------------> *** Error: No match was found for method "after(Visitor)". 80. ((UniversalVisitor) __v0).before_classname(this, classname); <---------------------------------------------------------> *** Error: No match was found for method "before_classname(Visitor, ClassName)". 82. ((UniversalVisitor) __v0).after_classname(this, classname); <--------------------------------------------------------> *** Error: No match was found for method "after_classname(Visitor, ClassName)". 84. ((UniversalVisitor) __v0).before_visitorname(this, visitorname); <-------------------------------------------------------------> *** Error: No match was found for method "before_visitorname(Visitor, VisitorName)". 86. ((UniversalVisitor) __v0).after_visitorname(this, visitorname); <------------------------------------------------------------> *** Error: No match was found for method "after_visitorname(Visitor, VisitorName)". Found 3 semantic errors compiling "gen/XMLVisitor.java": 10. public static XMLVisitor parse(java.io.Reader in) throws ParseException { return new Parser(in)._XMLVisitor(); } <----------------------> *** Error: The return type of method "XMLVisitor parse(java.io.Reader in);" does not match the return type of method "Visitor parse(java.io.Reader in);" inherited from type "Visitor". 11. public static XMLVisitor parse(java.io.InputStream in) throws ParseException { return new Parser(in)._XMLVisitor(); } <---------------------------> *** Error: The return type of method "XMLVisitor parse(java.io.InputStream in);" does not match the return type of method "Visitor parse(java.io.InputStream in);" inherited from type "Visitor". 12. public static XMLVisitor parse(String s) { <-------------> *** Error: The return type of method "XMLVisitor parse(java.lang.String s);" does not match the return type of method "Visitor parse(java.lang.String s);" inherited from type "Visitor". Aborting, compiler exited with error value 1.