1 | // RUN: %clang_cc1 -triple mips-linux-gnu -fsyntax-only -verify %s |
2 | |
3 | __attribute__((nomicromips(0))) void foo1(); // expected-error {{'nomicromips' attribute takes no arguments}} |
4 | __attribute__((micromips(1))) void foo2(); // expected-error {{'micromips' attribute takes no arguments}} |
5 | |
6 | __attribute((nomicromips)) int a; // expected-error {{attribute only applies to functions}} |
7 | __attribute((micromips)) int b; // expected-error {{attribute only applies to functions}} |
8 | |
9 | __attribute__((micromips,mips16)) void foo5(); // expected-error {{'mips16' and 'micromips' attributes are not compatible}} \ |
10 | // expected-note {{conflicting attribute is here}} |
11 | __attribute__((mips16,micromips)) void foo6(); // expected-error {{'micromips' and 'mips16' attributes are not compatible}} \ |
12 | // expected-note {{conflicting attribute is here}} |
13 | |
14 | __attribute((micromips)) void foo7(); |
15 | __attribute((nomicromips)) void foo8(); |
16 | __attribute__((mips16)) void foo9(void) __attribute__((micromips)); // expected-error {{'micromips' and 'mips16' attributes are not compatible}} \ |
17 | // expected-note {{conflicting attribute is here}} |
18 | |