public override object VisitStructVariableDeclaration_Array([NotNull] CMinusParser.StructVariableDeclaration_ArrayContext context) { string symbolType = SymbolTable.Symbol.RemoveExtras(context.typeSpecifier().GetText()); if (symbolType == "void") { this.EmitSemanticErrorMessage("Variable declared as void type", context); } return(new SymbolTable.Symbol( id: context.ID().GetText(), type: symbolType, construct: SymbolTable.Symbol.Construct.ARRAY, scope: 1, size: uint.Parse(context.NUM().GetText()), pointerCount: SymbolTable.Symbol.CountStringAsterisks(context.typeSpecifier().GetText()) )); }
// TODO public override object VisitStructVariableDeclaration_Array([NotNull] CMinusParser.StructVariableDeclaration_ArrayContext context) { return(base.VisitStructVariableDeclaration_Array(context)); }