@ Бен, вероятно, прав, но вот совершенно другой способ заставить его скомпилировать, который не использует шаблоны в качестве аргументов для шаблонов.
template<class Generator> // changed this to a simpler template
class TestHelper {};
template<class Writer>
class Test
{
typedef TestHelper< typename Test :: Writer > Helper; // 2nd change
};
Я сделал два изменения.@ Хьюго, может быть, это то, что вы хотели, а может, это то, что сделали старые версии g ++?
Получить код для компиляции легко, но это не значит, что он делает то, что, как вы думаете, делает!