My namespace is ucc; I've named the parser uccParser;
This function below I find in the generated ucc.tab.cpp file void uccParser::error (const syntax_error& yyexc) { error (yyexc.location, yyexc.what ()); } unfortunately the ucc.tab.hpp file that is generated does not include a definition of this function inside the class it creates. Here is some of the top of the grammar file that may have some pertinent information. -------------------------- %skeleton "lalr1.cc" %require "3.7" %define parse.assert %defines %locations %define api.value.type variant //%define api.token.constructor %define api.token.raw %define api.namespace{ucc} %define api.parser.class {uccParser} %code requires { namespace ucc{ class Compiler; class TableEntry; } #include "cpptypes.hpp" #include "List.hpp" #include "type.hpp" using namespace ucc; } %parse-param{ Compiler& compiler } -------------------------------- Below is the error I get at the linking stage after compiling the objects. --------------------------------- Undefined symbols for architecture x86_64: "ucc::uccParser::error(ucc::location const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from: vtable for ucc::uccParser in ucc-a858ea.o ------------------------------------ Thoughts? Thank you in advance.