xref: /llvm-project/clang/test/CodeGenObjC/blocks-5.m (revision 0f1c1be1968076d6f96f8a7bcc4a15cf195ecd97)
1// RUN: %clang_cc1 -triple x86_64-apple-darwin9 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -fblocks -o %t %s
2
3@interface IDEWorkspaceDocument
4{
5  id _defaultEditorStateTree;
6}
7- (void)enumerateKeysAndObjectsUsingBlock:(void (^)(id key, id obj, unsigned char *stop))block ;
8@end
9
10
11
12int foo(void);
13extern void DVT (volatile const void * object, volatile const void * selector, const char * functionName);
14@implementation IDEWorkspaceDocument
15
16- (void)stateSavingDefaultEditorStatesForURLs {
17 [_defaultEditorStateTree enumerateKeysAndObjectsUsingBlock:^(id identifier, id urlsToEditorStates, unsigned char *stop) {
18  do{
19if (foo() )
20  DVT(&self,&_cmd,__PRETTY_FUNCTION__);
21
22}while(0);
23
24  do{
25       DVT(&self,&_cmd,__PRETTY_FUNCTION__);
26    }while(0);
27
28
29 }];
30
31}
32
33- (void)enumerateKeysAndObjectsUsingBlock:(void (^)(id key, id obj, unsigned char *stop))block {}
34
35@end
36