def err_arc_nolifetime_behavior : Error<
"explicit ownership qualifier on cast result has no effect">;
def err_arc_objc_object_in_tag : Error<
- "ARC forbids %select{Objective-C objects|blocks}0 of type %1 in "
- "%select{struct|interface|union|<<ERROR>>|enum}2">;
+ "ARC forbids %select{Objective-C objects|blocks}0 in "
+ "%select{struct|interface|union|<<ERROR>>|enum}1">;
def err_arc_objc_property_default_assign_on_object : Error<
"ARC forbids synthesizing a property of an Objective-C object "
"with unspecified ownership or storage attribute">;
}
} else {
Diag(FD->getLocation(), diag::err_arc_objc_object_in_tag)
- << T->isBlockPointerType() << T << Record->getTagKind();
+ << T->isBlockPointerType() << Record->getTagKind();
}
ARCErrReported = true;
}
}
struct S {
- A* a; // expected-error {{ARC forbids Objective-C objects of type 'A *__strong' in struct}}
+ A* a; // expected-error {{ARC forbids Objective-C objects in struct}}
};
@interface B
// rdar://8843524
struct A {
- id x; // expected-error {{ARC forbids Objective-C objects of type '__strong id' in struct}}
+ id x; // expected-error {{ARC forbids Objective-C objects in struct}}
};
union u {
- id u; // expected-error {{ARC forbids Objective-C objects of type '__strong id' in union}}
+ id u; // expected-error {{ARC forbids Objective-C objects in union}}
};
@interface I {
struct A a;
struct B {
- id y[10][20]; // expected-error {{ARC forbids Objective-C objects}}
+ id y[10][20]; // expected-error {{ARC forbids Objective-C objects in struct}}
id z;
} b;
// rdar://10260525
struct r10260525 {
- id (^block) (); // expected-error {{ARC forbids blocks of type 'id (^__strong)()' in struct}}
+ id (^block) (); // expected-error {{ARC forbids blocks in struct}}
};
struct S {