1 // For backward compatibility, fields of C unions declared in system headers
2 // that have non-trivial ObjC ownership qualifications are marked as unavailable
3 // unless the qualifier is explicit and __strong.
5 #pragma clang system_header
7 typedef __strong id StrongID
;
16 typedef union { // expected-note {{'U1_SystemHeader' has subobjects that are non-trivial to destruct}} expected-note {{'U1_SystemHeader' has subobjects that are non-trivial to copy}}
17 __strong id f0
; // expected-note {{f0 has type '__strong id' that is non-trivial to destruct}} expected-note {{f0 has type '__strong id' that is non-trivial to copy}}