У меня есть следующее
template <typename F, typename A0>
struct ResultOf {
typedef typename decltype(boost::declval<F>()(boost::declval<A0>())) Type;
};
Оно было написано так, чтобы VS2010 мог иметь result_of , который работал для конкретного варианта использования.Он работает под vs2015, vs2013 и vs2010, но под gcc я получаю ошибку компиляции
error: expected nested-name-specifier before ‘decltype’
typedef typename decltype(boost::declval<F>()(boost::declval<A0>())) Type;
Есть ли здесь очевидное небольшое исправление?