1// RUN: %clang_cc1 %s -ast-print -fms-extensions | FileCheck %s
2
3// CHECK: int x __attribute__((aligned(4)));
4int x __attribute__((aligned(4)));
5
6// FIXME: Print this at a valid location for a __declspec attr.
7// CHECK: int y __declspec(align(4));
8__declspec(align(4)) int y;
9
10// CHECK: void foo() __attribute__((const));
11void foo() __attribute__((const));
12
13// CHECK: void bar() __attribute__((__const));
14void bar() __attribute__((__const));
15
16// CHECK: int * __ptr32 p32;
17int * __ptr32 p32;
18
19// CHECK: int * __ptr64 p64;
20int * __ptr64 p64;
21
22// TODO: the Type Printer has no way to specify the order to print attributes
23// in, and so it currently always prints them in reverse order. Fix this.
24// CHECK: int * __ptr32 __uptr p32_2;
25int * __uptr __ptr32 p32_2;
26
27// CHECK: int * __ptr64 __sptr p64_2;
28int * __sptr __ptr64 p64_2;
29
30// CHECK: int * __ptr32 __uptr p32_3;
31int * __uptr __ptr32 p32_3;
32
33// CHECK: int * __sptr * __ptr32 ppsp32;
34int * __sptr * __ptr32 ppsp32;
35