llvm-project/clang/lib/AST
Akira Hatanaka 3f2c9917a4 [Sema][ObjC] Mark C union fields that have non-trivial ObjC ownership
qualifications as unavailable if the union is declared in a system
header

r365985 stopped marking those fields as unavailable, which caused the
union's NonTrivialToPrimitive* bits to be set to true. This patch
restores the behavior prior to r365985, except that users can explicitly
specify the ownership qualification of the field to instruct the
compiler not to mark it as unavailable.

rdar://problem/53420753

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

llvm-svn: 371276
2019-09-07 00:34:47 +00:00
..
APValue.cpp [clang] Add storage for APValue in ConstantExpr 2019-06-15 10:24:47 +00:00
ASTConsumer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ASTContext.cpp [Sema][ObjC] Mark C union fields that have non-trivial ObjC ownership 2019-09-07 00:34:47 +00:00
ASTDiagnostic.cpp Recommit r359859 "[Attribute/Diagnostics] Print macro if definition is an attribute declaration" 2019-05-07 03:20:17 +00:00
ASTDumper.cpp When dumping the AST to JSON, dump the type information from a typeid expression with a type operand. 2019-05-27 14:34:31 +00:00
ASTImporter.cpp [ASTImporter] Added visibility context check for TypedefNameDecl. 2019-09-04 14:12:18 +00:00
ASTImporterLookupTable.cpp [ASTImporter] Fix unhandled cases in ASTImporterLookupTable 2019-06-11 13:35:25 +00:00
ASTStructuralEquivalence.cpp [AST] AST structural equivalence to work internally with pairs. 2019-09-02 11:01:09 +00:00
ASTTypeTraits.cpp [OPENMP5.0]Add support for device_type clause in declare target 2019-08-23 16:11:14 +00:00
AttrImpl.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CMakeLists.txt Revert "[Clang Interpreter] Initial patch for the constexpr interpreter" 2019-09-04 10:57:06 +00:00
CXXABI.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXXInheritance.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
Comment.cpp [clang] Ensure that comment classes are trivially destructible 2019-08-27 11:21:00 +00:00
CommentBriefParser.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommentCommandTraits.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommentLexer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommentParser.cpp Adds a warning when an inline Doxygen comment has no argument 2019-08-05 08:05:16 +00:00
CommentSema.cpp [Wdocumentation] fixes an assertion failure with typedefed function and block pointer 2019-09-02 18:24:33 +00:00
ComparisonCategories.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DataCollection.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Decl.cpp [Sema] Diagnose default-initialization, destruction, and copying of 2019-09-07 00:34:43 +00:00
DeclBase.cpp [c++20] Fix some ambiguities in our mangling of lambdas with explicit 2019-09-05 01:23:47 +00:00
DeclCXX.cpp [clang] Devirtualization for classes with destructors marked as 'final' 2019-08-31 18:52:44 +00:00
DeclFriend.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DeclGroup.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DeclObjC.cpp Use llvm::stable_sort 2019-04-24 14:43:05 +00:00
DeclOpenMP.cpp [OPENMP 5.0]Initial support for 'allocator' clause. 2019-03-12 18:52:33 +00:00
DeclPrinter.cpp [Concepts] Concept definitions (D40381) 2019-07-10 21:25:49 +00:00
DeclTemplate.cpp [Concepts] Concept definitions (D40381) 2019-07-10 21:25:49 +00:00
DeclarationName.cpp Use getOperatorSpelling to get the spelling of an overloaded operator 2019-06-14 20:01:51 +00:00
Expr.cpp Revert "Fix crash on switch conditions of non-integer types in templates" 2019-08-13 19:07:28 +00:00
ExprCXX.cpp [OpenCL] Improve destructor support in C++ for OpenCL 2019-07-22 09:39:13 +00:00
ExprClassification.cpp [C++2a] Add __builtin_bit_cast, used to implement std::bit_cast 2019-07-02 18:28:13 +00:00
ExprConstant.cpp Revert "[Clang Interpreter] Initial patch for the constexpr interpreter" 2019-09-04 10:57:06 +00:00
ExprObjC.cpp [AST][NFC] Add const children() accessors to all AST nodes 2019-04-12 15:36:02 +00:00
ExternalASTMerger.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
ExternalASTSource.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
FormatString.cpp [Sema] Don't warn on printf('%hd', [char]) (PR41467) 2019-08-23 18:01:57 +00:00
FormatStringParsing.h Add a missing header comment, NFC 2019-08-13 22:01:39 +00:00
InheritViz.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ItaniumCXXABI.cpp [c++20] Fix some ambiguities in our mangling of lambdas with explicit 2019-09-05 01:23:47 +00:00
ItaniumMangle.cpp Update comment for <template-param-decl> mangling to match extended mangling rule in r371004. 2019-09-06 20:32:01 +00:00
JSONNodeDumper.cpp Generate parent context id from Decl* instead of DeclContext*. 2019-09-04 20:30:00 +00:00
Linkage.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Mangle.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
MicrosoftCXXABI.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
MicrosoftMangle.cpp Implement Microsoft-compatible mangling for decomposition declarations. 2019-09-05 21:08:50 +00:00
NSAPI.cpp Removed dead code from clang/AST/NSAPI.h 2019-08-29 06:30:12 +00:00
NestedNameSpecifier.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ODRHash.cpp [ODRHash] Fix null pointer dereference for ObjC selectors with empty slots. 2019-06-28 17:42:17 +00:00
OSLog.cpp os_log: Allow specifying mask type in format string. 2018-11-06 07:05:14 +00:00
OpenMPClause.cpp [OPENMP5.0]Add support for device_type clause in declare target 2019-08-23 16:11:14 +00:00
ParentMap.cpp [OPENMP]Fix PR42632: crash on the analysis of the OpenMP constructs. 2019-07-17 18:03:39 +00:00
PrintfFormatString.cpp [Sema][ObjC] Fix a -Wformat false positive with localizedStringForKey 2019-08-14 16:57:11 +00:00
QualTypeNames.cpp Make getFullyQualifiedName qualify both the pointee and class type for member ptr types 2019-03-15 11:09:41 +00:00
RawCommentList.cpp [clang] Refactor doc comments to Decls attribution 2019-08-13 18:11:44 +00:00
RecordLayout.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RecordLayoutBuilder.cpp P0840R2: support for [[no_unique_address]] attribute 2019-06-20 20:44:45 +00:00
ScanfFormatString.cpp Fix parameter name comments using clang-tidy. NFC. 2019-07-16 04:46:31 +00:00
SelectorLocationsKind.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Stmt.cpp [clang] Ensure that statements, expressions and types are trivially destructible 2019-08-27 11:35:49 +00:00
StmtCXX.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
StmtIterator.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
StmtObjC.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
StmtOpenMP.cpp [OPENMP]Support for non-rectangular loops. 2019-08-14 19:30:06 +00:00
StmtPrinter.cpp [C++2a] Add __builtin_bit_cast, used to implement std::bit_cast 2019-07-02 18:28:13 +00:00
StmtProfile.cpp [C++2a] Add __builtin_bit_cast, used to implement std::bit_cast 2019-07-02 18:28:13 +00:00
StmtViz.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TemplateBase.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TemplateName.cpp [c++20] Implement P0846R0: allow (ADL-only) calls to template-ids whose 2019-05-09 03:31:27 +00:00
TextNodeDumper.cpp [ASTDump] Add is_anonymous to VisitCXXRecordDecl 2019-08-12 17:07:49 +00:00
Type.cpp [Sema] Diagnose default-initialization, destruction, and copying of 2019-09-07 00:34:43 +00:00
TypeLoc.cpp Add SVE opaque built-in types 2019-08-09 08:52:54 +00:00
TypePrinter.cpp [Clang] Fix pretty printing of CUDA address spaces 2019-06-05 17:29:00 +00:00
VTTBuilder.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
VTableBuilder.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00