Home | History | Annotate | Download | only in SemaCXX
      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 // FIXME: Print this with correct format and order.
     17 // CHECK: void foo1() __attribute__((pure)) __attribute__((noinline));
     18 void foo1() __attribute__((noinline, pure));
     19 
     20 // CHECK: typedef int Small1 __attribute__((mode(byte)));
     21 typedef int Small1 __attribute__((mode(byte)));
     22 
     23 // CHECK: int small __attribute__((mode(byte)));
     24 int small __attribute__((mode(byte)));
     25 
     26 // CHECK: int v __attribute__((visibility("hidden")));
     27 int v __attribute__((visibility("hidden")));
     28 
     29 // CHECK: char *PR24565() __attribute__((malloc))
     30 char *PR24565() __attribute__((__malloc__));
     31 
     32 // CHECK: class __attribute__((consumable("unknown"))) AttrTester1
     33 class __attribute__((consumable(unknown))) AttrTester1 {
     34   // CHECK: void callableWhen() __attribute__((callable_when("unconsumed", "consumed")));
     35   void callableWhen()  __attribute__((callable_when("unconsumed", "consumed")));
     36 };
     37