Get rid of this horrible "benign race" by exploiting ManagedStatic to initialize
[oota-llvm.git] / test / FrontendObjC / 2007-05-02-Strong.m
1 // RUN: %llvmgcc -c %s -fobjc-gc -o /dev/null
2 typedef int NSInteger;
3 typedef struct _NSRect {
4   int origin;
5   int size;
6 } NSRect;
7
8 __attribute__((objc_gc(strong))) NSRect *_cachedRectArray;
9 extern const NSRect NSZeroRect;
10 @interface A{
11 }
12 -(void)bar:(NSInteger *)rectCount;
13 @end
14
15 @implementation A 
16
17 -(void)bar:(NSInteger *)rectCount {
18   NSRect appendRect = NSZeroRect; 
19
20   _cachedRectArray[*rectCount - 1] = NSZeroRect; 
21 }
22
23 @end