1 // Origin: PR c++/42820
2 // { dg-do compile }
3 
4 
5 template <class T> struct vector{};
6 struct Traits{struct Primitive{struct Id{};};};
7 
8 template <class Tree, class Polyhedron> struct Tree_vs_naive
9 {
10   typedef typename Tree::Primitive Primitive;
11 
fTree_vs_naive12   void f() const
13   {
14 	  typedef vector<typename Primitive::Id> Id_vector;
15   }
16 };
17 
test_hint_strategies()18 template <class Tree> void test_hint_strategies()
19 {
20   vector<typename Tree::Primitive::Id> v;
21 }
22 
main(void)23 int main(void)
24 {
25   test_hint_strategies<Traits>();
26 }
27 
28 
29