blob: 4dd329d476056a9716c3b366f94d5abcc43d0adb [file] [log] [blame]
// PR c++/122310
struct Foo {
constexpr static inline auto do_nothing = [](auto && ...){};
using TNothing = decltype(do_nothing);
};
template <typename T>
struct X {
struct Inner {
union MoreInner {
static constexpr auto x = []{};
#if __cplusplus >= 202002L
static decltype([]{}) y;
#endif
};
};
using A = decltype(Inner::MoreInner::x);
#if __cplusplus >= 202002L
using B = decltype(Inner::MoreInner::y);
#endif
};
inline X<int>::A* a{};
#if __cplusplus >= 202002L
inline X<int>::B* b{};
#endif