|
clang 23.0.0git
|
Captures information about "declaration specifiers". More...
#include "clang/Sema/DeclSpec.h"
Public Types | |
| enum | SCS { SCS_unspecified = 0 , SCS_typedef , SCS_extern , SCS_static , SCS_auto , SCS_register , SCS_private_extern , SCS_mutable } |
| storage-class-specifier More... | |
| enum | TSC { TSC_unspecified , TSC_imaginary , TSC_complex } |
| enum | TQ { TQ_unspecified = 0 , TQ_const = 1 , TQ_restrict = 2 , TQ_volatile = 4 , TQ_unaligned = 8 , TQ_atomic = 16 } |
| enum | ParsedSpecifiers { PQ_None = 0 , PQ_StorageClassSpecifier = 1 , PQ_TypeSpecifier = 2 , PQ_TypeQualifier = 4 , PQ_FunctionSpecifier = 8 } |
| ParsedSpecifiers - Flags to query which specifiers were applied. More... | |
| enum | FriendSpecified : bool { No , Yes } |
| enum class | OverflowBehaviorState { Unspecified , Wrap , Trap } |
| typedef ThreadStorageClassSpecifier | TSCS |
| typedef TypeSpecifierType | TST |
Static Public Member Functions | |
| static bool | isDeclRep (TST T) |
| static bool | isTransformTypeTrait (TST T) |
| static const char * | getSpecifierName (DeclSpec::TST T, const PrintingPolicy &Policy) |
| Turn a type-specifier-type into a string like "_Bool" or "union". | |
| static const char * | getSpecifierName (DeclSpec::TQ Q) |
| static const char * | getSpecifierName (TypeSpecifierSign S) |
| static const char * | getSpecifierName (DeclSpec::TSC C) |
| static const char * | getSpecifierName (TypeSpecifierWidth W) |
| static const char * | getSpecifierName (DeclSpec::SCS S) |
| static const char * | getSpecifierName (DeclSpec::TSCS S) |
| static const char * | getSpecifierName (ConstexprSpecKind C) |
| static const char * | getSpecifierName (OverflowBehaviorState S) |
Static Public Attributes | |
| static const TSCS | TSCS_unspecified = clang::TSCS_unspecified |
| static const TSCS | TSCS___thread = clang::TSCS___thread |
| static const TSCS | TSCS_thread_local = clang::TSCS_thread_local |
| static const TSCS | TSCS__Thread_local = clang::TSCS__Thread_local |
| static const TST | TST_unspecified = clang::TST_unspecified |
| static const TST | TST_void = clang::TST_void |
| static const TST | TST_char = clang::TST_char |
| static const TST | TST_wchar = clang::TST_wchar |
| static const TST | TST_char8 = clang::TST_char8 |
| static const TST | TST_char16 = clang::TST_char16 |
| static const TST | TST_char32 = clang::TST_char32 |
| static const TST | TST_int = clang::TST_int |
| static const TST | TST_int128 = clang::TST_int128 |
| static const TST | TST_bitint = clang::TST_bitint |
| static const TST | TST_half = clang::TST_half |
| static const TST | TST_BFloat16 = clang::TST_BFloat16 |
| static const TST | TST_float = clang::TST_float |
| static const TST | TST_double = clang::TST_double |
| static const TST | TST_float16 = clang::TST_Float16 |
| static const TST | TST_accum = clang::TST_Accum |
| static const TST | TST_fract = clang::TST_Fract |
| static const TST | TST_float128 = clang::TST_float128 |
| static const TST | TST_ibm128 = clang::TST_ibm128 |
| static const TST | TST_bool = clang::TST_bool |
| static const TST | TST_decimal32 = clang::TST_decimal32 |
| static const TST | TST_decimal64 = clang::TST_decimal64 |
| static const TST | TST_decimal128 = clang::TST_decimal128 |
| static const TST | TST_enum = clang::TST_enum |
| static const TST | TST_union = clang::TST_union |
| static const TST | TST_struct = clang::TST_struct |
| static const TST | TST_interface = clang::TST_interface |
| static const TST | TST_class = clang::TST_class |
| static const TST | TST_typename = clang::TST_typename |
| static const TST | TST_typeofType = clang::TST_typeofType |
| static const TST | TST_typeofExpr = clang::TST_typeofExpr |
| static const TST | TST_typeof_unqualType = clang::TST_typeof_unqualType |
| static const TST | TST_typeof_unqualExpr = clang::TST_typeof_unqualExpr |
| static const TST | TST_decltype = clang::TST_decltype |
| static const TST | TST_decltype_auto = clang::TST_decltype_auto |
| static const TST | TST_typename_pack_indexing |
| static const TST | TST_auto = clang::TST_auto |
| static const TST | TST_auto_type = clang::TST_auto_type |
| static const TST | TST_unknown_anytype = clang::TST_unknown_anytype |
| static const TST | TST_atomic = clang::TST_atomic |
| static const TST | TST_error = clang::TST_error |
Captures information about "declaration specifiers".
"Declaration specifiers" encompasses storage-class-specifiers, type-specifiers, type-qualifiers, and function-specifiers.
Definition at line 219 of file DeclSpec.h.
Definition at line 236 of file DeclSpec.h.
Definition at line 249 of file DeclSpec.h.
| Enumerator | |
|---|---|
| No | |
| Yes | |
Definition at line 325 of file DeclSpec.h.
|
strong |
| Enumerator | |
|---|---|
| Unspecified | |
| Wrap | |
| Trap | |
Definition at line 327 of file DeclSpec.h.
ParsedSpecifiers - Flags to query which specifiers were applied.
This is returned by getParsedSpecifiers.
| Enumerator | |
|---|---|
| PQ_None | |
| PQ_StorageClassSpecifier | |
| PQ_TypeSpecifier | |
| PQ_TypeQualifier | |
| PQ_FunctionSpecifier | |
Definition at line 316 of file DeclSpec.h.
| enum clang::DeclSpec::SCS |
storage-class-specifier
| Enumerator | |
|---|---|
| SCS_unspecified | |
| SCS_typedef | |
| SCS_extern | |
| SCS_static | |
| SCS_auto | |
| SCS_register | |
| SCS_private_extern | |
| SCS_mutable | |
Definition at line 223 of file DeclSpec.h.
| enum clang::DeclSpec::TQ |
| Enumerator | |
|---|---|
| TQ_unspecified | |
| TQ_const | |
| TQ_restrict | |
| TQ_volatile | |
| TQ_unaligned | |
| TQ_atomic | |
Definition at line 303 of file DeclSpec.h.
| enum clang::DeclSpec::TSC |
| Enumerator | |
|---|---|
| TSC_unspecified | |
| TSC_imaginary | |
| TSC_complex | |
Definition at line 242 of file DeclSpec.h.
|
inline |
Definition at line 466 of file DeclSpec.h.
References false, clang::nullptr, SCS_unspecified, TQ_unspecified, TSC_unspecified, TSCS_unspecified, TST_unspecified, and Unspecified.
|
inline |
Concatenates two attribute lists.
The GCC attribute syntax allows for the following:
This declares 4 attributes using 2 lists. The following syntax is also allowed and equivalent to the previous declaration.
Definition at line 873 of file DeclSpec.h.
References clang::ParsedAttributesView::begin(), and clang::ParsedAttributesView::end().
Referenced by clang::Parser::ParseTypeName().
|
inline |
Definition at line 847 of file DeclSpec.h.
References clang::Unspecified.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), and CreateNewFunctionDecl().
|
inline |
Definition at line 670 of file DeclSpec.h.
|
inline |
Definition at line 499 of file DeclSpec.h.
References SCS_unspecified, and TSCS_unspecified.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExplicitInstantiation(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), Finish(), and getFunctionStorageClass().
|
inline |
Clear out all of the type qualifiers.
Definition at line 630 of file DeclSpec.h.
References Unspecified.
Referenced by clang::Sema::BuildAnonymousStructOrUnion(), and checkOmittedBlockReturnType().
|
inline |
Definition at line 507 of file DeclSpec.h.
References TST_unspecified.
| void DeclSpec::Finish | ( | Sema & | S, |
| const PrintingPolicy & | Policy ) |
Finish - This does final analysis of the declspec, issuing diagnostics for things like "_Complex" (lacking an FP type).
Finish - This does final analysis of the declspec, rejecting things like "_Complex" (lacking an FP type).
After calling this method, DeclSpec is guaranteed self-consistent, even if an error occurred.
After calling this method, DeclSpec is guaranteed to be self-consistent, even if an error occurred.
Definition at line 1159 of file DeclSpec.cpp.
References ClearStorageClassSpecs(), clang::Consteval, clang::Constexpr, clang::Constinit, clang::Sema::Context, clang::FixItHint::CreateInsertion(), clang::FixItHint::CreateRemoval(), clang::SemaBase::Diag(), getConstexprSpecifier(), getConstexprSpecLoc(), getExplicitSpecLoc(), getExplicitSpecRange(), clang::Sema::getLangOpts(), clang::Sema::getLocForEndOfToken(), clang::Sema::getSourceManager(), getSpecifierName(), getStorageClassSpec(), getStorageClassSpecLoc(), clang::ASTContext::getTargetInfo(), getThreadStorageClassSpec(), getThreadStorageClassSpecLoc(), clang::TargetInfo::getTriple(), getTypeSpecComplexLoc(), getTypeSpecSign(), getTypeSpecType(), getTypeSpecWidth(), getVirtualSpecLoc(), hasExplicitSpecifier(), clang::TargetInfo::hasFeature(), clang::LangOptionsBase::HLSL_202y, clang::SourceManager::isBeforeInTranslationUnit(), isDeclRep(), isFriendSpecified(), clang::SourceLocation::isInvalid(), isVirtualSpecified(), clang::Keyword, clang::Long, clang::LongLong, SCS_auto, SCS_extern, SCS_private_extern, SCS_static, SCS_unspecified, clang::Short, TSC_unspecified, TSCS_unspecified, TST_accum, TST_auto, TST_bitint, TST_char, TST_char16, TST_char32, TST_char8, TST_decltype_auto, TST_double, TST_error, TST_float, TST_float128, TST_float16, TST_fract, TST_ibm128, TST_int, TST_int128, TST_unspecified, TST_wchar, clang::Unsigned, and clang::Unspecified.
| void DeclSpec::forEachCVRUQualifier | ( | llvm::function_ref< void(TQ, StringRef, SourceLocation)> | Handle | ) |
This method calls the passed in handler on each CVRU qual being set.
Handle - a handler to be invoked.
Definition at line 415 of file DeclSpec.cpp.
References TQ_const, TQ_restrict, TQ_unaligned, and TQ_volatile.
Referenced by forEachQualifier(), and clang::DeclaratorChunk::getFunction().
| void DeclSpec::forEachQualifier | ( | llvm::function_ref< void(TQ, StringRef, SourceLocation)> | Handle | ) |
This method calls the passed in handler on each qual being set.
Handle - a handler to be invoked.
Definition at line 427 of file DeclSpec.cpp.
References forEachCVRUQualifier().
Referenced by checkMethodTypeQualifiers(), and GetFullTypeForDeclarator().
|
inline |
Definition at line 567 of file DeclSpec.h.
|
inline |
Definition at line 605 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFriendTypeDecl(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::BuildQualifiedType(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckDestructorDeclarator(), diagnoseAndRemoveTypeQualifiers(), diagnoseRedundantReturnTypeQualifiers(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 852 of file DeclSpec.h.
Referenced by GetFullTypeForDeclarator(), clang::DeclaratorChunk::getFunction(), and takeDeclAttributes().
|
inline |
Definition at line 879 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExplicitInstantiation(), addContextSensitiveTypeNullability(), checkOmittedBlockReturnType(), clang::Sema::checkUnusedDeclAttributes(), ConvertDeclSpecToType(), distributeObjCPointerTypeAttrFromDeclarator(), getCCForDeclaratorChunk(), GetDeclSpecTypeForDeclarator(), GetFullTypeForDeclarator(), clang::DeclaratorChunk::getFunction(), GetTypeSourceInfoForDeclarator(), hasParsedAttr(), clang::Sema::ImplicitlyDefineFunction(), clang::Sema::ParsedFreeStandingDeclSpec(), clang::Parser::ParseTypeName(), clang::Sema::ProcessDeclAttributes(), and takeDeclAttributes().
|
inline |
Definition at line 880 of file DeclSpec.h.
|
inline |
Definition at line 559 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierIndexedPack(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFriendTypeDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::BuildMemInitializer(), clang::Sema::BuildMicrosoftCAnonymousStruct(), clang::Sema::CheckDeductionGuideDeclarator(), ConvertDeclSpecToType(), GetFullTypeForDeclarator(), clang::Sema::HandleDeclarator(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 838 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::SemaOpenMP::ActOnStartOfFunctionDefinitionInOpenMPDeclareVariantScope(), clang::Sema::ActOnStartOfLambdaDefinition(), clang::Sema::ActOnVariableDeclarator(), CreateNewFunctionDecl(), Finish(), GetFullTypeForDeclarator(), hasConstexprSpecifier(), clang::Sema::ParsedFreeStandingDeclSpec(), and SetConstexprSpec().
|
inline |
Definition at line 842 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnTypedefDeclarator(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::CheckMain(), CreateNewFunctionDecl(), Finish(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 602 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFriendTypeDecl(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckDestructorDeclarator(), ConvertDeclSpecToType(), diagnoseAndRemoveTypeQualifiers(), diagnoseRedundantReturnTypeQualifiers(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 608 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierIndexedPack(), clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::BuildMemInitializer(), and ConvertDeclSpecToType().
|
inline |
Definition at line 560 of file DeclSpec.h.
Referenced by GetFullTypeForDeclarator().
|
inline |
Definition at line 650 of file DeclSpec.h.
Referenced by CreateNewFunctionDecl().
|
inline |
Definition at line 660 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::CheckConversionDeclarator(), clang::Sema::DiagnoseFunctionSpecifiers(), and Finish().
|
inline |
Definition at line 661 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::CheckConversionDeclarator(), and Finish().
|
inline |
Definition at line 833 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFriendFunctionDecl(), and clang::Sema::ActOnFriendTypeDecl().
|
inline |
Definition at line 646 of file DeclSpec.h.
Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnTypedefDeclarator(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::CheckMain(), clang::Sema::HandleField(), clang::Sema::HandleMSProperty(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 836 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::ParsedFreeStandingDeclSpec(), and clang::Sema::ParseTypedefDecl().
|
inline |
Definition at line 668 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::CheckMain(), and clang::Sema::DiagnoseFunctionSpecifiers().
|
inline |
Definition at line 895 of file DeclSpec.h.
|
inline |
Definition at line 623 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 611 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), isOverflowBehaviorSpecified(), isTrapSpecified(), isWrapSpecified(), and SetOverflowBehavior().
|
inline |
Definition at line 544 of file DeclSpec.h.
References TST_typename_pack_indexing.
Referenced by clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::BuildMemInitializer(), and ConvertDeclSpecToType().
| unsigned DeclSpec::getParsedSpecifiers | ( | ) | const |
Return a bitmask of which flavors of specifiers this DeclSpec includes.
getParsedSpecifiers - Return a bitmask of which flavors of specifiers this declaration specifier includes.
Definition at line 442 of file DeclSpec.cpp.
References hasExplicitSpecifier(), hasTypeSpecifier(), PQ_FunctionSpecifier, PQ_StorageClassSpecifier, PQ_TypeQualifier, PQ_TypeSpecifier, SCS_unspecified, TQ_unspecified, and TSCS_unspecified.
Referenced by clang::SemaCodeCompletion::CodeCompleteDeclSpec(), GetDeclSpecTypeForDeclarator(), isEmpty(), and warnAboutRedundantParens().
|
inline |
Definition at line 607 of file DeclSpec.h.
|
inline |
Definition at line 535 of file DeclSpec.h.
References DeclRep, and isDeclRep().
Referenced by ConvertDeclSpecToType(), DiagnoseCountAttributedTypeInUnnamedAnon(), clang::Sema::FinalizeDeclaratorGroup(), GetDeclSpecTypeForDeclarator(), GetDiagnosticTypeSpecifierID(), GetFullTypeForDeclarator(), hasTagDefinition(), isMissingDeclaratorOk(), clang::Sema::ParsedFreeStandingDeclSpec(), clang::Sema::ParseTypedefDecl(), and clang::Parser::ParseTypeName().
|
inline |
Definition at line 539 of file DeclSpec.h.
References ExprRep.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::BuildMemInitializer(), clang::Sema::containsUnexpandedParameterPacks(), ConvertDeclSpecToType(), clang::Sema::getDestructorTypeForDecltype(), and RebuildDeclaratorInCurrentInstantiation().
|
inline |
Definition at line 550 of file DeclSpec.h.
References TemplateIdRep.
Referenced by ConvertDeclSpecToType(), and InventTemplateParameter().
|
inline |
Definition at line 531 of file DeclSpec.h.
References isTypeRep(), and TypeRep.
Referenced by clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::BuildMemInitializer(), clang::SemaCodeCompletion::CodeCompleteDeclSpec(), clang::Sema::containsUnexpandedParameterPacks(), ConvertDeclSpecToType(), CreateNewFunctionDecl(), clang::Sema::ParsedFreeStandingDeclSpec(), and RebuildDeclaratorInCurrentInstantiation().
|
inline |
Definition at line 603 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFriendTypeDecl(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::BuildQualifiedType(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckDestructorDeclarator(), diagnoseAndRemoveTypeQualifiers(), diagnoseRedundantReturnTypeQualifiers(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 558 of file DeclSpec.h.
Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFriendTypeDecl(), clang::Sema::BuildAnonymousStructOrUnion(), ConvertDeclSpecToType(), GetFullTypeForDeclarator(), clang::Sema::HandleDeclarator(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
static |
Definition at line 593 of file DeclSpec.cpp.
References clang::C, clang::Consteval, clang::Constexpr, clang::Constinit, and clang::Unspecified.
|
static |
Definition at line 473 of file DeclSpec.cpp.
References SCS_auto, SCS_extern, SCS_mutable, SCS_private_extern, SCS_register, SCS_static, SCS_typedef, and SCS_unspecified.
|
static |
Definition at line 607 of file DeclSpec.cpp.
References TQ_atomic, TQ_const, TQ_restrict, TQ_unaligned, TQ_unspecified, and TQ_volatile.
|
static |
Definition at line 511 of file DeclSpec.cpp.
References clang::C, TSC_complex, TSC_imaginary, and TSC_unspecified.
|
static |
Definition at line 487 of file DeclSpec.cpp.
References TSCS___thread, TSCS__Thread_local, TSCS_thread_local, and TSCS_unspecified.
|
static |
Turn a type-specifier-type into a string like "_Bool" or "union".
Definition at line 532 of file DeclSpec.cpp.
References clang::PrintingPolicy::Bool, clang::PrintingPolicy::MSWChar, TST_accum, TST_atomic, TST_auto, TST_auto_type, TST_BFloat16, TST_bitint, TST_bool, TST_char, TST_char16, TST_char32, TST_char8, TST_class, TST_decimal128, TST_decimal32, TST_decimal64, TST_decltype, TST_decltype_auto, TST_double, TST_enum, TST_error, TST_float, TST_float128, TST_float16, TST_fract, TST_half, TST_ibm128, TST_int, TST_int128, TST_interface, TST_struct, TST_typename, TST_typename_pack_indexing, TST_typeof_unqualExpr, TST_typeof_unqualType, TST_typeofExpr, TST_typeofType, TST_union, TST_unknown_anytype, TST_unspecified, TST_void, and TST_wchar.
Referenced by clang::Sema::ActOnDecompositionDeclarator(), clang::Sema::ActOnFunctionDeclarator(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnVariableDeclarator(), BadSpecifier(), ConvertDeclSpecToType(), diagnoseAndRemoveTypeQualifiers(), Finish(), GetFullTypeForDeclarator(), clang::Sema::HandleField(), clang::Sema::HandleMSProperty(), clang::Sema::ParsedFreeStandingDeclSpec(), SetBitIntType(), SetStorageClassSpec(), SetTypeAltiVecBool(), SetTypeAltiVecPixel(), SetTypeAltiVecVector(), SetTypePipe(), SetTypeSpecType(), SetTypeSpecType(), SetTypeSpecType(), and SetTypeSpecType().
|
static |
Definition at line 619 of file DeclSpec.cpp.
References Trap, Unspecified, and Wrap.
|
static |
Definition at line 520 of file DeclSpec.cpp.
References clang::Signed, clang::Unsigned, and clang::Unspecified.
|
static |
Definition at line 497 of file DeclSpec.cpp.
References clang::Long, clang::LongLong, clang::Short, and clang::Unspecified.
|
inline |
Definition at line 485 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXConditionDeclaration(), clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFriendTypeDecl(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnStartOfLambdaDefinition(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::CheckExplicitObjectMemberFunction(), ConvertDeclSpecToType(), Finish(), getCCForDeclaratorChunk(), GetDeclSpecTypeForDeclarator(), GetFullTypeForDeclarator(), getFunctionStorageClass(), getLambdaType(), clang::Sema::HandleDeclarator(), clang::Declarator::isStaticMember(), clang::Sema::ParsedFreeStandingDeclSpec(), StorageClassSpecToVarDeclStorageClass(), and warnAboutAmbiguousFunction().
|
inline |
Definition at line 494 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckConversionDeclarator(), clang::Sema::CheckDestructorDeclarator(), clang::Sema::CheckFieldDecl(), clang::Sema::CheckMain(), Finish(), getFunctionStorageClass(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 486 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnVariableDeclarator(), Finish(), clang::Sema::HandleField(), clang::Sema::HandleMSProperty(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 495 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnVariableDeclarator(), Finish(), clang::Sema::HandleField(), clang::Sema::HandleMSProperty(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 576 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), and clang::Sema::ActOnPseudoDestructorExpr().
|
inline |
getTypeQualifiers - Return a set of TQs.
Definition at line 601 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnFriendTypeDecl(), AddTypeQualifierResults(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckConversionDeclarator(), clang::Sema::CheckDestructorDeclarator(), checkOmittedBlockReturnType(), ConvertDeclSpecToType(), diagnoseRedundantReturnTypeQualifiers(), GetFullTypeForDeclarator(), clang::DeclaratorChunk::getFunction(), clang::Sema::ParsedFreeStandingDeclSpec(), and warnAboutRedundantParens().
|
inline |
Definition at line 517 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteDeclSpec(), ConvertDeclSpecToType(), and hasTypeSpecifier().
|
inline |
Definition at line 564 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and Finish().
|
inline |
Definition at line 568 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 555 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and InventTemplateParameter().
|
inline |
Definition at line 556 of file DeclSpec.h.
|
inline |
Definition at line 518 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteDeclSpec(), ConvertDeclSpecToType(), Finish(), hasTypeSpecifier(), and SetTypeSpecSign().
|
inline |
Definition at line 565 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 521 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), clang::Sema::ActOnCXXNestedNameSpecifierIndexedPack(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::BuildMemInitializer(), clang::SemaCodeCompletion::CodeCompleteDeclSpec(), clang::Sema::containsUnexpandedParameterPacks(), ConvertDeclSpecToType(), DiagnoseCountAttributedTypeInUnnamedAnon(), clang::Sema::FinalizeDeclaratorGroup(), Finish(), clang::Sema::getDestructorTypeForDecltype(), GetDiagnosticTypeSpecifierID(), GetFullTypeForDeclarator(), hasTypeSpecifier(), isMissingDeclaratorOk(), clang::Sema::ParsedFreeStandingDeclSpec(), clang::Sema::ParseTypedefDecl(), and RebuildDeclaratorInCurrentInstantiation().
|
inline |
Definition at line 566 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), clang::Sema::ActOnPseudoDestructorExpr(), clang::Sema::BuildMemInitializer(), clang::Sema::CheckConversionDeclarator(), clang::Sema::CheckDestructorDeclarator(), ConvertDeclSpecToType(), CreateNewFunctionDecl(), GetDeclSpecTypeForDeclarator(), clang::Sema::getDestructorTypeForDecltype(), GetFullTypeForDeclarator(), InventTemplateParameter(), and RebuildDeclaratorInCurrentInstantiation().
|
inline |
Definition at line 570 of file DeclSpec.h.
References isDeclRep(), and isTypeRep().
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 514 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), hasTypeSpecifier(), and SetTypeSpecWidth().
|
inline |
Definition at line 562 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 563 of file DeclSpec.h.
|
inline |
Definition at line 606 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFriendTypeDecl(), clang::Sema::BuildAnonymousStructOrUnion(), diagnoseRedundantReturnTypeQualifiers(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 655 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::DiagnoseFunctionSpecifiers(), and Finish().
|
inline |
Definition at line 604 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFriendTypeDecl(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckDestructorDeclarator(), ConvertDeclSpecToType(), diagnoseAndRemoveTypeQualifiers(), and diagnoseRedundantReturnTypeQualifiers().
|
inline |
Definition at line 891 of file DeclSpec.h.
|
inline |
Definition at line 877 of file DeclSpec.h.
|
inline |
Definition at line 579 of file DeclSpec.h.
References TST_auto, TST_auto_type, and TST_decltype_auto.
Referenced by clang::Sema::ActOnCXXNew(), clang::Sema::canDelayFunctionBody(), clang::Sema::FinalizeDeclaratorGroup(), and GetFullTypeForDeclarator().
|
inline |
Definition at line 843 of file DeclSpec.h.
References getConstexprSpecifier(), and clang::Unspecified.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnTypedefDeclarator(), clang::Sema::canDelayFunctionBody(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 657 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::CheckConversionDeclarator(), clang::Sema::DiagnoseFunctionSpecifiers(), Finish(), getParsedSpecifiers(), and setFunctionSpecExplicit().
| bool DeclSpec::hasTagDefinition | ( | ) | const |
Definition at line 433 of file DeclSpec.cpp.
References clang::cast(), and getRepAsDecl().
Referenced by GetFullTypeForDeclarator().
|
inline |
Return true if any type-specifier has been found.
Definition at line 697 of file DeclSpec.h.
References getTypeSpecComplex(), getTypeSpecSign(), getTypeSpecType(), getTypeSpecWidth(), TSC_unspecified, TST_unspecified, and clang::Unspecified.
Referenced by clang::Sema::CheckConversionDeclarator(), clang::Sema::CheckDestructorDeclarator(), ConvertDeclSpecToType(), getParsedSpecifiers(), and isOmittedBlockReturnType().
|
inline |
Definition at line 529 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
Definition at line 452 of file DeclSpec.h.
References TST_class, TST_enum, TST_interface, TST_struct, and TST_union.
Referenced by clang::Sema::FinalizeDeclaratorGroup(), Finish(), getRepAsDecl(), getTypeSpecTypeNameLoc(), isMissingDeclaratorOk(), SetTypeSpecType(), SetTypeSpecType(), and UpdateDeclRep().
|
inline |
isEmpty - Return true if this declaration specifier is completely empty: no tokens were parsed in the production of it.
Definition at line 710 of file DeclSpec.h.
References getParsedSpecifiers(), and PQ_None.
Referenced by SetFriendSpec().
|
inline |
Definition at line 489 of file DeclSpec.h.
Referenced by getFunctionStorageClass(), clang::Sema::ParsedFreeStandingDeclSpec(), and StorageClassSpecToVarDeclStorageClass().
|
inline |
Definition at line 827 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFriendTypeDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::CheckExplicitObjectMemberFunction(), CreateNewFunctionDecl(), Finish(), GetDeclSpecTypeForDeclarator(), GetFullTypeForDeclarator(), clang::Sema::HandleDeclarator(), clang::Sema::isDeclaratorFunctionLike(), clang::Declarator::isFirstDeclarationOfMember(), clang::Sema::ParsedFreeStandingDeclSpec(), and SetFriendSpec().
|
inline |
Definition at line 831 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFriendTypeDecl().
|
inline |
Definition at line 643 of file DeclSpec.h.
Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnTypedefDeclarator(), clang::Sema::ActOnVariableDeclarator(), CreateNewFunctionDecl(), clang::Sema::HandleField(), clang::Sema::HandleMSProperty(), and clang::Sema::ParsedFreeStandingDeclSpec().
| bool DeclSpec::isMissingDeclaratorOk | ( | ) |
Checks if this DeclSpec can stand alone, without a Declarator.
Only tag declspecs can stand alone.
Definition at line 1511 of file DeclSpec.cpp.
References getRepAsDecl(), getTypeSpecType(), isDeclRep(), and SCS_typedef.
Referenced by clang::Sema::ParsedFreeStandingDeclSpec().
|
inline |
Definition at line 835 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::SemaObjC::ActOnIvar(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::HandleField(), clang::Sema::HandleMSProperty(), clang::Sema::ParsedFreeStandingDeclSpec(), clang::Sema::ParseTypedefDecl(), and setModulePrivateSpec().
|
inline |
Definition at line 667 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::CheckMain(), and clang::Sema::DiagnoseFunctionSpecifiers().
|
inline |
Definition at line 620 of file DeclSpec.h.
References getOverflowBehaviorState(), and Unspecified.
Referenced by ConvertDeclSpecToType().
Definition at line 457 of file DeclSpec.h.
|
inline |
Definition at line 617 of file DeclSpec.h.
References getOverflowBehaviorState(), and Trap.
Referenced by HandleOverflowBehaviorAttr().
|
inline |
Definition at line 524 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 523 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 522 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteDeclSpec(), and ConvertDeclSpecToType().
|
inline |
Definition at line 526 of file DeclSpec.h.
References isTypeRep().
Referenced by getRepAsType(), getTypeSpecTypeNameLoc(), isTypeRep(), SetTypeSpecType(), SetTypeSpecType(), and UpdateTypeRep().
|
inline |
Definition at line 525 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), clang::Sema::FinalizeDeclaratorGroup(), GetDeclSpecTypeForDeclarator(), and clang::Parser::ParseTypeName().
|
inline |
Definition at line 527 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 528 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType().
|
inline |
Definition at line 654 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::CheckConstructorDeclarator(), clang::Sema::CheckExplicitObjectMemberFunction(), clang::Sema::DiagnoseFunctionSpecifiers(), and Finish().
|
inline |
Definition at line 614 of file DeclSpec.h.
References getOverflowBehaviorState(), and Wrap.
Referenced by ConvertDeclSpecToType(), and HandleOverflowBehaviorAttr().
| bool DeclSpec::SetBitIntType | ( | SourceLocation | KWLoc, |
| Expr * | BitWidth, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 957 of file DeclSpec.cpp.
References ExprRep, getSpecifierName(), TST_bitint, TST_error, and TST_unspecified.
| bool DeclSpec::SetConstexprSpec | ( | ConstexprSpecKind | ConstexprKind, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1137 of file DeclSpec.cpp.
References BadSpecifier(), getConstexprSpecifier(), and clang::Unspecified.
Referenced by addConstevalToLambdaDeclSpecifier(), and addConstexprToLambdaDeclSpecifier().
|
inline |
Definition at line 490 of file DeclSpec.h.
| bool DeclSpec::SetFriendSpec | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1112 of file DeclSpec.cpp.
References isEmpty(), and isFriendSpecified().
| bool DeclSpec::setFunctionSpecExplicit | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| ExplicitSpecifier | ExplicitSpec, | ||
| SourceLocation | CloseParenLoc ) |
Definition at line 1078 of file DeclSpec.cpp.
References clang::ExplicitSpecifier::getExpr(), and hasExplicitSpecifier().
| bool DeclSpec::setFunctionSpecForceInline | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1051 of file DeclSpec.cpp.
| bool DeclSpec::setFunctionSpecInline | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1037 of file DeclSpec.cpp.
| bool DeclSpec::setFunctionSpecNoreturn | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1097 of file DeclSpec.cpp.
| bool DeclSpec::setFunctionSpecVirtual | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1063 of file DeclSpec.cpp.
| bool DeclSpec::setModulePrivateSpec | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1125 of file DeclSpec.cpp.
References isModulePrivateSpecified().
|
inline |
Definition at line 896 of file DeclSpec.h.
| bool DeclSpec::SetOverflowBehavior | ( | OverflowBehaviorType::OverflowBehaviorKind | Kind, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 1018 of file DeclSpec.cpp.
References BadSpecifier(), getOverflowBehaviorState(), Trap, Unspecified, and Wrap.
| void DeclSpec::SetPackIndexingExpr | ( | SourceLocation | EllipsisLoc, |
| Expr * | Pack ) |
Definition at line 978 of file DeclSpec.cpp.
References TST_typename, and TST_typename_pack_indexing.
|
inline |
Definition at line 715 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFinishKNRParamDeclarations(), and clang::SemaObjC::actOnObjCTypeArgsOrProtocolQualifiers().
|
inline |
Definition at line 714 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFinishKNRParamDeclarations(), and clang::SemaObjC::actOnObjCTypeArgsOrProtocolQualifiers().
| bool DeclSpec::SetStorageClassSpec | ( | Sema & | S, |
| SCS | SC, | ||
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
These methods set the specified attribute of the DeclSpec and return false if there was no error.
If an error occurs (for example, if we tried to set "auto" on a spec with "extern" already set), they return true and set PrevSpec and DiagID such that Diag(Loc, DiagID) << PrevSpec; will yield a useful result.
TODO: use a more general approach that still allows these diagnostics to be ignored when desired.
Definition at line 631 of file DeclSpec.cpp.
References BadSpecifier(), clang::Sema::getLangOpts(), clang::LangOptions::getOpenCLCompatibleVersion(), clang::Sema::getOpenCLOptions(), getSpecifierName(), clang::OpenCLOptions::isAvailableOption(), isInvalid(), SCS_auto, SCS_extern, SCS_private_extern, SCS_register, SCS_static, SCS_typedef, SCS_unspecified, SetTypeSpecType(), TST_auto, and TST_unspecified.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), addStaticToLambdaDeclSpecifier(), and clang::Sema::BuildAnonymousStructOrUnion().
| bool DeclSpec::SetStorageClassSpecThread | ( | TSCS | TSC, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 693 of file DeclSpec.cpp.
References BadSpecifier(), and TSCS_unspecified.
| bool DeclSpec::SetTypeAltiVecBool | ( | bool | isAltiVecBool, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 932 of file DeclSpec.cpp.
References getSpecifierName(), TST_error, and TST_unspecified.
| bool DeclSpec::SetTypeAltiVecPixel | ( | bool | isAltiVecPixel, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 915 of file DeclSpec.cpp.
References getSpecifierName(), TST_error, and TST_unspecified.
| bool DeclSpec::SetTypeAltiVecVector | ( | bool | isAltiVecVector, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 883 of file DeclSpec.cpp.
References getSpecifierName(), TST_error, and TST_unspecified.
|
inline |
Definition at line 577 of file DeclSpec.h.
| bool DeclSpec::SetTypePipe | ( | bool | isPipe, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 898 of file DeclSpec.cpp.
References getSpecifierName(), clang::Pipe, TST_error, and TST_unspecified.
| bool DeclSpec::SetTypeQual | ( | TQ | T, |
| SourceLocation | Loc ) |
Definition at line 1003 of file DeclSpec.cpp.
References TQ_atomic, TQ_const, TQ_restrict, TQ_unaligned, TQ_unspecified, and TQ_volatile.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::DeclaratorChunk::getFunction(), getLambdaType(), and SetTypeQual().
| bool DeclSpec::SetTypeQual | ( | TQ | T, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const LangOptions & | Lang ) |
Definition at line 987 of file DeclSpec.cpp.
References BadSpecifier(), and SetTypeQual().
| bool DeclSpec::SetTypeSpecComplex | ( | TSC | C, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 724 of file DeclSpec.cpp.
References BadSpecifier(), clang::C, and TSC_unspecified.
| bool DeclSpec::SetTypeSpecError | ( | ) |
| bool DeclSpec::SetTypeSpecSat | ( | SourceLocation | Loc, |
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 870 of file DeclSpec.cpp.
| bool DeclSpec::SetTypeSpecSign | ( | TypeSpecifierSign | S, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID ) |
Definition at line 734 of file DeclSpec.cpp.
References BadSpecifier(), getTypeSpecSign(), and clang::Unspecified.
| bool DeclSpec::SetTypeSpecType | ( | TST | T, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 846 of file DeclSpec.cpp.
References getSpecifierName(), isDeclRep(), isTypeRep(), TST_bool, TST_error, and TST_unspecified.
Referenced by clang::Sema::ActOnCXXForRangeIdentifier(), clang::Sema::ActOnFinishKNRParamDeclarations(), clang::SemaObjC::actOnObjCTypeArgsOrProtocolQualifiers(), clang::Sema::ImplicitlyDefineFunction(), SetStorageClassSpec(), SetTypeSpecType(), SetTypeSpecType(), SetTypeSpecType(), and SetTypeSpecType().
| bool DeclSpec::SetTypeSpecType | ( | TST | T, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| Decl * | Rep, | ||
| bool | Owned, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 805 of file DeclSpec.cpp.
References SetTypeSpecType().
| bool DeclSpec::SetTypeSpecType | ( | TST | T, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| Expr * | Rep, | ||
| const PrintingPolicy & | policy ) |
Definition at line 783 of file DeclSpec.cpp.
References ExprRep, getSpecifierName(), TST_error, and TST_unspecified.
| bool DeclSpec::SetTypeSpecType | ( | TST | T, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| ParsedType | Rep, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 743 of file DeclSpec.cpp.
References SetTypeSpecType().
| bool DeclSpec::SetTypeSpecType | ( | TST | T, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| TemplateIdAnnotation * | Rep, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 837 of file DeclSpec.cpp.
References SetTypeSpecType(), TemplateIdRep, TST_auto, and TST_decltype_auto.
|
inline |
Definition at line 744 of file DeclSpec.h.
References clang::ActionResult< PtrTy, Compress >::get(), clang::ActionResult< PtrTy, Compress >::isInvalid(), SetTypeSpecError(), and SetTypeSpecType().
| bool DeclSpec::SetTypeSpecType | ( | TST | T, |
| SourceLocation | TagKwLoc, | ||
| SourceLocation | TagNameLoc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| Decl * | Rep, | ||
| bool | Owned, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 813 of file DeclSpec.cpp.
References DeclRep, getSpecifierName(), isDeclRep(), TST_error, and TST_unspecified.
| bool DeclSpec::SetTypeSpecType | ( | TST | T, |
| SourceLocation | TagKwLoc, | ||
| SourceLocation | TagNameLoc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| ParsedType | Rep, | ||
| const PrintingPolicy & | Policy ) |
Definition at line 751 of file DeclSpec.cpp.
References clang::cast(), clang::OpaquePtr< PtrTy >::get(), getSpecifierName(), isTypeRep(), clang::OpaquePtr< QualType >::make(), TST_error, TST_typename_pack_indexing, TST_unspecified, and TypeRep.
| bool DeclSpec::SetTypeSpecWidth | ( | TypeSpecifierWidth | W, |
| SourceLocation | Loc, | ||
| const char *& | PrevSpec, | ||
| unsigned & | DiagID, | ||
| const PrintingPolicy & | Policy ) |
These methods set the specified attribute of the DeclSpec, but return true and ignore the request if invalid (e.g.
"extern" then "auto" is specified).
Definition at line 707 of file DeclSpec.cpp.
References BadSpecifier(), getTypeSpecWidth(), clang::Long, clang::LongLong, and clang::Unspecified.
|
inline |
Definition at line 882 of file DeclSpec.h.
|
inline |
Definition at line 790 of file DeclSpec.h.
References DeclRep, and isDeclRep().
|
inline |
Definition at line 798 of file DeclSpec.h.
References ExprRep.
Referenced by RebuildDeclaratorInCurrentInstantiation().
|
inline |
Definition at line 794 of file DeclSpec.h.
References isTypeRep(), and TypeRep.
Referenced by RebuildDeclaratorInCurrentInstantiation().
| Decl* clang::DeclSpec::DeclRep |
Definition at line 394 of file DeclSpec.h.
Referenced by getRepAsDecl(), SetTypeSpecType(), and UpdateDeclRep().
| Expr* clang::DeclSpec::ExprRep |
Definition at line 395 of file DeclSpec.h.
Referenced by getRepAsExpr(), SetBitIntType(), SetTypeSpecType(), and UpdateExprRep().
| TemplateIdAnnotation* clang::DeclSpec::TemplateIdRep |
Definition at line 396 of file DeclSpec.h.
Referenced by getRepAsTemplateId(), and SetTypeSpecType().
|
static |
Definition at line 238 of file DeclSpec.h.
Referenced by getSpecifierName().
|
static |
Definition at line 240 of file DeclSpec.h.
Referenced by getSpecifierName().
|
static |
Definition at line 239 of file DeclSpec.h.
Referenced by clang::Sema::ActOnVariableDeclarator(), and getSpecifierName().
|
static |
Definition at line 237 of file DeclSpec.h.
Referenced by ClearStorageClassSpecs(), DeclSpec(), Finish(), getParsedSpecifiers(), getSpecifierName(), and SetStorageClassSpecThread().
|
static |
Definition at line 265 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 293 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), getSpecifierName(), and RebuildDeclaratorInCurrentInstantiation().
|
static |
Definition at line 290 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXForRangeIdentifier(), clang::Sema::ActOnDecompositionDeclarator(), ConvertDeclSpecToType(), Finish(), GetFullTypeForDeclarator(), getSpecifierName(), hasAutoTypeSpec(), SetStorageClassSpec(), and SetTypeSpecType().
|
static |
Definition at line 291 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), getSpecifierName(), and hasAutoTypeSpec().
|
static |
Definition at line 261 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and getSpecifierName().
|
static |
Definition at line 259 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), getSpecifierName(), and SetBitIntType().
|
static |
Definition at line 269 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), getSpecifierName(), and SetTypeSpecType().
|
static |
Definition at line 252 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 255 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 256 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 254 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 277 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteDeclSpec(), clang::SemaCodeCompletion::CodeCompleteTag(), ConvertDeclSpecToType(), GetDiagnosticTypeSpecifierID(), getSpecifierName(), isDeclRep(), clang::Sema::isTagName(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
static |
Definition at line 272 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and getSpecifierName().
|
static |
Definition at line 270 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and getSpecifierName().
|
static |
Definition at line 271 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and getSpecifierName().
|
static |
Definition at line 283 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), clang::Sema::ActOnPseudoDestructorExpr(), ConvertDeclSpecToType(), clang::Sema::getDestructorTypeForDecltype(), getSpecifierName(), and RebuildDeclaratorInCurrentInstantiation().
|
static |
Definition at line 284 of file DeclSpec.h.
Referenced by clang::Sema::ActOnPseudoDestructorExpr(), ConvertDeclSpecToType(), Finish(), clang::Sema::getDestructorTypeForDecltype(), getSpecifierName(), hasAutoTypeSpec(), and SetTypeSpecType().
|
static |
Definition at line 263 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 273 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteTag(), ConvertDeclSpecToType(), GetDiagnosticTypeSpecifierID(), getSpecifierName(), isDeclRep(), clang::Sema::isTagName(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
static |
Definition at line 300 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierDecltype(), clang::Sema::ActOnCXXNestedNameSpecifierIndexedPack(), clang::Sema::ActOnPseudoDestructorExpr(), ConvertDeclSpecToType(), Finish(), clang::Sema::getDestructorTypeForDecltype(), getSpecifierName(), clang::Declarator::isInvalidType(), clang::Sema::ParsedFreeStandingDeclSpec(), SetBitIntType(), SetTypeAltiVecBool(), SetTypeAltiVecPixel(), SetTypeAltiVecVector(), SetTypePipe(), SetTypeSpecError(), SetTypeSpecType(), SetTypeSpecType(), SetTypeSpecType(), and SetTypeSpecType().
|
static |
Definition at line 262 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 267 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 264 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 266 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 260 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and getSpecifierName().
|
static |
Definition at line 268 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 257 of file DeclSpec.h.
Referenced by clang::Sema::ActOnFinishKNRParamDeclarations(), ConvertDeclSpecToType(), Finish(), getSpecifierName(), and clang::Sema::ImplicitlyDefineFunction().
|
static |
Definition at line 258 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
|
static |
Definition at line 276 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteTag(), ConvertDeclSpecToType(), GetDiagnosticTypeSpecifierID(), getSpecifierName(), isDeclRep(), clang::Sema::isTagName(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
static |
Definition at line 275 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteDeclSpec(), clang::SemaCodeCompletion::CodeCompleteTag(), ConvertDeclSpecToType(), DiagnoseCountAttributedTypeInUnnamedAnon(), GetDiagnosticTypeSpecifierID(), getSpecifierName(), isDeclRep(), clang::Sema::isTagName(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
static |
Definition at line 278 of file DeclSpec.h.
Referenced by clang::SemaObjC::actOnObjCTypeArgsOrProtocolQualifiers(), clang::SemaCodeCompletion::CodeCompleteDeclSpec(), ConvertDeclSpecToType(), getSpecifierName(), clang::Sema::ParsedFreeStandingDeclSpec(), RebuildDeclaratorInCurrentInstantiation(), and SetPackIndexingExpr().
|
static |
Definition at line 285 of file DeclSpec.h.
Referenced by clang::Sema::ActOnCXXNestedNameSpecifierIndexedPack(), clang::Sema::ActOnPseudoDestructorExpr(), ConvertDeclSpecToType(), getPackIndexingExpr(), getSpecifierName(), SetPackIndexingExpr(), and SetTypeSpecType().
|
static |
Definition at line 282 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), getSpecifierName(), and RebuildDeclaratorInCurrentInstantiation().
|
static |
Definition at line 281 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), getSpecifierName(), and RebuildDeclaratorInCurrentInstantiation().
|
static |
Definition at line 280 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), getSpecifierName(), and RebuildDeclaratorInCurrentInstantiation().
|
static |
Definition at line 279 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), getSpecifierName(), and RebuildDeclaratorInCurrentInstantiation().
|
static |
Definition at line 274 of file DeclSpec.h.
Referenced by clang::SemaCodeCompletion::CodeCompleteTag(), ConvertDeclSpecToType(), GetDiagnosticTypeSpecifierID(), getSpecifierName(), isDeclRep(), clang::Sema::isTagName(), and clang::Sema::ParsedFreeStandingDeclSpec().
|
static |
Definition at line 292 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), and getSpecifierName().
|
static |
Definition at line 250 of file DeclSpec.h.
Referenced by ClearTypeSpecType(), ConvertDeclSpecToType(), DeclSpec(), Finish(), getSpecifierName(), hasTypeSpecifier(), clang::Sema::isTagName(), SetBitIntType(), SetStorageClassSpec(), SetTypeAltiVecBool(), SetTypeAltiVecPixel(), SetTypeAltiVecVector(), SetTypePipe(), SetTypeSpecType(), SetTypeSpecType(), SetTypeSpecType(), and SetTypeSpecType().
|
static |
Definition at line 251 of file DeclSpec.h.
Referenced by clang::Sema::ActOnParamDeclarator(), ConvertDeclSpecToType(), and getSpecifierName().
|
static |
Definition at line 253 of file DeclSpec.h.
Referenced by ConvertDeclSpecToType(), Finish(), and getSpecifierName().
| UnionParsedType clang::DeclSpec::TypeRep |
Definition at line 393 of file DeclSpec.h.
Referenced by getRepAsType(), SetTypeSpecType(), and UpdateTypeRep().