[Bug c++/48319] [4.6/4.7 Regression] [C++0x] Segmentation fault in instantiation of std::is_constructible<int>

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Mar 28 19:23:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48319

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-03-28 18:38:37 UTC ---
reduced

  template<typename Tp> Tp declval() noexcept; 

  template<typename _Tp>
    class __is_constructible_helper
    {
      typedef char __one;
      typedef struct { char __arr[2]; } __two;

      template<typename _Tp1, typename... _Args1>
        static decltype(_Tp1(declval<_Args1>()...), __one()) __test(int);

      template<typename, typename...>
        static __two __test(...);

    public:
      static const bool __value = sizeof(__test<_Tp>(0)) == 1;
    };

  int main() {
    return __is_constructible_helper<int>::__value;
  }



More information about the Gcc-bugs mailing list