diff options
Diffstat (limited to 'gdb/ada-exp.h')
-rw-r--r-- | gdb/ada-exp.h | 50 |
1 files changed, 4 insertions, 46 deletions
diff --git a/gdb/ada-exp.h b/gdb/ada-exp.h index 8c9bfe8..7354d65 100644 --- a/gdb/ada-exp.h +++ b/gdb/ada-exp.h @@ -34,28 +34,10 @@ extern struct value *ada_abs (struct type *expect_type, struct expression *exp, enum noside noside, enum exp_opcode op, struct value *arg1); -extern struct value *ada_unop_in_range (struct type *expect_type, - struct expression *exp, - enum noside noside, enum exp_opcode op, - struct value *arg1, struct type *type); extern struct value *ada_mult_binop (struct type *expect_type, struct expression *exp, enum noside noside, enum exp_opcode op, struct value *arg1, struct value *arg2); -extern struct value *ada_equal_binop (struct type *expect_type, - struct expression *exp, - enum noside noside, enum exp_opcode op, - struct value *arg1, struct value *arg2); -extern struct value *ada_ternop_slice (struct expression *exp, - enum noside noside, - struct value *array, - struct value *low_bound_val, - struct value *high_bound_val); -extern struct value *ada_binop_in_bounds (struct expression *exp, - enum noside noside, - struct value *arg1, - struct value *arg2, - int n); extern struct value *ada_binop_minmax (struct type *expect_type, struct expression *exp, enum noside noside, enum exp_opcode op, @@ -224,12 +206,7 @@ public: value *evaluate (struct type *expect_type, struct expression *exp, - enum noside noside) override - { - value *val = std::get<0> (m_storage)->evaluate (nullptr, exp, noside); - return ada_unop_in_range (expect_type, exp, noside, UNOP_IN_RANGE, - val, std::get<1> (m_storage)); - } + enum noside noside) override; enum exp_opcode opcode () const override { return UNOP_IN_RANGE; } @@ -271,14 +248,7 @@ public: value *evaluate (struct type *expect_type, struct expression *exp, - enum noside noside) override - { - value *arg1 = std::get<1> (m_storage)->evaluate (nullptr, exp, noside); - value *arg2 = std::get<2> (m_storage)->evaluate (arg1->type (), - exp, noside); - return ada_equal_binop (expect_type, exp, noside, std::get<0> (m_storage), - arg1, arg2); - } + enum noside noside) override; void do_generate_ax (struct expression *exp, struct agent_expr *ax, @@ -307,13 +277,7 @@ public: value *evaluate (struct type *expect_type, struct expression *exp, - enum noside noside) override - { - value *array = std::get<0> (m_storage)->evaluate (nullptr, exp, noside); - value *low = std::get<1> (m_storage)->evaluate (nullptr, exp, noside); - value *high = std::get<2> (m_storage)->evaluate (nullptr, exp, noside); - return ada_ternop_slice (exp, noside, array, low, high); - } + enum noside noside) override; enum exp_opcode opcode () const override { return TERNOP_SLICE; } @@ -335,13 +299,7 @@ public: value *evaluate (struct type *expect_type, struct expression *exp, - enum noside noside) override - { - value *arg1 = std::get<0> (m_storage)->evaluate (nullptr, exp, noside); - value *arg2 = std::get<1> (m_storage)->evaluate (nullptr, exp, noside); - return ada_binop_in_bounds (exp, noside, arg1, arg2, - std::get<2> (m_storage)); - } + enum noside noside) override; enum exp_opcode opcode () const override { return BINOP_IN_BOUNDS; } |