mips16_attr_allowed.c revision 7dfd18275259df609f8574a25302fc73a000aa64
1// RUN: %clang_cc1 -triple mipsel-linux-gnu -fsyntax-only -verify %s
2
3void foo32();
4void foo16();
5void __attribute__((nomips16)) foo32();
6void __attribute__((mips16)) foo16();
7
8void __attribute__((nomips16)) foo32_();
9void __attribute__((mips16)) foo16_();
10void foo32_();
11void foo16_();
12
13void foo32__() __attribute__((nomips16));
14void foo32__() __attribute__((mips16));
15
16void foo32a() __attribute__((nomips16(xyz))) ; // expected-error {{attribute takes no arguments}}
17void __attribute__((mips16(xyz))) foo16a(); // expected-error {{attribute takes no arguments}}
18
19void __attribute__((nomips16(1, 2))) foo32b(); // expected-error {{attribute takes no arguments}}
20void __attribute__((mips16(1, 2))) foo16b(); // expected-error {{attribute takes no arguments}}
21
22
23__attribute((nomips16)) int a; // expected-error {{attribute only applies to functions}}
24
25__attribute((mips16)) int b; // expected-error {{attribute only applies to functions}}
26
27
28