У меня есть эта ошибка при попытке скомпилировать следующий код с помощью xcode. Он без проблем компилируется Visual Studio в Windows.
template <typename OutT, typename MayaArrayT>
void DumpMayaArray(std::vector<OutT>& out, const MayaArrayT& source)
{
using MayaElementT = decltype(MayaArrayT()[unsigned int()]); // error happens in this line!
static_assert(std::is_same<MayaElementT, OutT&>::value, "array type mismatch");
Предполагается, что этот фрагмент кода должен получить тип элемента MayaArrayT из возвращаемого типа ::operator[]( unsigned int index );
К сожалению, нет другого способа получить тип элемента MayaArrayT.