https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77771
Bug ID: 77771 Summary: internal compiler error: in cxx_eval_bit_field_ref, at cp/constexpr.c:2090 Product: gcc Version: 5.4.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: bruck.michael at googlemail dot com Target Milestone: --- struct S { char x[2]; unsigned y; }; constexpr bool func(const S s) { return s.x[0] != 42 || s.x[1] != 0; } static_assert(!func({{42, 7}, 0}), "bla"); --- Compiled with -std=c++11 -O on various compilers (http://gcc.godbolt.org/) starting with 4.7.1 up to 7 I get an ICE: Example with 5.4: 12 : in constexpr expansion of 'func(S{char [2]{'*', '\007'}, 0u})' 12 : internal compiler error: in cxx_eval_bit_field_ref, at cp/constexpr.c:2090 static_assert(!func({{42, 7}, 0}), "bla");