protected Module start(
CompileUnit cu
)
{
Module module;
IToken eof = null;
module = new Module();
module.LexicalInfo = new LexicalInfo(getFilename(), 1, 1);
cu.Modules.Add(module);
try { // for error handling
parse_module(module);
eof = LT(1);
match(Token.EOF_TYPE);
if (0==inputState.guessing)
{
SetEndSourceLocation(module, eof);
}
}
catch (RecognitionException ex)
{
if (0 == inputState.guessing)
{
reportError(ex, "start");
recover(ex,tokenSet_0_);
}
else
{
throw ex;
}
}
return module;
}