Open
Description
template<auto F> constexpr auto x = F();
template<class> constexpr int a() { return 1; }
template <class>
struct A {
template<typename U>
using Func = decltype(
[]<class T>(T) {
return x<[] constexpr { return a<T>(); }>;
}.template operator()<unsigned long long>('2')
);
};
A<short>::Func<int> y;