llvm-project/clang/lib/Sema
Eric Fiselier 0736066b0b [Sema] Add __is_aggregate type-trait
Summary:
[LWG 2911](http://cplusplus.github.io/LWG/lwg-defects.html#2911) adds `std::is_aggregate` to the library, which requires a new builtin trait. This patch implements `__is_aggregate`.


Reviewers: rsmith, majnemer, aaron.ballman

Reviewed By: aaron.ballman

Subscribers: STL_MSFT, cfe-commits

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

llvm-svn: 300116
2017-04-12 22:12:15 +00:00
..
AnalysisBasedWarnings.cpp Suppress warning on unreachable [[clang::fallthrough]] within a template instantiation. 2017-03-22 01:49:19 +00:00
AttributeList.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
CMakeLists.txt It seems we need to add SemaExpr.cpp to the /bigobj list; I am getting consistent failures of hitting the section count limit. 2016-06-01 15:17:54 +00:00
CodeCompleteConsumer.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
CoroutineStmtBuilder.h [coroutines] Fix rebuilding of implicit and dependent coroutine statements. 2017-04-03 19:21:00 +00:00
DeclSpec.cpp Recommit r289979 [OpenCL] Allow disabling types and declarations associated with extensions 2016-12-18 05:18:55 +00:00
DelayedDiagnostic.cpp [Sema] Delay partial availability diagnostics, just like deprecated 2016-10-28 21:39:27 +00:00
IdentifierResolver.cpp [modules] Separately track whether an identifier's preprocessor information and 2016-02-05 19:03:40 +00:00
JumpDiagnostics.cpp [Sema] Handle CaseStmt and DefaultStmt as SwitchCase 2016-10-26 02:00:00 +00:00
MultiplexExternalSemaSource.cpp Modular Codegen: Support homing debug info for types in modular objects 2017-04-11 21:13:37 +00:00
Scope.cpp [Parser] Clear the TemplateParamScope bit of the current scope's flag 2016-04-29 02:24:14 +00:00
ScopeInfo.cpp [coroutines] Fix diagnostics depending on the first coroutine statement. 2017-03-11 02:35:37 +00:00
Sema.cpp Revert temporarily D29877 "Warn about unused static file scope function template declarations." 2017-04-11 16:05:23 +00:00
SemaAccess.cpp P0136R1, DR1573, DR1645, DR1715, DR1736, DR1903, DR1941, DR1959, DR1991: 2016-06-28 19:03:57 +00:00
SemaAttr.cpp Add #pragma clang fp 2017-04-04 21:18:36 +00:00
SemaCUDA.cpp Factor out some common code between SpecialMemberExceptionSpecInfo and SpecialMemberDeletionInfo. 2017-02-24 02:07:20 +00:00
SemaCXXScopeSpec.cpp [Sema] Unbreak GCC -Werror build (enum compare). 2017-03-17 22:19:20 +00:00
SemaCast.cpp [Objective-C] Miscellaneous -fobjc-weak Fixes 2017-03-29 18:16:38 +00:00
SemaChecking.cpp [Sema][X86] Update immediate check for gather/scatter prefetch instructions to match the _MM_HINT_T0/T1 constant definitions 2017-03-31 17:22:30 +00:00
SemaCodeComplete.cpp [libclang] Fix crash in member access code completion with implicit base 2017-03-28 07:22:21 +00:00
SemaConsumer.cpp
SemaCoroutine.cpp [coroutines] Fix rebuilding of implicit and dependent coroutine statements. 2017-04-03 19:21:00 +00:00
SemaDecl.cpp [ODRHash] Improve handling of hash values 2017-04-11 21:31:00 +00:00
SemaDeclAttr.cpp Sema: prevent __declspec(naked) use on x64 2017-04-07 15:13:47 +00:00
SemaDeclCXX.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaDeclObjC.cpp Support attributes for Objective-C categories 2017-03-23 11:44:25 +00:00
SemaExceptionSpec.cpp [coroutines] Add DependentCoawaitExpr and fix re-building CoroutineBodyStmt. 2017-03-06 23:38:15 +00:00
SemaExpr.cpp [Sema] Extend GetSignedVectorType to deal with non ExtVector types 2017-04-06 10:38:03 +00:00
SemaExprCXX.cpp [Sema] Add __is_aggregate type-trait 2017-04-12 22:12:15 +00:00
SemaExprMember.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaExprObjC.cpp [Sema][ObjC] Check whether a variable has a definition, rather than 2017-04-11 22:01:33 +00:00
SemaFixItUtils.cpp Wire a SourceLocation into IsDerivedFrom and move the RequireCompleteType call 2015-12-18 21:45:41 +00:00
SemaInit.cpp Fix lambda to block conversion in C++17 by avoiding copy elision for the 2017-04-06 12:53:43 +00:00
SemaLambda.cpp Fix lambda to block conversion in C++17 by avoiding copy elision for the 2017-04-06 12:53:43 +00:00
SemaLookup.cpp Rangify for loop, NFC. 2017-04-12 10:05:48 +00:00
SemaObjCProperty.cpp [Sema][ObjC] Avoid the "type of property does not match type of accessor" 2017-03-30 13:33:51 +00:00
SemaOpenMP.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaOverload.cpp [OpenCL] Map default address space to alloca address space 2017-04-11 17:24:23 +00:00
SemaPseudoObject.cpp [Objective-C] Fix "weak-unavailable" warning with -fobjc-weak 2017-03-29 18:09:02 +00:00
SemaStmt.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaStmtAsm.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaStmtAttr.cpp Add [[clang::suppress(rule, ...)]] attribute 2017-03-27 19:45:24 +00:00
SemaTemplate.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaTemplateDeduction.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaTemplateInstantiate.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaTemplateInstantiateDecl.cpp [NFC, Scoped Enum] Convert Sema::ExpressionEvaluationContext into a scoped Enum 2017-04-01 21:30:49 +00:00
SemaTemplateVariadic.cpp PR24440: Do not silently discard a fold-expression appearing as the operand of a cast-expression. 2017-02-15 19:57:10 +00:00
SemaType.cpp [OpenCL] Map default address space to alloca address space 2017-04-11 17:24:23 +00:00
TreeTransform.h [coroutines] Fix rebuilding of implicit and dependent coroutine statements. 2017-04-03 19:21:00 +00:00
TypeLocBuilder.cpp [Sema] Fix bug in TypeLocBuilder::pushImpl 2016-02-18 21:05:09 +00:00
TypeLocBuilder.h Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00