xref: /llvm-project/clang/test/SemaTemplate/function-pointer-qualifier.cpp (revision 413f3c55955537552b556a556d678d5756a9f16b)
1*413f3c55SLei Liu // RUN: %clang_cc1 -fsyntax-only -verify %s
2*413f3c55SLei Liu // expected-no-diagnostics
3*413f3c55SLei Liu 
4*413f3c55SLei Liu template<class _Ty> inline
testparam(_Ty **,_Ty **)5*413f3c55SLei Liu 	void testparam(_Ty **, _Ty **)
6*413f3c55SLei Liu 	{
7*413f3c55SLei Liu 	}
8*413f3c55SLei Liu 
9*413f3c55SLei Liu template<class _Ty> inline
testparam(_Ty * const *,_Ty **)10*413f3c55SLei Liu 	void testparam(_Ty *const *, _Ty **)
11*413f3c55SLei Liu 	{
12*413f3c55SLei Liu 	}
13*413f3c55SLei Liu 
14*413f3c55SLei Liu template<class _Ty> inline
testparam(_Ty **,const _Ty **)15*413f3c55SLei Liu 	void testparam(_Ty **, const _Ty **)
16*413f3c55SLei Liu 	{
17*413f3c55SLei Liu 	}
18*413f3c55SLei Liu 
19*413f3c55SLei Liu template<class _Ty> inline
testparam(_Ty * const *,const _Ty **)20*413f3c55SLei Liu 	void testparam(_Ty *const *, const _Ty **)
21*413f3c55SLei Liu 	{
22*413f3c55SLei Liu 	}
23*413f3c55SLei Liu 
case0()24*413f3c55SLei Liu void case0()
25*413f3c55SLei Liu {
26*413f3c55SLei Liu     void (**p1)();
27*413f3c55SLei Liu     void (**p2)();
28*413f3c55SLei Liu     testparam(p1, p2);
29*413f3c55SLei Liu }
30