| 
| 
void  | ResolveSpecificsInGeneric (Symbol &, bool isEndOfSpecificationPart) | 
| 
void  | DeclaredPossibleSpecificProc (Symbol &) | 
| Protected Member Functions inherited from Fortran::semantics::ScopeHandler | 
| 
FuncResultStack &  | funcResultStack () | 
| 
void  | ApplyImplicitRules (Symbol &, bool allowForwardReference=false) | 
| 
bool  | ImplicitlyTypeForwardRef (Symbol &) | 
| 
void  | AcquireIntrinsicProcedureFlags (Symbol &) | 
| 
const DeclTypeSpec *  | GetImplicitType (Symbol &, bool respectImplicitNoneType=true) | 
| 
void  | CheckEntryDummyUse (SourceName, Symbol *) | 
| 
bool  | ConvertToObjectEntity (Symbol &) | 
| 
bool  | ConvertToProcEntity (Symbol &, std::optional< SourceName >=std::nullopt) | 
| 
const DeclTypeSpec &  | MakeNumericType (TypeCategory, const std::optional< parser::KindSelector > &) | 
| 
const DeclTypeSpec &  | MakeNumericType (TypeCategory, int) | 
| 
const DeclTypeSpec &  | MakeLogicalType (const std::optional< parser::KindSelector > &) | 
| 
const DeclTypeSpec &  | MakeLogicalType (int) | 
| 
void  | NotePossibleBadForwardRef (const parser::Name &) | 
| 
std::optional< SourceName >  | HadForwardRef (const Symbol &) const | 
| 
bool  | CheckPossibleBadForwardRef (const Symbol &) | 
| 
bool  | ConvertToUseError (Symbol &, const SourceName &, const Symbol &used) | 
| 
DeferredDeclarationState *  | GetDeferredDeclarationState (bool add=false) | 
| 
void  | SkipImplicitTyping (bool skip) | 
| 
void  | NoteEarlyDeclaredDummyArgument (Symbol &symbol) | 
| 
bool  | IsEarlyDeclaredDummyArgument (Symbol &symbol) | 
| 
void  | ForgetEarlyDeclaredDummyArgument (Symbol &symbol) | 
| 
void  | BeginScope (const Scope &) | 
| 
void  | SetScope (const Scope &) | 
| 
bool  | allowForwardReferenceToDerivedType () const | 
| 
void  | set_allowForwardReferenceToDerivedType (bool yes) | 
| 
void  | set_inPDTDefinition (bool yes) | 
| 
const DeclTypeSpec *  | GetDeclTypeSpec () const | 
| 
const parser::Expr *  | GetOriginalKindParameter () const | 
| 
void  | BeginDeclTypeSpec () | 
| 
void  | EndDeclTypeSpec () | 
| 
void  | SetDeclTypeSpec (const DeclTypeSpec &) | 
| 
void  | SetDeclTypeSpecCategory (DeclTypeSpec::Category) | 
| 
DeclTypeSpec::Category  | GetDeclTypeSpecCategory () const | 
| 
KindExpr  | GetKindParamExpr (TypeCategory, const std::optional< parser::KindSelector > &) | 
| 
void  | CheckForAbstractType (const Symbol &typeSymbol) | 
| 
Attr  | AccessSpecToAttr (const parser::AccessSpec &x) | 
| 
Attr  | IntentSpecToAttr (const parser::IntentSpec &x) | 
 | 
| 
using  | ImplicitNoneNameSpec = parser::ImplicitStmt::ImplicitNoneNameSpec | 
| Public Member Functions inherited from Fortran::semantics::ScopeHandler | 
| 
Scope &  | currScope () | 
| 
Scope *  | GetHostProcedure () | 
| 
Scope &  | InclusiveScope () | 
| 
Scope &  | NonDerivedTypeScope () | 
| 
void  | PushScope (Scope::Kind kind, Symbol *symbol) | 
| 
void  | PushScope (Scope &scope) | 
| 
void  | PopScope () | 
| 
void  | SetScope (Scope &) | 
| 
template<typename T>  | 
| bool  | Pre (const parser::Statement< T > &x) | 
| 
template<typename T>  | 
| void  | Post (const parser::Statement< T > &) | 
| 
void  | SayAlreadyDeclared (const parser::Name &, Symbol &) | 
| 
void  | SayAlreadyDeclared (const SourceName &, Symbol &) | 
| 
void  | SayAlreadyDeclared (const SourceName &, const SourceName &) | 
| 
void  | SayWithReason (const parser::Name &, Symbol &, MessageFixedText &&, Message &&) | 
| 
template<typename... A>  | 
| Message &  | SayWithDecl (const parser::Name &, Symbol &, MessageFixedText &&, A &&...args) | 
| 
void  | SayLocalMustBeVariable (const parser::Name &, Symbol &) | 
| 
Message &  | SayDerivedType (const SourceName &, MessageFixedText &&, const Scope &) | 
| 
Message &  | Say2 (const SourceName &, MessageFixedText &&, const SourceName &, MessageFixedText &&) | 
| 
Message &  | Say2 (const SourceName &, MessageFixedText &&, Symbol &, MessageFixedText &&) | 
| 
Message &  | Say2 (const parser::Name &, MessageFixedText &&, Symbol &, MessageFixedText &&) | 
| 
Symbol *  | FindSymbol (const parser::Name &) | 
| 
Symbol *  | FindSymbol (const Scope &, const parser::Name &) | 
| 
Symbol *  | FindInScope (const Scope &, const parser::Name &) | 
| 
Symbol *  | FindInScope (const Scope &, const SourceName &) | 
| 
template<typename T>  | 
| Symbol *  | FindInScope (const T &name) | 
| 
Symbol *  | FindInTypeOrParents (const Scope &, const parser::Name &) | 
| 
Symbol *  | FindInTypeOrParents (const parser::Name &) | 
| 
Symbol *  | FindInScopeOrBlockConstructs (const Scope &, SourceName) | 
| 
Symbol *  | FindSeparateModuleProcedureInterface (const parser::Name &) | 
| 
void  | EraseSymbol (const parser::Name &) | 
| 
void  | EraseSymbol (const Symbol &symbol) | 
| 
Symbol &  | CopySymbol (const SourceName &, const Symbol &) | 
| 
Symbol &  | MakeSymbol (Scope &, const SourceName &, Attrs) | 
| 
Symbol &  | MakeSymbol (const SourceName &, Attrs=Attrs{}) | 
| 
Symbol &  | MakeSymbol (const parser::Name &, Attrs=Attrs{}) | 
| 
Symbol &  | MakeHostAssocSymbol (const parser::Name &, const Symbol &) | 
| 
template<typename D>  | 
| common::IfNoLvalue< Symbol &, D >  | MakeSymbol (const parser::Name &name, D &&details) | 
| 
template<typename D>  | 
| common::IfNoLvalue< Symbol &, D >  | MakeSymbol (const parser::Name &name, const Attrs &attrs, D &&details) | 
| 
template<typename D>  | 
| common::IfNoLvalue< Symbol &, D >  | MakeSymbol (const SourceName &name, const Attrs &attrs, D &&details) | 
| 
void  | MakeExternal (Symbol &) | 
| 
bool  | CheckDuplicatedAttr (SourceName, Symbol &, Attr) | 
| 
bool  | CheckDuplicatedAttrs (SourceName, Symbol &, Attrs) | 
| 
void  | SetExplicitAttr (Symbol &symbol, Attr attr) const | 
| 
void  | SetExplicitAttrs (Symbol &symbol, Attrs attrs) const | 
| 
void  | SetImplicitAttr (Symbol &symbol, Attr attr) const | 
| 
void  | SetCUDADataAttr (SourceName, Symbol &, std::optional< common::CUDADataAttr >) | 
| 
void  | Post (const parser::ParameterStmt &) | 
| 
void  | Post (const parser::ImplicitSpec &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::DoublePrecision &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::DoubleComplex &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::ClassStar &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::TypeStar &) | 
| 
void  | Post (const parser::TypeGuardStmt &) | 
| 
void  | Post (const parser::TypeSpec &) | 
| 
void  | Post (const parser::LanguageBindingSpec &) | 
| 
bool  | Pre (const parser::ImplicitStmt &) | 
| 
bool  | Pre (const parser::LetterSpec &) | 
| 
bool  | Pre (const parser::ImplicitSpec &) | 
| 
bool  | Pre (const parser::TypeGuardStmt &) | 
| 
bool  | Pre (const parser::IntentSpec &) | 
| 
bool  | Pre (const parser::Pass &) | 
| 
bool  | Pre (const common::CUDADataAttr) | 
| 
void  | Post (const parser::ParameterStmt &) | 
| 
bool  | Pre (const parser::ImplicitStmt &) | 
| 
bool  | Pre (const parser::LetterSpec &) | 
| 
bool  | Pre (const parser::ImplicitSpec &) | 
| 
void  | Post (const parser::ImplicitSpec &) | 
| 
const DeclTypeSpec *  | GetType (SourceName name, bool respectImplicitNoneType=true) | 
| 
bool  | isImplicitNoneType () const | 
| 
bool  | isImplicitNoneType (const Scope &scope) const | 
| 
bool  | isImplicitNoneExternal () const | 
| 
void  | set_inheritFromParent (bool x) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::DoublePrecision &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::DoubleComplex &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::ClassStar &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::TypeStar &) | 
| 
void  | Post (const parser::TypeGuardStmt &) | 
| 
void  | Post (const parser::TypeSpec &) | 
| 
void  | Post (const parser::LanguageBindingSpec &) | 
| 
bool  | Pre (const parser::TypeGuardStmt &) | 
| 
bool  | Pre (const parser::IntentSpec &) | 
| 
bool  | Pre (const parser::Pass &) | 
| 
bool  | Pre (const common::CUDADataAttr) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::DoublePrecision &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::DoubleComplex &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::ClassStar &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::TypeStar &) | 
| 
bool  | Pre (const parser::TypeGuardStmt &) | 
| 
void  | Post (const parser::TypeGuardStmt &) | 
| 
void  | Post (const parser::TypeSpec &) | 
| 
template<typename T>  | 
| const DeclTypeSpec *  | ProcessTypeSpec (const T &x, bool allowForward=false) | 
| 
void  | Post (const parser::LanguageBindingSpec &) | 
| 
bool  | Pre (const parser::IntentSpec &) | 
| 
bool  | Pre (const parser::Pass &) | 
| 
bool  | Pre (const common::CUDADataAttr) | 
| 
bool  | BeginAttrs () | 
| 
Attrs  | GetAttrs () | 
| 
std::optional< common::CUDADataAttr >  | cudaDataAttr () | 
| 
Attrs  | EndAttrs () | 
| 
bool  | SetPassNameOn (Symbol &) | 
| 
void  | SetBindNameOn (Symbol &) | 
| 
void  | Post (const parser::LanguageBindingSpec &) | 
| 
bool  | Pre (const parser::IntentSpec &) | 
| 
bool  | Pre (const parser::Pass &) | 
| 
bool  | CheckAndSet (Attr) | 
| 
bool  | Pre (const common::CUDADataAttr) | 
| 
  | BaseVisitor (SemanticsContext &c, ResolveNamesVisitor &v, ImplicitRulesMap &rules) | 
| 
template<typename T>  | 
| void  | Walk (const T &) | 
| 
MessageHandler &  | messageHandler () | 
| 
const std::optional< SourceName > &  | currStmtSource () | 
| 
SemanticsContext &  | context () const | 
| 
evaluate::FoldingContext &  | GetFoldingContext () const | 
| 
bool  | IsIntrinsic (const SourceName &name, std::optional< Symbol::Flag > flag) const | 
| 
bool  | InModuleFile () const | 
| 
void  | MakePlaceholder (const parser::Name &, MiscDetails::Kind) | 
| 
template<typename T>  | 
| common::IfNoLvalue< T, T >  | FoldExpr (T &&expr) | 
| 
template<typename T>  | 
| MaybeExpr  | EvaluateExpr (const T &expr) | 
| 
template<typename T>  | 
| MaybeExpr  | EvaluateNonPointerInitializer (const Symbol &symbol, const T &expr, parser::CharBlock source) | 
| 
template<typename T>  | 
| MaybeIntExpr  | EvaluateIntExpr (const T &expr) | 
| 
template<typename T>  | 
| MaybeSubscriptIntExpr  | EvaluateSubscriptIntExpr (const T &expr) | 
| 
template<typename... A>  | 
| Message &  | Say (A &&...args) | 
| 
template<typename... A>  | 
| Message &  | Say (const parser::Name &name, MessageFixedText &&text, const A &...args) |