https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123970
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
.original shows
;; Function void test() [with auto N = 1] (null)
;; enabled by -tree-original
{
const int D.12830[1] = {0};
const int id0 [value-expr: D.12830[0]];
<<< Unknown tree: type_pack_expansion >>> ids [value-expr: {D.12830, 1}];
<<cleanup_point const int D.12830[1] = {0};>>;
}
and that type prevails throughout GIMPLE:
void test<1> ()
{
const int D.12830[1];
const int id0 [value-expr: D.12830[0]];
<<< Unknown tree: type_pack_expansion >>> ids [value-expr: {D.12830, 1}];
try
{
D.12830[0] = 0;
}
finally
{
D.12830 = {CLOBBER(eos)};
}
}
we likely might want to have debug info from 'ids' but afterwards get rid
of it.