https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99185
--- Comment #3 from kal.conley at dectris dot com --- I don't think there should be any dynamic initialization of A here. Also, its weird that if the definition if A is changed to: struct A { int value = 0; A() = default; }; then the error goes away.