https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79649
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target| |x86_64-*-* Status|RESOLVED |REOPENED Component|tree-optimization |middle-end Resolution|FIXED |--- --- Comment #11 from Richard Biener <rguenth at gcc dot gnu.org> --- Testcase in comment #2 still ICEs. As said, similar memcpy/memmove like cases "work". struct A { unsigned char a[256]; } __seg_gs a; void foo () { a = (struct A){}; } > ./cc1 -quiet t.c t.c: In function ‘foo’: t.c:5:7: internal compiler error: in clear_storage_hints, at expr.c:2973 a = (struct A){}; ~~^~~~~~~~~~~~~~ 0xaa290f clear_storage_hints(rtx_def*, rtx_def*, block_op_methods, unsigned int, long, unsigned long, unsigned long, unsigned long) /space/rguenther/src/svn/gcc-7-branch/gcc/expr.c:2973 0xaa29a9 clear_storage(rtx_def*, rtx_def*, block_op_methods) /space/rguenther/src/svn/gcc-7-branch/gcc/expr.c:2986 0xab3450 expand_constructor