1 // RUN: %clang_cc1 -triple x86_64-apple-macosx10.10 -ast-dump "%s" | FileCheck %s
3 // CHECK: TypedefDecl {{.*}} referenced AtomicBool '_Atomic(_Bool)'
4 // CHECK: AtomicType {{.*}} '_Atomic(_Bool)'
5 // CHECK: BuiltinType {{.*}} '_Bool'
6 // CHECK: ObjCInterfaceDecl {{.*}} A0
7 // CHECK: ObjCPropertyDecl {{.*}} p '_Atomic(_Bool)' {{.*}} nonatomic
8 // CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
9 // CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
10 // CHECK: ParmVarDecl {{.*}} p '_Bool'
11 // CHECK: ObjCInterfaceDecl {{.*}} A1
12 // CHECK: ObjCPropertyDecl {{.*}} p 'AtomicBool':'_Atomic(_Bool)' {{.*}} nonatomic
13 // CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
14 // CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
15 // CHECK: ParmVarDecl {{.*}} p '_Bool'
16 // CHECK: ObjCInterfaceDecl {{.*}} A2
17 // CHECK: ObjCIvarDecl {{.*}} p '_Atomic(_Bool)' protected
18 // CHECK: ObjCPropertyDecl {{.*}} p '_Atomic(_Bool)'
19 // CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
20 // CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
21 // CHECK: ParmVarDecl {{.*}} p '_Bool'
22 // CHECK: ObjCInterfaceDecl {{.*}} A3
23 // CHECK: ObjCIvarDecl {{.*}} p 'AtomicBool':'_Atomic(_Bool)' protected
24 // CHECK: ObjCPropertyDecl {{.*}} p 'AtomicBool':'_Atomic(_Bool)'
25 // CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
26 // CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
27 // CHECK: ParmVarDecl {{.*}} p '_Bool'
29 typedef _Atomic(_Bool) AtomicBool;
32 @property(nonatomic) _Atomic(_Bool) p;
38 @property(nonatomic) AtomicBool p;
46 @property _Atomic(_Bool) p;
56 @property AtomicBool p;