atomic. This is probably something we should warn about.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139584
91177308-0d34-0410-b5e6-
96231b3b80d8
return;
}
+ // Properties on bitfield ivars need to be emitted using expression
+ // accesses even if they're nominally atomic.
+ if (ivar->isBitField()) {
+ Kind = Expression;
+ return;
+ }
+
// GC-qualified or ARC-qualified ivars need to be emitted as
// expressions. This actually works out to being atomic anyway,
// except for ARC __strong, but that should trigger the above code.
// CHECK-NEXT: ret void
test4_printf("%.2f", t.f);
}
+
+@interface Test5 {
+ unsigned _x : 5;
+}
+@property unsigned x;
+@end
+@implementation Test5
+@synthesize x = _x;
+@end