частичная специализация с зависимым именем (typename)

У меня есть следующие простыеstrinToTypeImpl функция, которая преобразует любой тип строки в тип шаблона. Проблема, которая меня беспокоит, заключается в том, что компилятор говорит мне о частичной специализации дляtypename MyMatrix<T>::Vector3 :

параметр шаблона T не используется при частичной специализации

Я не могу использовать зависимые имена в специализации?

namespace details
{

    template<typename T>
    struct stringToTypeImpl{
        bool operator()(T& t, const std::string& s)
        {
          std::istringstream iss(s);
          return !(iss >> t).fail();
        }
    };


    template<typename T>
    struct stringToTypeImpl< typename MyMatrix<T>::Vector3  >{ 

        // Replacing typename MyMatrix<T>::Vector3  by 
        // Eigen::Matrix<T,3,1> WORKS but why?

        bool operator()(typename MyMatrix<PREC>::Vector3 & t, const std::string& s)
        {
          stringToVector3<PREC>(t,s);
        }
    };
}

Ответы на вопрос(2)

Ваш ответ на вопрос