view gcc/testsuite/g++.dg/cpp0x/decltype75.C @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
line wrap: on
line source

// PR c++/69694
// This is a reduced version of decltype74.C.
// { dg-do compile { target c++11 } }

template<typename... Ts> using void_t = void;

extern void *declval_void;

template<typename, typename> struct Fun { };

template<typename Desc>
struct Fun<Desc, void_t<decltype (declval_void = Desc::name)>>
{
  void fun();
};

struct Tag { static constexpr void* name = 0; };

template<typename> void a()
{
  Fun<Tag, void>{}.fun();
}

void b() { a<int>(); }