Использование параметров шаблона в качестве параметров шаблона

Почему следующий код недействителен?

template <typename S, typename T>
struct B{
    void f(T t, S s) {t.f<S>(s); }
};

gcc 4.3.4 жалуется на то, что он «ожидал первичного выражения перед '>' токеном», то есть «S» не было допустимым первичным выражением.

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

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