+2021-03-08 Tom Tromey <tom@tromey.com>
+
+ * m2-lang.h (class m2_language) <expresssion_ops,
+ exp_descriptor_modula2>: Remove.
+ * m2-lang.c (evaluate_subexp_modula2)
+ (m2_language::exp_descriptor_modula2): Remove.
+
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.h (class f_language) <expresssion_ops>: Remove.
return value_subscript (arg1, value_as_long (arg2));
}
-static struct value *
-evaluate_subexp_modula2 (struct type *expect_type, struct expression *exp,
- int *pos, enum noside noside)
-{
- enum exp_opcode op = exp->elts[*pos].opcode;
- struct value *arg1;
- struct value *arg2;
-
- switch (op)
- {
- case UNOP_HIGH:
- (*pos)++;
- arg1 = evaluate_subexp_with_coercion (exp, pos, noside);
- return eval_op_m2_high (expect_type, exp, noside, arg1);
-
- case BINOP_SUBSCRIPT:
- (*pos)++;
- arg1 = evaluate_subexp_with_coercion (exp, pos, noside);
- arg2 = evaluate_subexp_with_coercion (exp, pos, noside);
- return eval_op_m2_subscript (expect_type, exp, noside, arg1, arg2);
-
- default:
- return evaluate_subexp_standard (expect_type, exp, pos, noside);
- }
-}
\f
/* Table of operators and their precedences for printing expressions. */
};
\f
-const struct exp_descriptor m2_language::exp_descriptor_modula2 =
-{
- print_subexp_standard,
- operator_length_standard,
- operator_check_standard,
- dump_subexp_body_standard,
- evaluate_subexp_modula2
-};
-
/* Single instance of the M2 language. */
static m2_language m2_language_defn;
/* See language.h. */
- const struct exp_descriptor *expression_ops () const override
- { return &exp_descriptor_modula2; }
-
- /* See language.h. */
-
const struct op_print *opcode_print_table () const override
{ return op_print_tab; }
private:
- /* Table of expression handling functions for use by EXPRESSION_OPS
- member function. */
- static const struct exp_descriptor exp_descriptor_modula2;
-
/* Table of opcode data for use by OPCODE_PRINT_TABLE member function. */
static const struct op_print op_print_tab[];
};