150
|
1 // RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify %s
|
|
2
|
|
3 int i __attribute__((flatten)); // expected-error {{'flatten' attribute only applies to functions}}
|
|
4
|
|
5 void f1() __attribute__((flatten));
|
|
6 void f2() __attribute__((flatten(1))); // expected-error {{'flatten' attribute takes no arguments}}
|
|
7
|
|
8 template <typename T>
|
|
9 void tf1() __attribute__((flatten));
|
|
10
|
|
11 int f3(int __attribute__((flatten)), int); // expected-error{{'flatten' attribute only applies to functions}}
|
|
12
|
|
13 struct A {
|
|
14 int f __attribute__((flatten)); // expected-error{{'flatten' attribute only applies to functions}}
|
|
15 void mf1() __attribute__((flatten));
|
|
16 static void mf2() __attribute__((flatten));
|
|
17 };
|
|
18
|
|
19 int ci [[gnu::flatten]]; // expected-error {{'flatten' attribute only applies to functions}}
|
|
20
|
|
21 [[gnu::flatten]] void cf1();
|
|
22 [[gnu::flatten(1)]] void cf2(); // expected-error {{'flatten' attribute takes no arguments}}
|
|
23
|
|
24 template <typename T>
|
|
25 [[gnu::flatten]]
|
|
26 void ctf1();
|
|
27
|
|
28 int cf3(int c[[gnu::flatten]], int); // expected-error{{'flatten' attribute only applies to functions}}
|
|
29
|
|
30 struct CA {
|
|
31 int f [[gnu::flatten]]; // expected-error{{'flatten' attribute only applies to functions}}
|
|
32 [[gnu::flatten]] void mf1();
|
|
33 [[gnu::flatten]] static void mf2();
|
|
34 };
|