fp16-sema.c revision 8eb5b29ec11f5f6922132a68f8e88a9b0f69a489
1// RUN: %clang_cc1 -fsyntax-only -verify %s
2
3// Functions cannot have parameters of type __fp16.
4extern void f (__fp16); // expected-error {{parameters cannot have __fp16 type; did you forget * ?}}
5extern void g (__fp16 *);
6
7extern void (*pf) (__fp16);  // expected-error {{parameters cannot have __fp16 type; did you forget * ?}}
8extern void (*pg) (__fp16*);
9
10typedef void(*tf) (__fp16);  // expected-error {{parameters cannot have __fp16 type; did you forget * ?}}
11typedef void(*tg) (__fp16*);
12
13void kf(a)
14 __fp16 a; {  // expected-error {{parameters cannot have __fp16 type; did you forget * ?}}
15}
16
17void kg(a)
18 __fp16 *a; {
19}
20
21// Functions cannot return type __fp16.
22extern __fp16 f1 (void); // expected-error {{function return value cannot have __fp16 type; did you forget * ?}}
23extern __fp16 *g1 (void);
24
25extern __fp16 (*pf1) (void); // expected-error {{function return value cannot have __fp16 type; did you forget * ?}}
26extern __fp16 *(*gf1) (void);
27
28typedef __fp16 (*tf1) (void); // expected-error {{function return value cannot have __fp16 type; did you forget * ?}}
29typedef __fp16 *(*tg1) (void);
30
31