1ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: %clang_cc1 -fsyntax-only %s
2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaotemplate<typename T>
4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  T f0(T, int);
5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test_f0() {
7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  int (*f0a)(int, int) = f0;
8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  int (*f0b)(int, int) = &f0;
9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  float (*f0c)(float, int) = &f0;
10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
12ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaotemplate<typename T> T f1(T, int);
13ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaotemplate<typename T> T f1(T);
14ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
15ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test_f1() {
16ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  float (*f1a)(float, int) = f1;
17ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  float (*f1b)(float, int) = &f1;
18ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  float (*f1c)(float) = f1;
19ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  float (*f1d)(float) = (f1);
20ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  float (*f1e)(float) = &f1;
21ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  float (*f1f)(float) = (&f1);
22ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
23