brintos

brintos / llvm-project-archived public Read only

0
0
Text · 629 B · 87b05ef Raw
23 lines · plain
1// RUN: %clang_cc1 -fblocks -fobjc-gc -triple x86_64-apple-darwin -fobjc-runtime=macosx-fragile-10.5 -emit-llvm %s -o - | \2// RUN: FileCheck %s3// RUN: %clang_cc1 -fblocks -fobjc-gc -triple i386-apple-darwin -fobjc-runtime=macosx-fragile-10.5 -emit-llvm %s -o - | \4// RUN: FileCheck %s5 6@interface NSObject 7- copy;8@end9 10int main(void) {11    NSObject *object = 0;12    __weak __block NSObject* weak_object = object;13    void (^callback) (void) = [^{14        if (weak_object)15                [weak_object copy];16    } copy];17    callback();18    return 0;19}20 21// CHECK: call ptr @objc_read_weak22// CHECK: call ptr @objc_read_weak23