* Florian Weimer: > * Nathanael Nerode: > >> I'd be interested in working on tracking down the linking problems, but I >> don't want to duplicate your work. Are your patches-so-far available >> somewhere? > > I think I've found the linking bug. Details later.
The link problem is caused by code like this: template <int I> struct Foo { virtual ~Foo(); }; template struct Foo<5>; template <int I> Foo<I>::~Foo() { } int main() { return 0; } This worked with GCC 3.4, but doesn't with 4.0. I pretty much doubt that this code was legal. The fix is straightforward: Remove the explicit template instantiation, and make sure that the template implementation is visible each time the template is instantiated implicitly. I'll prepare a patch. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]