My change in r10-7718 to make build_aggr_init_expr set EXPR_LOCATION
(mimicking build_target_expr) causes the debuginfo regression PR96997.
Given that this change is mostly independent of the rest of the commit,
and that the only fallout of reverting it is a less accurate error
message location in a testcase introduced in the same commit, it seems
the best way forward is to just revert this part of the commit.
gcc/cp/ChangeLog:
PR debug/96997
PR c++/94034
* tree.c (build_aggr_init_expr): Revert r10-7718 change.
gcc/testsuite/ChangeLog:
PR debug/96997
PR c++/94034
* g++.dg/cpp1y/constexpr-nsdmi7b.C: Adjust expected location of
"call to non-'constexpr' function" error message.
else
rval = init;
- if (location_t loc = EXPR_LOCATION (init))
- SET_EXPR_LOCATION (rval, loc);
-
return rval;
}
{
A a = foo();
a.p->n = 5;
- return a; // { dg-error "non-.constexpr." }
-}
+ return a;
+} // { dg-error "non-.constexpr." }
constexpr int
baz()