* Andrew Pinski <[EMAIL PROTECTED]> [2006-09-17 15:06]: > On Sun, 2006-09-17 at 23:45 +0200, Martin Michlmayr wrote: > > This was accepted about a month ago but is rejected now with the > > following error. Is this invalid code and if so do you know the fix? > > This is invalid code and is actually mentioned on the changes page: > http://gcc.gnu.org/gcc-4.2/changes.html > The (undocumented) extension which permitted templates with default > arguments to be bound to template template parameters with fewer > parameters has been removed. For example: > template <template <typename> class C> > void f(C<double>) {} > > template <typename T, typename U = int> > struct S {}; > > template void f(S<double>); > > is no longer accepted by G++. The reason this code is not accepted is > that S is a template with two parameters; therefore, it cannot be bound > to C which has only one parameter. > > -- Pinski
-- Martin Michlmayr http://www.cyrius.com/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]