]> granicus.if.org Git - clang/commit
[ObjC] Allow declaring __weak pointer fields in C structs in ARC.
authorAkira Hatanaka <ahatanaka@apple.com>
Sat, 10 Mar 2018 06:36:08 +0000 (06:36 +0000)
committerAkira Hatanaka <ahatanaka@apple.com>
Sat, 10 Mar 2018 06:36:08 +0000 (06:36 +0000)
commita4a75f6417166ff8d689a41c26a68b9c979e8e42
tree652a6dd7bbaee530909e3240f396ad5304e75d6b
parent43e0507fd76635a074d75b91efcef369706c6691
[ObjC] Allow declaring __weak pointer fields in C structs in ARC.

This patch uses the infrastructure added in r326307 for enabling
non-trivial fields to be declared in C structs to allow __weak fields in
C structs in ARC.

rdar://problem/33599681

Differential Revision: https://reviews.llvm.org/D44095

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@327206 91177308-0d34-0410-b5e6-96231b3b80d8
18 files changed:
include/clang/AST/Decl.h
include/clang/AST/DeclCXX.h
include/clang/AST/Type.h
lib/AST/ASTImporter.cpp
lib/AST/Decl.cpp
lib/AST/DeclCXX.cpp
lib/AST/Type.cpp
lib/CodeGen/CGBlocks.cpp
lib/CodeGen/CGNonTrivialStruct.cpp
lib/CodeGen/CGObjC.cpp
lib/CodeGen/CodeGenFunction.h
lib/CodeGen/TargetInfo.cpp
lib/Sema/SemaDecl.cpp
lib/Serialization/ASTReaderDecl.cpp
lib/Serialization/ASTWriter.cpp
lib/Serialization/ASTWriterDecl.cpp
test/CodeGenObjC/nontrivial-c-struct-exception.m
test/CodeGenObjC/weak-in-c-struct.m [new file with mode: 0644]