aboutsummaryrefslogtreecommitdiff
path: root/gdb/m2-lang.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/m2-lang.c')
-rw-r--r--gdb/m2-lang.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/gdb/m2-lang.c b/gdb/m2-lang.c
index 9cc64bc..ade52d9 100644
--- a/gdb/m2-lang.c
+++ b/gdb/m2-lang.c
@@ -194,6 +194,7 @@ evaluate_subexp_modula2 (struct type *expect_type, struct expression *exp,
struct value *arg1;
struct value *arg2;
struct type *type;
+
switch (op)
{
case UNOP_HIGH:
@@ -210,6 +211,7 @@ evaluate_subexp_modula2 (struct type *expect_type, struct expression *exp,
if (m2_is_unbounded_array (type))
{
struct value *temp = arg1;
+
type = TYPE_FIELD_TYPE (type, 1);
/* i18n: Do not translate the "_m2_high" part! */
arg1 = value_struct_elt (&temp, NULL, "_m2_high", NULL,
@@ -239,10 +241,11 @@ evaluate_subexp_modula2 (struct type *expect_type, struct expression *exp,
{
struct value *temp = arg1;
type = TYPE_FIELD_TYPE (type, 0);
- if (type == NULL || (TYPE_CODE (type) != TYPE_CODE_PTR)) {
- warning (_("internal error: unbounded array structure is unknown"));
- return evaluate_subexp_standard (expect_type, exp, pos, noside);
- }
+ if (type == NULL || (TYPE_CODE (type) != TYPE_CODE_PTR))
+ {
+ warning (_("internal error: unbounded array structure is unknown"));
+ return evaluate_subexp_standard (expect_type, exp, pos, noside);
+ }
/* i18n: Do not translate the "_m2_contents" part! */
arg1 = value_struct_elt (&temp, NULL, "_m2_contents", NULL,
_("unbounded structure "