[cfe-commits] r99510 - /cfe/trunk/test/SemaTemplate/instantiate-function-params.cpp
Douglas Gregor
dgregor at apple.com
Thu Mar 25 08:42:12 PDT 2010
Author: dgregor
Date: Thu Mar 25 10:42:11 2010
New Revision: 99510
URL: http://llvm.org/viewvc/llvm-project?rev=99510&view=rev
Log:
Add another test for weird substitutions into function types during template argument deduction
Modified:
cfe/trunk/test/SemaTemplate/instantiate-function-params.cpp
Modified: cfe/trunk/test/SemaTemplate/instantiate-function-params.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaTemplate/instantiate-function-params.cpp?rev=99510&r1=99509&r2=99510&view=diff
==============================================================================
--- cfe/trunk/test/SemaTemplate/instantiate-function-params.cpp (original)
+++ cfe/trunk/test/SemaTemplate/instantiate-function-params.cpp Thu Mar 25 10:42:11 2010
@@ -42,3 +42,16 @@
}
template void instF0<int, int, float>(X0<int(int)>, X0<int(float)>);
+
+template<typename R, typename A1, R (*ptr)(A1)> struct FuncPtr { };
+template<typename A1, int (*ptr)(A1)> struct FuncPtr<int, A1, ptr> { };
+
+template<typename R, typename A1> R unary_func(A1);
+
+template<typename R, typename A1, typename A2>
+void use_func_ptr() {
+ FuncPtr<R, A1, &unary_func<R, A1> > fp1;
+ FuncPtr<R, A2, &unary_func<R, A2> > fp2;
+};
+
+template void use_func_ptr<int, float, double>();
More information about the cfe-commits
mailing list