1ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: %clang_cc1 %s -verify -pedantic
2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaotypedef int unary_int_func(int arg);
3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaounary_int_func *func;
4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaounary_int_func *set_func(void *p) {
6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao func = p; // expected-warning {{converts between void pointer and function pointer}}
7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao p = func; // expected-warning {{converts between void pointer and function pointer}}
8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao return p; // expected-warning {{converts between void pointer and function pointer}}
10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
12