On Fri, Dec 08, 2006 at 04:38:54PM +0200, Slava Dubrovskiy wrote: > Наткнулся на такую ситуацию при сборке firebird. Вот пример: > > $cat test.cpp > > #include > > template > class Stack > { > private: > void* stk; > void* stk_cache; > > public: > explicit Stack() > : stk(0), stk_cache(0) { } > > Stack() > : stk(0), stk_cache(0) { } > > ~Stack() А если тут везде написать вместо Stack просто Stack (без явного указания параметров)? > { > delete stk; > delete stk_cache; > } > }; // class Stack > > int main(int argc, char* argv) > { > return(0); > } > > $ g++-3.4 -o test test.cpp > $ g++-4.1 -o test test.cpp > test.cpp:17: error: parse error in template argument list > > $ rpm -qa | grep gcc > gccmakedep-1.0.1-alt1 > gcc4.1-doc-4.1.1-alt10 > gcc-c++-common-1.4.10-alt1 > gcc3.4-3.4.5-alt6 > gcc-common-1.4.10-alt1 > gcc3.4-c++-3.4.5-alt6 > libgcc4.1-4.1.1-alt10 > gcc4.1-c++-4.1.1-alt10 > gcc4.1-4.1.1-alt10 А 4.1.1-alt9 собирает и в таком виде...