[Bug c++/101371] constexpr expansions trigger internal Compiler Error
mpolacek at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jul 8 13:50:32 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101371
Marek Polacek <mpolacek at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mpolacek at gcc dot gnu.org
--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Reduced, even g++ 7 ICEs. We only ICE with -std=c++14.
struct berry_set_CX;
template <int _Nm> struct __array_traits { typedef berry_set_CX _Type[_Nm]; };
template <int _Nm> struct array {
typename __array_traits<_Nm>::_Type _M_elems;
};
struct _Base_bitset {
long _M_w;
};
struct berry_set_CX {
_Base_bitset bset;
constexpr berry_set_CX() : bset() {}
constexpr berry_set_CX(berry_set_CX &rhs) : bset(rhs.bset) {}
};
struct bersets_by_citrus_CX {
array<8> berrysets;
};
struct entree0_CX {
constexpr entree0_CX(bersets_by_citrus_CX) {}
};
struct berrybox_CX {
constexpr entree0_CX make_entree() const {
bersets_by_citrus_CX bsbc{};
return bsbc;
}
berrybox_CX(berry_set_CX);
};
void init() {
berry_set_CX fixed;
berrybox_CX nu_cs0(fixed);
entree0_CX pas = nu_cs0.make_entree();
}
More information about the Gcc-bugs
mailing list