https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111075
Bug ID: 111075 Summary: ICE on g++.dg/torture/tail-padding1.C on darwin Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: fxcoudert at gcc dot gnu.org Target Milestone: --- ICE on valid C++ code, reduced from the test failure of g++.dg/torture/tail-padding1.C observed on x86_64-apple-darwin20 (see for example at https://gcc.gnu.org/pipermail/gcc-testresults/2023-August/793205.html): $ cat z.C struct X { ~X() {} int n; char d; }; struct Y { Y(); char c[3]; }; struct Z : X, virtual Y { Z(); }; X f() { X nrvo; __builtin_memset(&nrvo, 0, sizeof(X)); return nrvo; } Z::Z() : Y(), X(f()) {} $ /tmp/irun/bin/g++ -Os z.C z.C: In copy constructor ‘constexpr X::X(const X&)’: z.C:1:8: internal compiler error: in cxx_eval_call_expression, at cp/constexpr.cc:2918 1 | struct X { ~X() {} int n; char d; }; | ^