------- Comment #18 from dodji at gcc dot gnu dot org 2010-03-05 20:44 ------- (In reply to comment #13) > It may be a different issue since the original testcase > compiles with older gcc.
How about this reduced test case that compiles with older (4.4) gcc: template<class A> struct NumericTraits{ typedef A TInputImage;}; template<class B> class CovariantVector{}; template<class C> struct Image{ typedef C PixelType;}; template<class H, class E, class D> class F { typedef H G; typedef typename NumericTraits<typename G::PixelType>::RealType InputRealType; }; template<typename TInputImage, typename TOutputImage=Image<CovariantVector<typename NumericTraits<typename TInputImage::PixelType>::TInputImage> > > class XXX{}; XXX<Image<float> > x; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43087