C2977: 'std :: tuple': слишком много аргументов шаблона (MSVC11)

Я пытаюсь создать googletest с помощью Visual C ++ 11, но следующий код вызывает ошибку

template <typename T1, typename T2, typename T3, typename T4, typename T5,
          typename T6, typename T7, typename T8, typename T9>
void PrintTo(const ::std::tr1::tuple<T1, T2, T3, T4, T5, T6, T7, T8, T9>& t, // <-- error C2977
             ::std::ostream* os) {
  PrintTupleTo(t, os);
}

Это текст ошибки:

f:\gtest-1.6.0\include\gtest\gtest-printers.h(550): error C2977: 'std::tuple' : too many template arguments
  c:\program files (x86)\microsoft visual studio 11.0\vc\include\utility(72) : see declaration of 'std::tuple'

И там это строка 72 файла утилиты :

template<class = _Nil, _MAX_CLASS_LIST>
   class tuple; // Line 72

В чем проблема с std :: tuple и как ее исправить?

(Кстати: я пытался безуспешно чтобы изменить std :: tr1 :: tuple на std :: tuple )

40
задан Loom 3 July 2013 в 07:33
поделиться