[PATCH] D65256: [Sema][ObjC] Mark C union fields that have non-trivial ObjC ownership qualifications as unavailable if the union is declared in a system header
John McCall via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 25 10:09:10 PDT 2019
rjmccall added a comment.
These were unavailable in system headers before because otherwise we would've had to make them invalid. Since these unions are no longer otherwise invalid, there shouldn't be a problem with allowing them in system headers, and in fact making the semantics vary that way seems quite problematic. Now, specific *uses* in system headers might still appear to be invalid — e.g. an ObjC ivar of type `union { __strong id x; }` — and the right behavior is definitely that those use sites should be marked as invalid instead of refusing to compile the system header.
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D65256/new/
https://reviews.llvm.org/D65256
More information about the cfe-commits
mailing list