summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/spec19.C
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/g++.dg/template/spec19.C')
-rw-r--r--gcc/testsuite/g++.dg/template/spec19.C23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/template/spec19.C b/gcc/testsuite/g++.dg/template/spec19.C
new file mode 100644
index 000000000..082431533
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/spec19.C
@@ -0,0 +1,23 @@
+// PR c++/18962
+
+template<class T1,int N1>
+class Klasse
+{
+public:
+ template <class T2,int N2>
+ void function( const Klasse<T2,N2>& );
+};
+
+template<>
+template<class T2,int N2>
+void Klasse<int,1>::function( const Klasse<T2,N2>& param )
+{
+ param; // make sure we use the argument list from the definition.
+}
+
+int main()
+{
+ Klasse<int,1> instance;
+ Klasse<char,2> param;
+ instance.function( param );
+}