xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGenObjC/objc2-new-gc-api-strongcast.m (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1*f4a2713aSLionel Sambuc// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -fblocks -fobjc-gc -emit-llvm -o %t %s
2*f4a2713aSLionel Sambuc// RUN: grep -F '@objc_assign_strongCast' %t  | count 4
3*f4a2713aSLionel Sambuc// RUN: %clang_cc1 -x objective-c++ -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -fblocks -fobjc-gc -emit-llvm -o %t %s
4*f4a2713aSLionel Sambuc// RUN: grep -F '@objc_assign_strongCast' %t  | count 4
5*f4a2713aSLionel Sambuc
6*f4a2713aSLionel Sambuc@interface DSATextSearch @end
7*f4a2713aSLionel Sambuc
8*f4a2713aSLionel SambucDSATextSearch **_uniqueIdToIdentifierArray = (0);
9*f4a2713aSLionel Sambucvoid foo (int _nextId)
10*f4a2713aSLionel Sambuc{
11*f4a2713aSLionel Sambuc	_uniqueIdToIdentifierArray[_nextId] = 0;  // objc_assign_strongCast
12*f4a2713aSLionel Sambuc}
13*f4a2713aSLionel Sambuc
14*f4a2713aSLionel Sambuctypedef struct {
15*f4a2713aSLionel Sambuc    unsigned long state;
16*f4a2713aSLionel Sambuc    id *itemsPtr;
17*f4a2713aSLionel Sambuc    void (^bp)();
18*f4a2713aSLionel Sambuc    unsigned long *mutationsPtr;
19*f4a2713aSLionel Sambuc    unsigned long extra[5];
20*f4a2713aSLionel Sambuc} NSFastEnumerationState;
21*f4a2713aSLionel Sambuc
22*f4a2713aSLionel Sambucvoid foo1 (NSFastEnumerationState * state)
23*f4a2713aSLionel Sambuc{
24*f4a2713aSLionel Sambuc   state->itemsPtr = 0;
25*f4a2713aSLionel Sambuc   state->bp = ^{};
26*f4a2713aSLionel Sambuc}
27*f4a2713aSLionel Sambuc
28