aboutsummaryrefslogtreecommitdiff
path: root/gdb/expop.h
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2021-03-08 07:27:57 -0700
committerTom Tromey <tom@tromey.com>2021-03-08 07:28:30 -0700
commit2f98abe174b50cf347761345c5e2dc8859dc63b9 (patch)
treeaece5b5b55152198aa72d5f796e18bcd63e8f3cf /gdb/expop.h
parent638fd74a616e095159e88ed4e596a71153bef88e (diff)
downloadgdb-2f98abe174b50cf347761345c5e2dc8859dc63b9.zip
gdb-2f98abe174b50cf347761345c5e2dc8859dc63b9.tar.gz
gdb-2f98abe174b50cf347761345c5e2dc8859dc63b9.tar.bz2
Introduce fortran_undetermined
This adds class fortran_undetermined, which implements OP_F77_UNDETERMINED_ARGLIST. fortran_range_operation is also added here, as it is needed by fortran_undetermined. gdb/ChangeLog 2021-03-08 Tom Tromey <tom@tromey.com> * expop.h (class unop_addr_operation) <get_expression>: New method. * f-lang.c (fortran_undetermined::value_subarray) (fortran_undetermined::evaluate): New methods. (fortran_prepare_argument): New overload. * f-exp.h (class fortran_range_operation) (class fortran_undetermined): New classes.
Diffstat (limited to 'gdb/expop.h')
-rw-r--r--gdb/expop.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gdb/expop.h b/gdb/expop.h
index 8ac7947..44d9d2e 100644
--- a/gdb/expop.h
+++ b/gdb/expop.h
@@ -1656,6 +1656,12 @@ public:
enum exp_opcode opcode () const override
{ return UNOP_ADDR; }
+ /* Return the subexpression. */
+ const operation_up &get_expression () const
+ {
+ return std::get<0> (m_storage);
+ }
+
protected:
void do_generate_ax (struct expression *exp,