[cfe-commits] r124204 - /cfe/trunk/test/SemaTemplate/instantiate-template-template-parm.cpp

Douglas Gregor dgregor at apple.com
Tue Jan 25 10:11:52 PST 2011


Author: dgregor
Date: Tue Jan 25 12:11:52 2011
New Revision: 124204

URL: http://llvm.org/viewvc/llvm-project?rev=124204&view=rev
Log:
Add test for PR8629

Modified:
    cfe/trunk/test/SemaTemplate/instantiate-template-template-parm.cpp

Modified: cfe/trunk/test/SemaTemplate/instantiate-template-template-parm.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaTemplate/instantiate-template-template-parm.cpp?rev=124204&r1=124203&r2=124204&view=diff
==============================================================================
--- cfe/trunk/test/SemaTemplate/instantiate-template-template-parm.cpp (original)
+++ cfe/trunk/test/SemaTemplate/instantiate-template-template-parm.cpp Tue Jan 25 12:11:52 2011
@@ -59,3 +59,39 @@
 };
 
 Comp<int, lt> c0;
+
+namespace PR8629 {
+  template<template<int> class TT> struct X0
+  {
+    static void apply();
+  };
+  template<int> struct Type { };
+
+  template<class T> struct X1
+  {
+    template<class U> struct Inner;
+
+    template<class U> void g()
+    {
+      typedef Inner<U> Init;
+      X0<Init::template VeryInner>::apply();
+    }
+    template<int N> void f ()
+    {
+      g<Type<N> >();
+    }
+  };
+  template<class T> template<class U> struct X1<T>::Inner
+  {
+    template<int> struct VeryInner {
+    };
+  };
+  struct X1Container
+  {
+    X1Container()
+    {
+      simplex_.f<0>();
+    }
+    X1<double> simplex_;
+  };
+}





More information about the cfe-commits mailing list