public override void CheckSemantics(Scope scope, List <SemanticError> errors) { Operand.CheckSemantics(scope, errors); if (Operand.Type != Types.Int) { errors.Add(SemanticError.InvalidUseOfOperator( "unary minus", Operand.Type.Equals(Types.Nil) ? "valued" : "integer", "operand", Operand)); } }