*** empty log message ***
[deliverable/binutils-gdb.git] / gdb / eval.c
index 9a3af671cbefec9ce1cf86907dde3143456de1c2..a44d0c7fbe2390ed1008a6867c257db96d4fa554 100644 (file)
@@ -35,6 +35,7 @@
 #include "infcall.h"
 #include "objc-lang.h"
 #include "block.h"
+#include "parser-defs.h"
 
 /* Defined in symtab.c */
 extern int hp_som_som_object_present;
@@ -70,7 +71,8 @@ static struct value *
 evaluate_subexp (struct type *expect_type, struct expression *exp,
                 int *pos, enum noside noside)
 {
-  return (*exp->language_defn->evaluate_exp) (expect_type, exp, pos, noside);
+  return (*exp->language_defn->la_exp_desc->evaluate_exp) 
+    (expect_type, exp, pos, noside);
 }
 \f
 /* Parse the string EXP as a C expression, evaluate it,
@@ -406,11 +408,9 @@ evaluate_subexp_standard (struct type *expect_type,
     case OP_SCOPE:
       tem = longest_to_int (exp->elts[pc + 2].longconst);
       (*pos) += 4 + BYTES_TO_EXP_ELEM (tem + 1);
-      arg1 = value_struct_elt_for_reference (exp->elts[pc + 1].type,
-                                            0,
-                                            exp->elts[pc + 1].type,
-                                            &exp->elts[pc + 3].string,
-                                            NULL_TYPE);
+      arg1 = value_aggregate_elt (exp->elts[pc + 1].type,
+                                 &exp->elts[pc + 3].string,
+                                 noside);
       if (arg1 == NULL)
        error ("There is no field named %s", &exp->elts[pc + 3].string);
       return arg1;
This page took 0.022969 seconds and 4 git commands to generate.