blob: a326e1c58f487af4a3d9a40f100a660e75f417c3 [file] [log] [blame]
Richard Smith0cdcc982013-01-29 01:24:26 +00001// RUN: %clang_cc1 %s -ast-print -fms-extensions | FileCheck %s
Michael Han99315932013-01-24 16:46:58 +00002
Michael Hanaf02bbe2013-02-01 01:19:17 +00003// CHECK: int x __attribute__((aligned(4)));
Michael Han99315932013-01-24 16:46:58 +00004int x __attribute__((aligned(4)));
5
Richard Smith0cdcc982013-01-29 01:24:26 +00006// FIXME: Print this at a valid location for a __declspec attr.
Michael Hanaf02bbe2013-02-01 01:19:17 +00007// CHECK: int y __declspec(align(4));
Richard Smith0cdcc982013-01-29 01:24:26 +00008__declspec(align(4)) int y;
Michael Han99315932013-01-24 16:46:58 +00009
Aaron Ballman48a533d2018-02-27 23:49:28 +000010// CHECK: short arr[3] __attribute__((aligned));
11short arr[3] __attribute__((aligned));
12
Michael Han99315932013-01-24 16:46:58 +000013// CHECK: void foo() __attribute__((const));
14void foo() __attribute__((const));
15
16// CHECK: void bar() __attribute__((__const));
17void bar() __attribute__((__const));
Richard Smith210b67d2013-01-29 02:31:57 +000018
Aaron Ballman317a77f2013-05-22 23:25:32 +000019// CHECK: int * __ptr32 p32;
Richard Smith210b67d2013-01-29 02:31:57 +000020int * __ptr32 p32;
21
Aaron Ballman317a77f2013-05-22 23:25:32 +000022// CHECK: int * __ptr64 p64;
Richard Smith210b67d2013-01-29 02:31:57 +000023int * __ptr64 p64;
Aaron Ballman317a77f2013-05-22 23:25:32 +000024
Michael Krusedc5ce722018-08-03 01:21:16 +000025// CHECK: int * __uptr __ptr32 p32_2;
Aaron Ballman317a77f2013-05-22 23:25:32 +000026int * __uptr __ptr32 p32_2;
27
Michael Krusedc5ce722018-08-03 01:21:16 +000028// CHECK: int * __sptr __ptr64 p64_2;
Aaron Ballman317a77f2013-05-22 23:25:32 +000029int * __sptr __ptr64 p64_2;
30
Michael Krusedc5ce722018-08-03 01:21:16 +000031// CHECK: int * __uptr __ptr32 p32_3;
Aaron Ballman317a77f2013-05-22 23:25:32 +000032int * __uptr __ptr32 p32_3;
33
34// CHECK: int * __sptr * __ptr32 ppsp32;
35int * __sptr * __ptr32 ppsp32;
Manman Ren42e09eb2016-03-10 23:54:12 +000036
Manman Renccf25bb2016-06-28 20:55:30 +000037// CHECK: __attribute__((availability(macos, strict, introduced=10.6)));
Manman Ren42e09eb2016-03-10 23:54:12 +000038void f6(int) __attribute__((availability(macosx,strict,introduced=10.6)));