diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 0a8bee86c1..ea055da4a5 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2014-11-10 Ulrich Weigand  + + * eval.c (evaluate_subexp_standard): Work around GCC bug 63748. + 2014-11-07 Pedro Alves * infrun.c (process_event_stop_test) : Don't diff --git a/gdb/eval.c b/gdb/eval.c index c49f7b63eb..655ea223b1 100644 --- a/gdb/eval.c +++ b/gdb/eval.c @@ -1696,8 +1696,6 @@ evaluate_subexp_standard (struct type *expect_type, do_call_it: - if (noside == EVAL_SKIP) - goto nosideret; if (argvec[0] == NULL) error (_("Cannot evaluate function -- may be inlined")); if (noside == EVAL_AVOID_SIDE_EFFECTS) @@ -1804,6 +1802,8 @@ evaluate_subexp_standard (struct type *expect_type, for (; tem <= nargs; tem++) argvec[tem] = evaluate_subexp_with_coercion (exp, pos, noside); argvec[tem] = 0; /* signal end of arglist */ + if (noside == EVAL_SKIP) + goto nosideret; goto do_call_it; default: