clang 22.0.0git
|
#include "clang/AST/DeclCXX.h"
#include "clang/AST/TemplateBase.h"
#include "clang/AST/Type.h"
#include "clang/Basic/DiagnosticIDs.h"
#include "clang/Basic/DiagnosticParse.h"
#include "clang/Basic/DiagnosticSema.h"
#include "clang/Basic/Specifiers.h"
#include "clang/Basic/TypeTraits.h"
#include "clang/Sema/EnterExpressionEvaluationContext.h"
#include "clang/Sema/Initialization.h"
#include "clang/Sema/Lookup.h"
#include "clang/Sema/Overload.h"
#include "clang/Sema/Sema.h"
#include "clang/Sema/SemaHLSL.h"
#include "llvm/ADT/STLExtras.h"
Go to the source code of this file.
Typedefs | |
using | ExtractedTypeTraitInfo |
Enumerations | |
enum class | TypeTraitReturnType { Bool , SizeT } |
using ExtractedTypeTraitInfo |
Definition at line 2021 of file SemaTypeTraits.cpp.
|
strong |
Enumerator | |
---|---|
Bool | |
SizeT |
Definition at line 1515 of file SemaTypeTraits.cpp.
|
static |
Definition at line 1201 of file SemaTypeTraits.cpp.
References clang::InitializationKind::CreateCopy(), clang::ExprError(), clang::TypeLoc::getBeginLoc(), clang::QualType::getNonLValueExprType(), clang::TypeSourceInfo::getType(), clang::TypeSourceInfo::getTypeLoc(), clang::Expr::getValueKindForType(), clang::Sema::SFINAETrap::hasErrorOccurred(), clang::Init, clang::InitializedEntity::InitializeTemporary(), clang::Type::isArrayType(), clang::Type::isFunctionType(), clang::Type::isObjectType(), clang::Self, clang::Sema::Unevaluated, and clang::Unevaluated.
Referenced by EvaluateBinaryTypeTrait(), and EvaluateBooleanTypeTrait().
|
static |
Check the completeness of a type in a unary type trait.
If the particular type trait requires a complete type, tries to complete it. If completing the type fails, a diagnostic is emitted and false returned. If completing the type succeeds or no completion was required, returns true.
Definition at line 411 of file SemaTypeTraits.cpp.
References clang::Type::getAsCXXRecordDecl(), clang::Type::getBaseElementTypeUnsafe(), clang::Type::isArrayType(), clang::Type::isIncompleteArrayType(), clang::Type::isVoidType(), and clang::Sema::RequireCompleteType().
Referenced by clang::Sema::BuildTypeTrait().
|
static |
Checks that type T is not an atomic type (_Atomic).
true
if T
is VLA and a diagnostic was emitted, false
otherwise. Definition at line 395 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), and clang::T.
Referenced by EvaluateUnaryTypeTrait().
|
static |
Definition at line 2434 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::bases(), clang::SemaBase::Diag(), clang::RecordDecl::fields(), and clang::CXXRecordDecl::methods().
Referenced by DiagnoseIsEmptyReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2479 of file SemaTypeTraits.cpp.
References clang::Sema::Context, clang::SemaBase::Diag(), DiagnoseIsEmptyReason(), clang::ASTContext::getAsArrayType(), and clang::T.
|
static |
Definition at line 2502 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), clang::Decl::getLocation(), clang::CXXRecordDecl::isEffectivelyFinal(), and clang::Decl::isInvalidDecl().
Referenced by DiagnoseIsFinalReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2516 of file SemaTypeTraits.cpp.
References clang::Sema::Context, clang::SemaBase::Diag(), DiagnoseIsFinalReason(), clang::ASTContext::getAsArrayType(), and clang::T.
|
static |
Definition at line 2778 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::bases(), and clang::SemaBase::Diag().
Referenced by DiagnoseNonAbstractReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2791 of file SemaTypeTraits.cpp.
References clang::Sema::Context, clang::SemaBase::Diag(), DiagnoseNonAbstractReason(), clang::ASTContext::getAsArrayType(), clang::CXXRecordDecl::hasDefinition(), and clang::T.
|
static |
Definition at line 2692 of file SemaTypeTraits.cpp.
References clang::AS_private, clang::AS_protected, clang::CXXRecordDecl::bases(), clang::CXXRecordDecl::ctors(), clang::DeclContext::decls(), clang::SemaBase::Diag(), clang::RecordDecl::fields(), clang::Decl::getLocation(), clang::TagDecl::getSourceRange(), clang::CXXRecordDecl::isPolymorphic(), and clang::CXXRecordDecl::methods().
Referenced by DiagnoseNonAggregateReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2760 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), DiagnoseNonAggregateReason(), clang::CXXRecordDecl::hasDefinition(), clang::Decl::isInvalidDecl(), and clang::T.
|
static |
Definition at line 2408 of file SemaTypeTraits.cpp.
References clang::Sema::BuildBinOp(), clang::Sema::Context, clang::SemaBase::Diag(), clang::Decl::getLocation(), clang::ASTContext::getRValueReferenceType(), clang::ASTContext::getTranslationUnitDecl(), clang::Expr::getValueKindForType(), clang::Decl::isInvalidDecl(), clang::T, clang::Sema::Unevaluated, and clang::Unevaluated.
Referenced by clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2335 of file SemaTypeTraits.cpp.
References clang::Sema::Context, clang::InitializationKind::CreateDirect(), clang::SemaBase::Diag(), clang::Decl::getLocation(), clang::QualType::getNonLValueExprType(), clang::ASTContext::getRValueReferenceType(), clang::ASTContext::getTranslationUnitDecl(), clang::Expr::getValueKindForType(), clang::CXXRecordDecl::hasDefinition(), clang::Init, clang::InitializedEntity::InitializeTemporary(), clang::Type::isFunctionType(), clang::Decl::isInvalidDecl(), clang::Type::isObjectType(), clang::T, clang::Sema::Unevaluated, and clang::Unevaluated.
Referenced by clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2089 of file SemaTypeTraits.cpp.
References clang::CopyAssignment, clang::CopyConstructor, clang::SemaBase::Diag(), clang::CXXRecordDecl::getDestructor(), clang::Decl::getSourceRange(), clang::CXXRecordDecl::hasSimpleCopyAssignment(), clang::CXXRecordDecl::hasSimpleCopyConstructor(), clang::CXXRecordDecl::hasSimpleMoveAssignment(), clang::CXXRecordDecl::hasSimpleMoveConstructor(), clang::CXXRecordDecl::hasUserDeclaredCopyAssignment(), clang::CXXRecordDecl::hasUserDeclaredCopyConstructor(), clang::CXXRecordDecl::hasUserDeclaredMoveAssignment(), clang::CXXRecordDecl::hasUserDeclaredMoveConstructor(), clang::TagDecl::isUnion(), LookupSpecialMemberFromXValue(), clang::MoveAssignment, and clang::MoveConstructor.
Referenced by DiagnoseNonReplaceableReason(), and DiagnoseNonTriviallyRelocatableReason().
|
static |
Definition at line 2192 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::bases(), clang::cast(), clang::SemaBase::Diag(), DiagnoseNonDefaultMovable(), clang::RecordDecl::fields(), clang::CXXRecordDecl::getDestructor(), clang::Decl::getSourceRange(), clang::FunctionDecl::getSourceRange(), clang::Decl::hasAttr(), clang::CXXRecordDecl::hasDeletedDestructor(), clang::CXXRecordDecl::hasSimpleCopyAssignment(), clang::CXXRecordDecl::hasSimpleCopyConstructor(), clang::CXXRecordDecl::hasSimpleMoveAssignment(), clang::CXXRecordDecl::hasSimpleMoveConstructor(), clang::Sema::IsCXXReplaceableType(), and LookupSpecialMemberFromXValue().
Referenced by DiagnoseNonReplaceableReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2234 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), DiagnoseNonReplaceableReason(), clang::Sema::getASTContext(), clang::ASTContext::getBaseElementType(), clang::Decl::getLocation(), clang::CXXRecordDecl::hasDefinition(), clang::Decl::isInvalidDecl(), and clang::T.
|
static |
Definition at line 2566 of file SemaTypeTraits.cpp.
References clang::AS_none, clang::CXXRecordDecl::bases(), clang::SemaBase::Diag(), clang::RecordDecl::fields(), clang::CXXRecordDecl::forallBases(), clang::Decl::getAccess(), clang::Decl::getLocation(), clang::TagDecl::getSourceRange(), clang::CXXRecordDecl::hasDirectFields(), hasMultipleDataBaseClassesWithFields(), clang::CXXRecordDecl::isPolymorphic(), and clang::CXXRecordDecl::methods().
Referenced by DiagnoseNonStandardLayoutReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2664 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), DiagnoseNonStandardLayoutReason(), clang::Decl::getLocation(), clang::CXXRecordDecl::hasDefinition(), clang::Decl::isInvalidDecl(), and clang::T.
|
static |
Definition at line 2278 of file SemaTypeTraits.cpp.
References clang::Sema::DefaultedFunctionKind::asSpecialMember(), clang::CXXRecordDecl::bases(), clang::CopyAssignment, clang::CopyConstructor, clang::SemaBase::Diag(), clang::RecordDecl::fields(), clang::Decl::getASTContext(), clang::Sema::getDefaultedFunctionKind(), clang::CXXRecordDecl::getDestructor(), clang::FunctionDecl::getSourceRange(), clang::CXXRecordDecl::hasDeletedDestructor(), clang::FunctionDecl::isTrivial(), clang::CXXRecordDecl::methods(), clang::MoveAssignment, and clang::MoveConstructor.
Referenced by DiagnoseNonTriviallyCopyableReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2389 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), DiagnoseNonTriviallyCopyableReason(), clang::Decl::getLocation(), clang::CXXRecordDecl::hasDefinition(), clang::Decl::isInvalidDecl(), and clang::T.
|
static |
Definition at line 2133 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::bases(), clang::SemaBase::Diag(), DiagnoseNonDefaultMovable(), clang::RecordDecl::fields(), clang::CXXRecordDecl::getDestructor(), clang::FunctionDecl::getSourceRange(), clang::Decl::hasAttr(), clang::CXXRecordDecl::hasDeletedDestructor(), and clang::Sema::IsCXXTriviallyRelocatableType().
Referenced by DiagnoseNonTriviallyRelocatableReason(), and clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 2164 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), DiagnoseNonTriviallyRelocatableReason(), clang::Decl::getLocation(), clang::CXXRecordDecl::hasDefinition(), clang::Decl::isInvalidDecl(), and clang::T.
|
static |
Checks that type T is not a VLA.
true
if T
is VLA and a diagnostic was emitted, false
otherwise. Definition at line 381 of file SemaTypeTraits.cpp.
References clang::SemaBase::Diag(), and clang::T.
Referenced by EvaluateBinaryTypeTrait(), and EvaluateUnaryTypeTrait().
|
static |
Definition at line 1892 of file SemaTypeTraits.cpp.
References clang::Dim, clang::Stmt::getSourceRange(), clang::Self, and clang::T.
Referenced by clang::Sema::BuildArrayTypeTrait().
|
static |
Definition at line 1633 of file SemaTypeTraits.cpp.
References clang::cast(), CheckConvertibilityForTypeTraits(), clang::CT_Cannot, DiagnoseVLAInCXXTypeTrait(), clang::Type::getAsCanonical(), clang::TypeLoc::getBeginLoc(), clang::QualType::getNonReferenceType(), clang::TypeSourceInfo::getType(), clang::TypeSourceInfo::getTypeLoc(), clang::Expr::getValueKindForType(), clang::Sema::SFINAETrap::hasErrorOccurred(), clang::QualType::hasNonTrivialObjCLifetime(), clang::isa(), clang::Type::isDependentType(), clang::Type::isIncompleteArrayType(), clang::Type::isLValueReferenceType(), clang::Type::isRValueReferenceType(), clang::Type::isStructureOrClassType(), clang::Type::isVoidType(), clang::Self, clang::Success, clang::Sema::Unevaluated, clang::Unevaluated, clang::VK_LValue, clang::VK_PRValue, and clang::VK_XValue.
Referenced by EvaluateBooleanTypeTrait().
|
static |
Definition at line 1298 of file SemaTypeTraits.cpp.
References clang::BTT_Last, clang::Sema::canThrow(), CheckConvertibilityForTypeTraits(), clang::Sema::Context, clang::InitializationKind::CreateCopy(), clang::InitializationKind::CreateDirect(), clang::ASTContext::CreateTypeSourceInfo(), clang::CT_Cannot, EvaluateBinaryTypeTrait(), EvaluateUnaryTypeTrait(), clang::QualType::getNonLValueExprType(), clang::ASTContext::getPointerType(), clang::ASTContext::getRValueReferenceType(), clang::ASTContext::getTranslationUnitDecl(), clang::Expr::getValueKindForType(), clang::Sema::SFINAETrap::hasErrorOccurred(), clang::Init, clang::InitializedEntity::InitializeTemporary(), clang::CXXRecordDecl::isAbstract(), clang::Type::isFunctionType(), clang::Type::isIncompleteArrayType(), clang::ActionResult< PtrTy, Compress >::isInvalid(), clang::Type::isObjectType(), clang::Type::isVoidType(), clang::Sema::RequireCompleteType(), clang::T, clang::Sema::Unevaluated, clang::Unevaluated, and clang::UTT_Last.
Referenced by clang::Sema::BuildTypeTrait().
|
static |
Definition at line 1978 of file SemaTypeTraits.cpp.
References clang::Expr::isLValue(), and clang::Expr::isPRValue().
Referenced by clang::Sema::BuildExpressionTrait().
|
static |
Definition at line 1271 of file SemaTypeTraits.cpp.
References clang::APValue, clang::SemaBase::Diag(), clang::Sema::getASTContext(), clang::SourceRange::getBegin(), clang::Sema::GetDecompositionElementCount(), clang::ASTContext::getSizeType(), clang::ASTContext::MakeIntValue(), and clang::T.
Referenced by clang::Sema::BuildTypeTrait().
|
static |
Definition at line 704 of file SemaTypeTraits.cpp.
References clang::AS_public, clang::C, clang::RecordDecl::canPassInRegisters(), clang::cast(), clang::Constructor, clang::Destructor, DiagnoseAtomicInCXXTypeTrait(), DiagnoseVLAInCXXTypeTrait(), clang::Type::getAsCXXRecordDecl(), clang::TypeLoc::getBeginLoc(), clang::CXXRecordDecl::getDestructor(), clang::FunctionProtoType::getNumParams(), clang::TypeSourceInfo::getType(), clang::TypeSourceInfo::getTypeLoc(), clang::Decl::hasAttr(), clang::CXXRecordDecl::hasNonTrivialCopyAssignment(), clang::CXXRecordDecl::hasNonTrivialCopyConstructor(), clang::CXXRecordDecl::hasNonTrivialDefaultConstructor(), clang::CXXRecordDecl::hasNonTrivialMoveAssignment(), clang::CXXRecordDecl::hasNonTrivialMoveConstructor(), HasNoThrowOperator(), clang::CXXRecordDecl::hasTrivialCopyAssignment(), clang::CXXRecordDecl::hasTrivialCopyConstructor(), clang::CXXRecordDecl::hasTrivialDefaultConstructor(), clang::CXXRecordDecl::hasTrivialDestructor(), clang::CXXRecordDecl::hasTrivialMoveAssignment(), clang::CXXRecordDecl::hasTrivialMoveConstructor(), clang::isa(), clang::CXXRecordDecl::isAbstract(), clang::Type::isAggregateType(), clang::Type::isArrayType(), clang::CXXMethodDecl::isCopyAssignmentOperator(), clang::FunctionDecl::isDeleted(), clang::CXXRecordDecl::isEmpty(), clang::CXXMethodDecl::isMoveAssignmentOperator(), clang::FunctionProtoType::isNothrow(), clang::CXXRecordDecl::isPolymorphic(), clang::Type::isScalarType(), isTriviallyEqualityComparableType(), IsTriviallyRelocatableType(), clang::TagDecl::isUnion(), clang::FunctionDecl::isUserProvided(), clang::Type::isVectorType(), clang::Qualifiers::OCL_Autoreleasing, clang::Qualifiers::OCL_ExplicitNone, clang::Qualifiers::OCL_None, clang::Qualifiers::OCL_Strong, clang::Qualifiers::OCL_Weak, clang::Self, and clang::T.
Referenced by EvaluateBooleanTypeTrait().
|
static |
Definition at line 2028 of file SemaTypeTraits.cpp.
References clang::NamedDecl::getIdentifier(), clang::IdentifierInfo::getName(), clang::Decl::isInStdNamespace(), clang::TemplateArgument::Pack, StdNameToTypeTrait(), clang::NestedNameSpecifier::Type, and clang::TemplateArgument::Type.
Referenced by clang::Sema::DiagnoseTypeTraitDetails().
|
static |
Definition at line 1520 of file SemaTypeTraits.cpp.
|
static |
Definition at line 2548 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::bases(), clang::RecordDecl::fields(), and clang::Decl::isInvalidDecl().
Referenced by DiagnoseNonStandardLayoutReason().
|
static |
Definition at line 594 of file SemaTypeTraits.cpp.
References clang::Sema::Context, clang::Sema::CreateOverloadedBinOp(), clang::ASTContext::getCanonicalTagType(), clang::CallExpr::getDirectCallee(), clang::ASTContext::getTranslationUnitDecl(), clang::Sema::SFINAETrap::hasErrorOccurred(), clang::ASTContext::hasSameUnqualifiedType(), clang::Sema::LookupBinOp(), clang::T, clang::Sema::TUScope, clang::Sema::Unevaluated, and clang::VK_LValue.
Referenced by isTriviallyEqualityComparableType().
|
static |
Definition at line 561 of file SemaTypeTraits.cpp.
References clang::LookupResult::begin(), clang::C, clang::cast(), clang::Type::castAs(), clang::LookupResult::end(), clang::ValueDecl::getType(), clang::isa(), clang::FunctionProtoType::isNothrow(), clang::Sema::LookupOrdinaryName, clang::Self, and clang::LookupResult::suppressDiagnostics().
Referenced by EvaluateUnaryTypeTrait().
|
static |
Definition at line 117 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::hasDefinition(), clang::CXXRecordDecl::hasSimpleCopyConstructor(), clang::CXXRecordDecl::hasSimpleMoveConstructor(), clang::Decl::isInvalidDecl(), and LookupSpecialMemberFromXValue().
Referenced by clang::Sema::CheckCXX2CRelocatableAndReplaceable(), and IsDefaultMovable().
|
static |
Definition at line 131 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::hasDefinition(), clang::CXXRecordDecl::hasSimpleCopyAssignment(), clang::CXXRecordDecl::hasSimpleMoveAssignment(), clang::Decl::isInvalidDecl(), and LookupSpecialMemberFromXValue().
Referenced by clang::Sema::CheckCXX2CRelocatableAndReplaceable(), and IsDefaultMovable().
|
static |
Definition at line 349 of file SemaTypeTraits.cpp.
References clang::Sema::CheckCXX2CRelocatableAndReplaceable(), clang::Sema::getASTContext(), clang::ASTContext::getRelocationInfoForCXXRecord(), ASTContext::CXXRecordDeclRelocationInfo::IsReplaceable, and clang::ASTContext::setRelocationInfoForCXXRecord().
|
static |
Definition at line 156 of file SemaTypeTraits.cpp.
References clang::CXXDestructorDecl::getCanonicalDecl(), clang::CXXRecordDecl::getDestructor(), hasSuitableConstructorForRelocation(), hasSuitableMoveAssignmentOperatorForRelocation(), clang::FunctionDecl::isDefaulted(), clang::FunctionDecl::isDeleted(), and clang::FunctionDecl::isUserProvided().
Referenced by clang::Sema::CheckCXX2CRelocatableAndReplaceable().
|
static |
Definition at line 216 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::bases(), clang::RecordDecl::fields(), clang::CXXRecordDecl::hasDeletedDestructor(), and clang::Sema::IsCXXReplaceableType().
Referenced by clang::Sema::CheckCXX2CRelocatableAndReplaceable().
|
static |
Definition at line 180 of file SemaTypeTraits.cpp.
References clang::CXXRecordDecl::bases(), clang::ASTContext::containsAddressDiscriminatedPointerAuth(), clang::Sema::Context, clang::RecordDecl::fields(), clang::CXXRecordDecl::hasDeletedDestructor(), clang::Sema::IsCXXTriviallyRelocatableType(), and clang::TagDecl::isUnion().
Referenced by clang::Sema::CheckCXX2CRelocatableAndReplaceable().
|
static |
Definition at line 654 of file SemaTypeTraits.cpp.
References clang::Type::getAsCXXRecordDecl(), clang::Sema::getASTContext(), HasNonDeletedDefaultedEqualityComparison(), clang::ASTContext::hasUniqueObjectRepresentations(), clang::Type::isArrayType(), clang::Type::isDependentType(), clang::Type::isEnumeralType(), and clang::Type::isIncompleteType().
Referenced by EvaluateUnaryTypeTrait().
Definition at line 670 of file SemaTypeTraits.cpp.
References clang::RecordDecl::canPassInRegisters(), clang::ASTContext::containsAddressDiscriminatedPointerAuth(), clang::Type::getAsCXXRecordDecl(), clang::Type::getAsRecordDecl(), clang::Sema::getASTContext(), clang::ASTContext::getBaseElementType(), clang::Sema::IsCXXTriviallyRelocatableType(), clang::Type::isIncompleteType(), clang::Type::isObjectType(), clang::CXXRecordDecl::isPolymorphic(), clang::QualType::isTriviallyCopyableType(), clang::QualType::PCK_ARCStrong, clang::QualType::PCK_Trivial, and clang::T.
Referenced by EvaluateUnaryTypeTrait().
|
static |
Definition at line 31 of file SemaTypeTraits.cpp.
References clang::Sema::AddMethodCandidate(), clang::Sema::AddMethodTemplateCandidate(), clang::Sema::AddOverloadCandidate(), clang::Sema::AddTemplateOverloadCandidate(), clang::AS_none, clang::DeclContextLookupResult::begin(), clang::OverloadCandidateSet::BestViableFunction(), clang::cast(), clang::Expr::Classify(), clang::OverloadCandidateSet::CSK_Normal, clang::ASTContext::DeclarationNames, clang::DeclContextLookupResult::empty(), clang::DeclContextLookupResult::end(), clang::Sema::getASTContext(), clang::ASTContext::getCanonicalTagType(), clang::getConstructorInfo(), clang::DeclarationNameTable::getCXXConstructorName(), clang::DeclarationNameTable::getCXXOperatorName(), clang::CXXRecordDecl::getDefinition(), clang::Decl::getLocation(), clang::NamedDecl::getUnderlyingDecl(), clang::DeclContext::lookup(), clang::DeclAccessPair::make(), clang::OR_Deleted, clang::OR_Success, clang::VK_LValue, and clang::VK_XValue.
Referenced by DiagnoseNonDefaultMovable(), DiagnoseNonReplaceableReason(), hasSuitableConstructorForRelocation(), and hasSuitableMoveAssignmentOperatorForRelocation().
|
static |
Definition at line 2005 of file SemaTypeTraits.cpp.
Referenced by ExtractTypeTraitFromExpression().