public int VisitInitDeclaration(InitDeclaration ast, Frame frame) { int extraSize = ast.Expression.Visit(this, null); ast.Entity = new KnownAddress(Machine.AddressSize, frame); Encoder.WriteTableDetails(ast); return(extraSize); }
public Void VisitInitDeclaration(InitDeclaration ast, Void arg) { ast.Type = ast.Type.Visit(this, null); ast.Expression.Visit(this, null); idTable.Enter(ast.Identifier, ast); CheckAndReportError(!ast.Duplicated, "identifier \"%\" already declared", ast.Identifier, ast); return(null); }