]> gcc.gnu.org Git - gcc.git/blame - gcc/testsuite/obj-c++.dg/property/at-property-14.mm
In gcc/objc/: 2010-11-14 Nicola Pero <nicola.pero@meta-innovation.com>
[gcc.git] / gcc / testsuite / obj-c++.dg / property / at-property-14.mm
CommitLineData
9a179d01
NP
1/* Contributed by Nicola Pero <nicola.pero@meta-innovation.com>, November 2010. */
2/* { dg-do compile } */
3
4#include <objc/objc.h>
5
6@interface MyRootClass
7{
8 Class isa;
9}
10
11/* Test the warnings on 'assign'. */
8926bd5d
NP
12@property id property_a; /* { dg-warning "object property .property.a. has no .assign., .retain. or .copy. attribute" } */
13 /* { dg-warning ".assign. can be unsafe for Objective-C objects" "" { target *-*-* } 12 } */
9a179d01
NP
14
15@property (readonly) id property_b; /* No 'assign' warning (assign semantics do not matter if the property is readonly). */
16@property id *property_c; /* No 'assign' warning (the type is not an Objective-C object). */
17@property Class property_d; /* No 'assign' warning (Classes are static objects so assign semantics do not matter for them). */
8926bd5d
NP
18@property MyRootClass *property_e; /* { dg-warning "object property .property.e. has no .assign., .retain. or .copy. attribute" } */
19 /* { dg-warning ".assign. can be unsafe for Objective-C objects" "" { target *-*-* } 18 } */
9a179d01 20@end
This page took 0.065578 seconds and 5 git commands to generate.