Как починить предпоследнюю строчку? Там где-то typename
надо вставить, да?
template <int N>
struct int_ {
static constexpr int value = N;
using type = int_<N>;
};
template <typename T>
struct foo {
template <int N>
struct boo {
using type = int_<N>;
};
};
template <typename T>
auto fun (T a) {
using type = foo<T>::boo<4>::type; // ошибка
}