1 // RUN: %clang_cc1 %s -verify -fsyntax-only
3 __attribute__((visibility("hidden"))) __attribute__((aligned
)) struct A
; // expected-warning{{attribute 'visibility' is ignored, place it after "struct" to apply attribute to type declaration}} \
4 // expected-warning{{attribute 'aligned' is ignored, place it after "struct" to apply attribute to type declaration}}
5 __attribute__((visibility("hidden"))) __attribute__((aligned
)) union B
; // expected-warning{{attribute 'visibility' is ignored, place it after "union" to apply attribute to type declaration}} \
6 // expected-warning{{attribute 'aligned' is ignored, place it after "union" to apply attribute to type declaration}}
7 __attribute__((visibility("hidden"))) __attribute__((aligned
)) enum C
{C
}; // expected-warning{{attribute 'visibility' is ignored, place it after "enum" to apply attribute to type declaration}} \
8 // expected-warning{{attribute 'aligned' is ignored, place it after "enum" to apply attribute to type declaration}}
10 // Make sure that we produce the same warnings on block declarations.
12 __attribute__((visibility("hidden"))) __attribute__((aligned
)) struct A
; // expected-warning{{attribute 'visibility' is ignored, place it after "struct" to apply attribute to type declaration}} \
13 // expected-warning{{attribute 'aligned' is ignored, place it after "struct" to apply attribute to type declaration}}
14 __attribute__((visibility("hidden"))) __attribute__((aligned
)) union B
; // expected-warning{{attribute 'visibility' is ignored, place it after "union" to apply attribute to type declaration}} \
15 // expected-warning{{attribute 'aligned' is ignored, place it after "union" to apply attribute to type declaration}}
16 __attribute__((visibility("hidden"))) __attribute__((aligned
)) enum C
{C
}; // expected-warning{{attribute 'visibility' is ignored, place it after "enum" to apply attribute to type declaration}} \
17 // expected-warning{{attribute 'aligned' is ignored, place it after "enum" to apply attribute to type declaration}}
20 __attribute__((visibility("hidden"))) __attribute__((aligned
)) struct D
{} d
;
21 __attribute__((visibility("hidden"))) __attribute__((aligned
)) union E
{} e
;
22 __attribute__((visibility("hidden"))) __attribute__((aligned
)) enum F
{F
} f
;