Home | History | Annotate | Download | only in Sema
      1 // RUN: %clang_cc1 %s -ast-print -fms-extensions | FileCheck %s
      2 
      3 // CHECK: int x __attribute__((aligned(4)));
      4 int 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));
     11 void foo() __attribute__((const));
     12 
     13 // CHECK: void bar() __attribute__((__const));
     14 void bar() __attribute__((__const));
     15 
     16 // CHECK: int * __ptr32 p32;
     17 int * __ptr32 p32;
     18 
     19 // CHECK: int * __ptr64 p64;
     20 int * __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;
     25 int * __uptr __ptr32 p32_2;
     26 
     27 // CHECK: int * __ptr64 __sptr p64_2;
     28 int * __sptr __ptr64 p64_2;
     29 
     30 // CHECK: int * __ptr32 __uptr p32_3;
     31 int * __uptr __ptr32 p32_3;
     32 
     33 // CHECK: int * __sptr * __ptr32 ppsp32;
     34 int * __sptr * __ptr32 ppsp32;
     35 
     36 // CHECK: __attribute__((availability(macos, strict, introduced=10.6)));
     37 void f6(int) __attribute__((availability(macosx,strict,introduced=10.6)));
     38