aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.dg/template/typedef30.C
blob: 2f9362a1e0495959deff7a969f377f9963cf3f1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Origin: PR c++/43206
// { dg-do compile }

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;