[Bug c++/83689] Internal compiler error using is_trivially_default_constructible on array of nontrivially-destructible types

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Jan 4 18:36:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83689

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2018-01-04
                 CC|                            |jakub at gcc dot gnu.org,
                   |                            |ville at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Reduced testcase without headers:

template<typename _Tp, _Tp __v>
struct A { static constexpr _Tp a = __v; };
template<typename _Tp, typename... _Args>
struct B : public A<bool, __is_trivially_constructible (_Tp, _Args...)> {};
struct C { C () {} };

void
foo ()
{
  using D = C[10];
  static_assert (!B<D>::a, "");
}

This got fixed with r248788 aka PR80812.  Ville, shall we backport?


More information about the Gcc-bugs mailing list