mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-19 11:35:51 -04:00

which we don't think can't have one, only allow it in the tiny number of attributes which opts into this weird parse rule. I've manually checked that the handlers for all these attributes can in fact cope with an identifier as the argument. This is still somewhat terrible; we should move more fully towards picking the parsing rules based on the attribute, and make the Parse -> Sema interface more type-safe. llvm-svn: 193295
28 lines
976 B
C
28 lines
976 B
C
// RUN: %clang_cc1 -triple mipsel-linux-gnu -fsyntax-only -verify %s
|
|
|
|
void foo32();
|
|
void foo16();
|
|
void __attribute__((nomips16)) foo32();
|
|
void __attribute__((mips16)) foo16();
|
|
|
|
void __attribute__((nomips16)) foo32_();
|
|
void __attribute__((mips16)) foo16_();
|
|
void foo32_();
|
|
void foo16_();
|
|
|
|
void foo32__() __attribute__((nomips16));
|
|
void foo32__() __attribute__((mips16));
|
|
|
|
void foo32a() __attribute__((nomips16(0))) ; // expected-error {{'nomips16' attribute takes no arguments}}
|
|
void __attribute__((mips16(1))) foo16a(); // expected-error {{'mips16' attribute takes no arguments}}
|
|
|
|
void __attribute__((nomips16(1, 2))) foo32b(); // expected-error {{'nomips16' attribute takes no arguments}}
|
|
void __attribute__((mips16(1, 2))) foo16b(); // expected-error {{'mips16' attribute takes no arguments}}
|
|
|
|
|
|
__attribute((nomips16)) int a; // expected-error {{attribute only applies to functions}}
|
|
|
|
__attribute((mips16)) int b; // expected-error {{attribute only applies to functions}}
|
|
|
|
|