| 
| 
  | ResolveNamesVisitor (SemanticsContext &context, ImplicitRulesMap &rules, Scope &top) | 
| 
Scope &  | topScope () const | 
| 
template<typename T>  | 
| bool  | Pre (const T &) | 
| 
template<typename T>  | 
| void  | Post (const T &) | 
| 
bool  | Pre (const parser::SpecificationPart &) | 
| 
bool  | Pre (const parser::Program &) | 
| 
void  | Post (const parser::Program &) | 
| 
bool  | Pre (const parser::ImplicitStmt &) | 
| 
void  | Post (const parser::PointerObject &) | 
| 
void  | Post (const parser::AllocateObject &) | 
| 
bool  | Pre (const parser::PointerAssignmentStmt &) | 
| 
void  | Post (const parser::Designator &) | 
| 
void  | Post (const parser::SubstringInquiry &) | 
| 
template<typename A, typename B>  | 
| void  | Post (const parser::LoopBounds< A, B > &x) | 
| 
void  | Post (const parser::ProcComponentRef &) | 
| 
bool  | Pre (const parser::FunctionReference &) | 
| 
bool  | Pre (const parser::CallStmt &) | 
| 
bool  | Pre (const parser::ImportStmt &) | 
| 
void  | Post (const parser::TypeGuardStmt &) | 
| 
bool  | Pre (const parser::StmtFunctionStmt &) | 
| 
bool  | Pre (const parser::DefinedOpName &) | 
| 
bool  | Pre (const parser::ProgramUnit &) | 
| 
void  | Post (const parser::AssignStmt &) | 
| 
void  | Post (const parser::AssignedGotoStmt &) | 
| 
void  | Post (const parser::CompilerDirective &) | 
| 
bool  | Pre (const parser::MainProgram &) | 
| 
bool  | Pre (const parser::FunctionSubprogram &) | 
| 
bool  | Pre (const parser::SubroutineSubprogram &) | 
| 
bool  | Pre (const parser::SeparateModuleSubprogram &) | 
| 
bool  | Pre (const parser::Module &) | 
| 
bool  | Pre (const parser::Submodule &) | 
| 
bool  | Pre (const parser::BlockData &) | 
| 
void  | NoteExecutablePartCall (Symbol::Flag, SourceName, bool hasCUDAChevrons) | 
| 
void  | Post (const parser::OpenACCBlockConstruct &) | 
| 
void  | Post (const parser::OpenACCCombinedConstruct &) | 
| 
void  | Post (const parser::AccBeginBlockDirective &) | 
| 
void  | Post (const parser::AccEndBlockDirective &) | 
| 
void  | Post (const parser::AccBeginCombinedDirective &) | 
| 
void  | Post (const parser::AccEndCombinedDirective &) | 
| 
void  | Post (const parser::AccBeginLoopDirective &x) | 
| 
bool  | Pre (const parser::OpenACCBlockConstruct &) | 
| 
bool  | Pre (const parser::OpenACCCombinedConstruct &) | 
| 
bool  | Pre (const parser::AccClause::UseDevice &x) | 
| 
bool  | Pre (const parser::AccBeginBlockDirective &x) | 
| 
bool  | Pre (const parser::AccEndBlockDirective &x) | 
| 
bool  | Pre (const parser::AccBeginCombinedDirective &x) | 
| 
bool  | Pre (const parser::AccEndCombinedDirective &x) | 
| 
bool  | Pre (const parser::AccBeginLoopDirective &x) | 
| 
bool  | Pre (const parser::OpenACCStandaloneConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCCacheConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCWaitConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCAtomicConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCEndConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCDeclarativeConstruct &x) | 
| 
void  | Post (const parser::ArraySpec &) | 
| 
void  | Post (const parser::ComponentArraySpec &) | 
| 
void  | Post (const parser::CoarraySpec &) | 
| 
void  | Post (const parser::AttrSpec &) | 
| 
void  | Post (const parser::ComponentAttrSpec &) | 
| 
void  | Post (const parser::DoConstruct &) | 
| 
void  | Post (const parser::ForallConstruct &) | 
| 
void  | Post (const parser::ForallStmt &) | 
| 
void  | Post (const parser::Selector &) | 
| 
void  | Post (const parser::AssociateStmt &) | 
| 
void  | Post (const parser::EndAssociateStmt &) | 
| 
void  | Post (const parser::SelectTypeStmt &) | 
| 
void  | Post (const parser::SelectRankStmt &) | 
| 
void  | Post (const parser::SelectTypeConstruct &) | 
| 
void  | Post (const parser::SelectTypeConstruct::TypeCase &) | 
| 
void  | Post (const parser::SelectRankConstruct::RankCase &) | 
| 
void  | Post (const parser::TypeGuardStmt::Guard &) | 
| 
void  | Post (const parser::SelectRankCaseStmt::Rank &) | 
| 
void  | Post (const parser::EndChangeTeamStmt &) | 
| 
void  | Post (const parser::CoarrayAssociation &) | 
| 
void  | Post (const parser::SelectRankConstruct &) | 
| 
void  | Post (const parser::MaskedElsewhereStmt &x) | 
| 
void  | Post (const parser::ElsewhereStmt &x) | 
| 
void  | Post (const parser::EndWhereStmt &x) | 
| 
void  | Post (const parser::EndForallStmt &x) | 
| 
void  | Post (const parser::EndCriticalStmt &x) | 
| 
void  | Post (const parser::EndDoStmt &x) | 
| 
void  | Post (const parser::ElseIfStmt &x) | 
| 
void  | Post (const parser::ElseStmt &x) | 
| 
void  | Post (const parser::EndIfStmt &x) | 
| 
void  | Post (const parser::CaseStmt &x) | 
| 
void  | Post (const parser::EndSelectStmt &x) | 
| 
void  | Post (const parser::SelectRankCaseStmt &x) | 
| 
void  | Post (const parser::CycleStmt &x) | 
| 
void  | Post (const parser::ExitStmt &x) | 
| 
bool  | Pre (const parser::ConcurrentHeader &) | 
| 
bool  | Pre (const parser::LocalitySpec::Local &) | 
| 
bool  | Pre (const parser::LocalitySpec::LocalInit &) | 
| 
bool  | Pre (const parser::LocalitySpec::Reduce &) | 
| 
bool  | Pre (const parser::LocalitySpec::Shared &) | 
| 
bool  | Pre (const parser::AcSpec &) | 
| 
bool  | Pre (const parser::AcImpliedDo &) | 
| 
bool  | Pre (const parser::DataImpliedDo &) | 
| 
bool  | Pre (const parser::DataIDoObject &) | 
| 
bool  | Pre (const parser::DataStmtObject &) | 
| 
bool  | Pre (const parser::DataStmtValue &) | 
| 
bool  | Pre (const parser::DoConstruct &) | 
| 
bool  | Pre (const parser::ForallConstruct &) | 
| 
bool  | Pre (const parser::ForallStmt &) | 
| 
bool  | Pre (const parser::BlockConstruct &) | 
| 
bool  | Pre (const parser::Association &) | 
| 
bool  | Pre (const parser::SelectTypeConstruct &) | 
| 
bool  | Pre (const parser::SelectTypeConstruct::TypeCase &) | 
| 
bool  | Pre (const parser::SelectRankConstruct::RankCase &) | 
| 
bool  | Pre (const parser::TypeGuardStmt::Guard &) | 
| 
bool  | Pre (const parser::ChangeTeamStmt &) | 
| 
bool  | Pre (const parser::WhereConstructStmt &x) | 
| 
bool  | Pre (const parser::ForallConstructStmt &x) | 
| 
bool  | Pre (const parser::CriticalStmt &x) | 
| 
bool  | Pre (const parser::LabelDoStmt &) | 
| 
bool  | Pre (const parser::NonLabelDoStmt &x) | 
| 
bool  | Pre (const parser::IfThenStmt &x) | 
| 
bool  | Pre (const parser::SelectCaseStmt &x) | 
| 
bool  | Pre (const parser::SelectRankConstruct &) | 
| 
bool  | Pre (const parser::SelectRankStmt &x) | 
| 
bool  | Pre (const parser::SelectTypeStmt &x) | 
| 
void  | Post (const parser::EntityDecl &) | 
| 
void  | Post (const parser::ObjectDecl &) | 
| 
void  | Post (const parser::PointerDecl &) | 
| 
void  | Post (const parser::BindStmt &) | 
| 
void  | Post (const parser::EnumDef &) | 
| 
void  | Post (const parser::AllocatableStmt &) | 
| 
void  | Post (const parser::TargetStmt &) | 
| 
void  | Post (const parser::DimensionStmt::Declaration &) | 
| 
void  | Post (const parser::CodimensionDecl &) | 
| 
void  | Post (const parser::TypeDeclarationStmt &) | 
| 
void  | Post (const parser::IntegerTypeSpec &) | 
| 
void  | Post (const parser::UnsignedTypeSpec &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Real &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Complex &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Logical &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Character &) | 
| 
void  | Post (const parser::CharSelector::LengthAndKind &) | 
| 
void  | Post (const parser::CharLength &) | 
| 
void  | Post (const parser::LengthSelector &) | 
| 
void  | Post (const parser::VectorTypeSpec &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::Type &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::Class &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::Record &) | 
| 
void  | Post (const parser::DerivedTypeSpec &) | 
| 
void  | Post (const parser::DerivedTypeStmt &) | 
| 
void  | Post (const parser::TypeParamDefStmt &) | 
| 
void  | Post (const parser::ComponentDefStmt &) | 
| 
void  | Post (const parser::ComponentDecl &) | 
| 
void  | Post (const parser::FillDecl &) | 
| 
void  | Post (const parser::ProcedureDeclarationStmt &) | 
| 
void  | Post (const parser::ProcComponentDefStmt &) | 
| 
void  | Post (const parser::ProcInterface &) | 
| 
void  | Post (const parser::ProcDecl &) | 
| 
void  | Post (const parser::TypeBoundProcedurePart &) | 
| 
void  | Post (const parser::ContainsStmt &) | 
| 
void  | Post (const parser::TypeBoundProcBinding &) | 
| 
void  | Post (const parser::TypeBoundProcedureStmt::WithoutInterface &) | 
| 
void  | Post (const parser::TypeBoundProcedureStmt::WithInterface &) | 
| 
void  | Post (const parser::StructureField &) | 
| 
void  | Post (const parser::AllocateStmt &) | 
| 
void  | Post (const parser::CommonBlockObject &) | 
| 
void  | Post (const parser::BasedPointer &) | 
| 
template<typename T>  | 
| void  | Post (const parser::Statement< T > &) | 
| 
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::TypeSpec &) | 
| 
void  | Post (const parser::LanguageBindingSpec &) | 
| 
bool  | Pre (const parser::Initialization &) | 
| 
bool  | Pre (const parser::BindStmt &) | 
| 
bool  | Pre (const parser::BindEntity &) | 
| 
bool  | Pre (const parser::OldParameterStmt &) | 
| 
bool  | Pre (const parser::NamedConstantDef &) | 
| 
bool  | Pre (const parser::NamedConstant &) | 
| 
bool  | Pre (const parser::Enumerator &) | 
| 
bool  | Pre (const parser::AccessSpec &) | 
| 
bool  | Pre (const parser::AsynchronousStmt &) | 
| 
bool  | Pre (const parser::ContiguousStmt &) | 
| 
bool  | Pre (const parser::ExternalStmt &) | 
| 
bool  | Pre (const parser::IntentStmt &) | 
| 
bool  | Pre (const parser::IntrinsicStmt &) | 
| 
bool  | Pre (const parser::OptionalStmt &) | 
| 
bool  | Pre (const parser::ProtectedStmt &) | 
| 
bool  | Pre (const parser::ValueStmt &) | 
| 
bool  | Pre (const parser::VolatileStmt &) | 
| 
bool  | Pre (const parser::AllocatableStmt &) | 
| 
bool  | Pre (const parser::TargetStmt &) | 
| 
bool  | Pre (const parser::CUDAAttributesStmt &) | 
| 
bool  | Pre (const parser::TypeDeclarationStmt &) | 
| 
bool  | Pre (const parser::KindParam &) | 
| 
bool  | Pre (const parser::VectorTypeSpec &) | 
| 
bool  | Pre (const parser::DeclarationTypeSpec::Type &) | 
| 
bool  | Pre (const parser::DeclarationTypeSpec::Class &) | 
| 
bool  | Pre (const parser::DerivedTypeDef &) | 
| 
bool  | Pre (const parser::DerivedTypeStmt &) | 
| 
bool  | Pre (const parser::TypeParamDefStmt &) | 
| 
bool  | Pre (const parser::TypeAttrSpec::Extends &) | 
| 
bool  | Pre (const parser::PrivateStmt &) | 
| 
bool  | Pre (const parser::SequenceStmt &) | 
| 
bool  | Pre (const parser::ComponentDefStmt &) | 
| 
bool  | Pre (const parser::ProcedureDeclarationStmt &) | 
| 
bool  | Pre (const parser::DataComponentDefStmt &) | 
| 
bool  | Pre (const parser::ProcComponentDefStmt &) | 
| 
bool  | Pre (const parser::ProcPointerInit &) | 
| 
bool  | Pre (const parser::TypeBoundProcedurePart &) | 
| 
bool  | Pre (const parser::TypeBoundProcBinding &) | 
| 
bool  | Pre (const parser::FinalProcedureStmt &) | 
| 
bool  | Pre (const parser::TypeBoundGenericStmt &) | 
| 
bool  | Pre (const parser::StructureDef &) | 
| 
bool  | Pre (const parser::Union::UnionStmt &) | 
| 
bool  | Pre (const parser::StructureField &) | 
| 
bool  | Pre (const parser::AllocateStmt &) | 
| 
bool  | Pre (const parser::StructureConstructor &) | 
| 
bool  | Pre (const parser::NamelistStmt::Group &) | 
| 
bool  | Pre (const parser::IoControlSpec &) | 
| 
bool  | Pre (const parser::CommonStmt::Block &) | 
| 
bool  | Pre (const parser::CommonBlockObject &) | 
| 
bool  | Pre (const parser::EquivalenceStmt &) | 
| 
bool  | Pre (const parser::SaveStmt &) | 
| 
bool  | Pre (const parser::BasedPointer &) | 
| 
template<typename T>  | 
| bool  | Pre (const parser::Statement< T > &x) | 
| 
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::InterfaceStmt &) | 
| 
void  | Post (const parser::EndInterfaceStmt &) | 
| 
void  | Post (const parser::GenericStmt &) | 
| 
bool  | Pre (const parser::InterfaceStmt &) | 
| 
bool  | Pre (const parser::GenericSpec &) | 
| 
bool  | Pre (const parser::ProcedureStmt &) | 
| 
bool  | Pre (const parser::GenericStmt &) | 
| 
void  | Post (const parser::UseStmt &) | 
| 
bool  | Pre (const parser::AccessStmt &) | 
| 
bool  | Pre (const parser::Only &) | 
| 
bool  | Pre (const parser::Rename::Names &) | 
| 
bool  | Pre (const parser::Rename::Operators &) | 
| 
bool  | Pre (const parser::UseStmt &) | 
| 
void  | Post (const parser::OmpBlockConstruct &) | 
| 
void  | Post (const parser::OmpBeginDirective &x) | 
| 
void  | Post (const parser::OmpEndDirective &x) | 
| 
void  | Post (const parser::OpenMPLoopConstruct &) | 
| 
void  | Post (const parser::OmpBeginLoopDirective &x) | 
| 
void  | Post (const parser::OmpEndLoopDirective &x) | 
| 
void  | Post (const parser::OmpTypeName &) | 
| 
void  | Post (const parser::OmpStylizedDeclaration &) | 
| 
void  | Post (const parser::OmpStylizedInstance &) | 
| 
void  | Post (const parser::OpenMPSectionsConstruct &) | 
| 
void  | Post (const parser::OmpBeginSectionsDirective &x) | 
| 
void  | Post (const parser::OmpEndSectionsDirective &x) | 
| 
void  | Post (const parser::OpenMPThreadprivate &) | 
| 
void  | Post (const parser::OpenMPDeclareTargetConstruct &) | 
| 
void  | Post (const parser::OmpAllocateDirective &) | 
| 
void  | Post (const parser::OpenMPDeclarativeConstruct &) | 
| 
void  | Post (const parser::OpenMPDepobjConstruct &x) | 
| 
void  | Post (const parser::OpenMPAtomicConstruct &) | 
| 
void  | Post (const parser::OmpClause &x) | 
| 
void  | Post (const parser::OmpDirectiveSpecification &) | 
| 
void  | Post (const parser::OpenMPConstruct &) | 
| 
bool  | Pre (const parser::OpenMPRequiresConstruct &x) | 
| 
bool  | Pre (const parser::OmpBlockConstruct &) | 
| 
bool  | Pre (const parser::OmpBeginDirective &x) | 
| 
bool  | Pre (const parser::OmpEndDirective &x) | 
| 
bool  | Pre (const parser::OpenMPLoopConstruct &) | 
| 
bool  | Pre (const parser::OmpBeginLoopDirective &x) | 
| 
bool  | Pre (const parser::OmpEndLoopDirective &x) | 
| 
bool  | Pre (const parser::OmpStylizedDeclaration &) | 
| 
bool  | Pre (const parser::OmpStylizedInstance &) | 
| 
bool  | Pre (const parser::OpenMPDeclareMapperConstruct &x) | 
| 
bool  | Pre (const parser::OpenMPDeclareSimdConstruct &x) | 
| 
bool  | Pre (const parser::OmpDeclareVariantDirective &x) | 
| 
bool  | Pre (const parser::OpenMPDeclareReductionConstruct &x) | 
| 
bool  | Pre (const parser::OmpMapClause &) | 
| 
bool  | Pre (const parser::OpenMPSectionsConstruct &) | 
| 
bool  | Pre (const parser::OmpBeginSectionsDirective &x) | 
| 
bool  | Pre (const parser::OmpEndSectionsDirective &x) | 
| 
bool  | Pre (const parser::OpenMPThreadprivate &) | 
| 
bool  | Pre (const parser::OpenMPDeclareTargetConstruct &x) | 
| 
bool  | Pre (const parser::OmpAllocateDirective &x) | 
| 
bool  | Pre (const parser::OpenMPDeclarativeConstruct &x) | 
| 
bool  | Pre (const parser::OpenMPDepobjConstruct &x) | 
| 
bool  | Pre (const parser::OpenMPAtomicConstruct &x) | 
| 
bool  | Pre (const parser::OmpClause &x) | 
| 
bool  | Pre (const parser::OmpMapperSpecifier &x) | 
| 
bool  | Pre (const parser::OmpReductionSpecifier &x) | 
| 
bool  | Pre (const parser::OmpBaseVariantNames &x) | 
| 
bool  | Pre (const parser::OmpDirectiveSpecification &x) | 
| 
bool  | Pre (const parser::OpenMPConstruct &x) | 
| 
void  | Post (const parser::FunctionStmt &) | 
| 
void  | Post (const parser::EntryStmt &) | 
| 
void  | Post (const parser::InterfaceBody::Subroutine &) | 
| 
void  | Post (const parser::InterfaceBody::Function &) | 
| 
void  | Post (const parser::PrefixSpec::Launch_Bounds &) | 
| 
void  | Post (const parser::PrefixSpec::Cluster_Dims &) | 
| 
bool  | Pre (const parser::SubroutineStmt &) | 
| 
bool  | Pre (const parser::FunctionStmt &) | 
| 
bool  | Pre (const parser::EntryStmt &) | 
| 
bool  | Pre (const parser::InterfaceBody::Subroutine &) | 
| 
bool  | Pre (const parser::InterfaceBody::Function &) | 
| 
bool  | Pre (const parser::Suffix &) | 
| 
bool  | Pre (const parser::PrefixSpec &) | 
| 
bool  | Pre (const parser::PrefixSpec::Attributes &) | 
| 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) | 
| 
bool  | Pre (const parser::AccessStmt &) | 
| 
bool  | Pre (const parser::Only &) | 
| 
bool  | Pre (const parser::Rename::Names &) | 
| 
bool  | Pre (const parser::Rename::Operators &) | 
| 
bool  | Pre (const parser::UseStmt &) | 
| 
void  | Post (const parser::UseStmt &) | 
| 
void  | BeginModule (const parser::Name &, bool isSubmodule) | 
| 
bool  | BeginSubmodule (const parser::Name &, const parser::ParentIdentifier &) | 
| 
void  | ApplyDefaultAccess () | 
| 
Symbol &  | AddGenericUse (GenericDetails &, const SourceName &, const Symbol &) | 
| 
void  | AddAndCheckModuleUse (SourceName, bool isIntrinsic) | 
| 
void  | CollectUseRenames (const parser::UseStmt &) | 
| 
void  | ClearUseRenames () | 
| 
void  | ClearUseOnly () | 
| 
void  | ClearModuleUses () | 
| 
bool  | HandleStmtFunction (const parser::StmtFunctionStmt &) | 
| 
bool  | Pre (const parser::SubroutineStmt &) | 
| 
bool  | Pre (const parser::FunctionStmt &) | 
| 
void  | Post (const parser::FunctionStmt &) | 
| 
bool  | Pre (const parser::EntryStmt &) | 
| 
void  | Post (const parser::EntryStmt &) | 
| 
bool  | Pre (const parser::InterfaceBody::Subroutine &) | 
| 
void  | Post (const parser::InterfaceBody::Subroutine &) | 
| 
bool  | Pre (const parser::InterfaceBody::Function &) | 
| 
void  | Post (const parser::InterfaceBody::Function &) | 
| 
bool  | Pre (const parser::Suffix &) | 
| 
bool  | Pre (const parser::PrefixSpec &) | 
| 
bool  | Pre (const parser::PrefixSpec::Attributes &) | 
| 
void  | Post (const parser::PrefixSpec::Launch_Bounds &) | 
| 
void  | Post (const parser::PrefixSpec::Cluster_Dims &) | 
| 
bool  | BeginSubprogram (const parser::Name &, Symbol::Flag, bool hasModulePrefix=false, const parser::LanguageBindingSpec *=nullptr, const ProgramTree::EntryStmtList *=nullptr) | 
| 
bool  | BeginMpSubprogram (const parser::Name &) | 
| 
void  | PushBlockDataScope (const parser::Name &) | 
| 
void  | EndSubprogram (std::optional< parser::CharBlock > stmtSource=std::nullopt, const std::optional< parser::LanguageBindingSpec > *=nullptr, const ProgramTree::EntryStmtList *=nullptr) | 
| 
bool  | Pre (const parser::InterfaceStmt &) | 
| 
void  | Post (const parser::InterfaceStmt &) | 
| 
void  | Post (const parser::EndInterfaceStmt &) | 
| 
bool  | Pre (const parser::GenericSpec &) | 
| 
bool  | Pre (const parser::ProcedureStmt &) | 
| 
bool  | Pre (const parser::GenericStmt &) | 
| 
void  | Post (const parser::GenericStmt &) | 
| 
bool  | inInterfaceBlock () const | 
| 
bool  | isGeneric () const | 
| 
bool  | isAbstract () const | 
| 
bool  | Pre (const parser::ConcurrentHeader &) | 
| 
bool  | Pre (const parser::LocalitySpec::Local &) | 
| 
bool  | Pre (const parser::LocalitySpec::LocalInit &) | 
| 
bool  | Pre (const parser::LocalitySpec::Reduce &) | 
| 
bool  | Pre (const parser::LocalitySpec::Shared &) | 
| 
bool  | Pre (const parser::AcSpec &) | 
| 
bool  | Pre (const parser::AcImpliedDo &) | 
| 
bool  | Pre (const parser::DataImpliedDo &) | 
| 
bool  | Pre (const parser::DataIDoObject &) | 
| 
bool  | Pre (const parser::DataStmtObject &) | 
| 
bool  | Pre (const parser::DataStmtValue &) | 
| 
bool  | Pre (const parser::DoConstruct &) | 
| 
void  | Post (const parser::DoConstruct &) | 
| 
bool  | Pre (const parser::ForallConstruct &) | 
| 
void  | Post (const parser::ForallConstruct &) | 
| 
bool  | Pre (const parser::ForallStmt &) | 
| 
void  | Post (const parser::ForallStmt &) | 
| 
bool  | Pre (const parser::BlockConstruct &) | 
| 
void  | Post (const parser::Selector &) | 
| 
void  | Post (const parser::AssociateStmt &) | 
| 
void  | Post (const parser::EndAssociateStmt &) | 
| 
bool  | Pre (const parser::Association &) | 
| 
void  | Post (const parser::SelectTypeStmt &) | 
| 
void  | Post (const parser::SelectRankStmt &) | 
| 
bool  | Pre (const parser::SelectTypeConstruct &) | 
| 
void  | Post (const parser::SelectTypeConstruct &) | 
| 
bool  | Pre (const parser::SelectTypeConstruct::TypeCase &) | 
| 
void  | Post (const parser::SelectTypeConstruct::TypeCase &) | 
| 
bool  | Pre (const parser::SelectRankConstruct::RankCase &) | 
| 
void  | Post (const parser::SelectRankConstruct::RankCase &) | 
| 
bool  | Pre (const parser::TypeGuardStmt::Guard &) | 
| 
void  | Post (const parser::TypeGuardStmt::Guard &) | 
| 
void  | Post (const parser::SelectRankCaseStmt::Rank &) | 
| 
bool  | Pre (const parser::ChangeTeamStmt &) | 
| 
void  | Post (const parser::EndChangeTeamStmt &) | 
| 
void  | Post (const parser::CoarrayAssociation &) | 
| 
bool  | Pre (const parser::WhereConstructStmt &x) | 
| 
bool  | Pre (const parser::ForallConstructStmt &x) | 
| 
bool  | Pre (const parser::CriticalStmt &x) | 
| 
bool  | Pre (const parser::LabelDoStmt &) | 
| 
bool  | Pre (const parser::NonLabelDoStmt &x) | 
| 
bool  | Pre (const parser::IfThenStmt &x) | 
| 
bool  | Pre (const parser::SelectCaseStmt &x) | 
| 
bool  | Pre (const parser::SelectRankConstruct &) | 
| 
void  | Post (const parser::SelectRankConstruct &) | 
| 
bool  | Pre (const parser::SelectRankStmt &x) | 
| 
bool  | Pre (const parser::SelectTypeStmt &x) | 
| 
void  | Post (const parser::MaskedElsewhereStmt &x) | 
| 
void  | Post (const parser::ElsewhereStmt &x) | 
| 
void  | Post (const parser::EndWhereStmt &x) | 
| 
void  | Post (const parser::EndForallStmt &x) | 
| 
void  | Post (const parser::EndCriticalStmt &x) | 
| 
void  | Post (const parser::EndDoStmt &x) | 
| 
void  | Post (const parser::ElseIfStmt &x) | 
| 
void  | Post (const parser::ElseStmt &x) | 
| 
void  | Post (const parser::EndIfStmt &x) | 
| 
void  | Post (const parser::CaseStmt &x) | 
| 
void  | Post (const parser::EndSelectStmt &x) | 
| 
void  | Post (const parser::SelectRankCaseStmt &x) | 
| 
void  | Post (const parser::TypeGuardStmt &x) | 
| 
void  | Post (const parser::CycleStmt &x) | 
| 
void  | Post (const parser::ExitStmt &x) | 
| 
void  | HandleImpliedAsynchronousInScope (const parser::Block &) | 
| 
bool  | Pre (const parser::Initialization &) | 
| 
void  | Post (const parser::EntityDecl &) | 
| 
void  | Post (const parser::ObjectDecl &) | 
| 
void  | Post (const parser::PointerDecl &) | 
| 
bool  | Pre (const parser::BindStmt &) | 
| 
void  | Post (const parser::BindStmt &) | 
| 
bool  | Pre (const parser::BindEntity &) | 
| 
bool  | Pre (const parser::OldParameterStmt &) | 
| 
bool  | Pre (const parser::NamedConstantDef &) | 
| 
bool  | Pre (const parser::NamedConstant &) | 
| 
void  | Post (const parser::EnumDef &) | 
| 
bool  | Pre (const parser::Enumerator &) | 
| 
bool  | Pre (const parser::AccessSpec &) | 
| 
bool  | Pre (const parser::AsynchronousStmt &) | 
| 
bool  | Pre (const parser::ContiguousStmt &) | 
| 
bool  | Pre (const parser::ExternalStmt &) | 
| 
bool  | Pre (const parser::IntentStmt &) | 
| 
bool  | Pre (const parser::IntrinsicStmt &) | 
| 
bool  | Pre (const parser::OptionalStmt &) | 
| 
bool  | Pre (const parser::ProtectedStmt &) | 
| 
bool  | Pre (const parser::ValueStmt &) | 
| 
bool  | Pre (const parser::VolatileStmt &) | 
| 
bool  | Pre (const parser::AllocatableStmt &) | 
| 
void  | Post (const parser::AllocatableStmt &) | 
| 
bool  | Pre (const parser::TargetStmt &) | 
| 
bool  | Pre (const parser::CUDAAttributesStmt &) | 
| 
void  | Post (const parser::TargetStmt &) | 
| 
void  | Post (const parser::DimensionStmt::Declaration &) | 
| 
void  | Post (const parser::CodimensionDecl &) | 
| 
bool  | Pre (const parser::TypeDeclarationStmt &) | 
| 
void  | Post (const parser::TypeDeclarationStmt &) | 
| 
void  | Post (const parser::IntegerTypeSpec &) | 
| 
void  | Post (const parser::UnsignedTypeSpec &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Real &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Complex &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Logical &) | 
| 
void  | Post (const parser::IntrinsicTypeSpec::Character &) | 
| 
void  | Post (const parser::CharSelector::LengthAndKind &) | 
| 
void  | Post (const parser::CharLength &) | 
| 
void  | Post (const parser::LengthSelector &) | 
| 
bool  | Pre (const parser::KindParam &) | 
| 
bool  | Pre (const parser::VectorTypeSpec &) | 
| 
void  | Post (const parser::VectorTypeSpec &) | 
| 
bool  | Pre (const parser::DeclarationTypeSpec::Type &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::Type &) | 
| 
bool  | Pre (const parser::DeclarationTypeSpec::Class &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::Class &) | 
| 
void  | Post (const parser::DeclarationTypeSpec::Record &) | 
| 
void  | Post (const parser::DerivedTypeSpec &) | 
| 
bool  | Pre (const parser::DerivedTypeDef &) | 
| 
bool  | Pre (const parser::DerivedTypeStmt &) | 
| 
void  | Post (const parser::DerivedTypeStmt &) | 
| 
bool  | Pre (const parser::TypeParamDefStmt &) | 
| 
void  | Post (const parser::TypeParamDefStmt &) | 
| 
bool  | Pre (const parser::TypeAttrSpec::Extends &) | 
| 
bool  | Pre (const parser::PrivateStmt &) | 
| 
bool  | Pre (const parser::SequenceStmt &) | 
| 
bool  | Pre (const parser::ComponentDefStmt &) | 
| 
void  | Post (const parser::ComponentDefStmt &) | 
| 
void  | Post (const parser::ComponentDecl &) | 
| 
void  | Post (const parser::FillDecl &) | 
| 
bool  | Pre (const parser::ProcedureDeclarationStmt &) | 
| 
void  | Post (const parser::ProcedureDeclarationStmt &) | 
| 
bool  | Pre (const parser::DataComponentDefStmt &) | 
| 
bool  | Pre (const parser::ProcComponentDefStmt &) | 
| 
void  | Post (const parser::ProcComponentDefStmt &) | 
| 
bool  | Pre (const parser::ProcPointerInit &) | 
| 
void  | Post (const parser::ProcInterface &) | 
| 
void  | Post (const parser::ProcDecl &) | 
| 
bool  | Pre (const parser::TypeBoundProcedurePart &) | 
| 
void  | Post (const parser::TypeBoundProcedurePart &) | 
| 
void  | Post (const parser::ContainsStmt &) | 
| 
bool  | Pre (const parser::TypeBoundProcBinding &) | 
| 
void  | Post (const parser::TypeBoundProcBinding &) | 
| 
void  | Post (const parser::TypeBoundProcedureStmt::WithoutInterface &) | 
| 
void  | Post (const parser::TypeBoundProcedureStmt::WithInterface &) | 
| 
bool  | Pre (const parser::FinalProcedureStmt &) | 
| 
bool  | Pre (const parser::TypeBoundGenericStmt &) | 
| 
bool  | Pre (const parser::StructureDef &) | 
| 
bool  | Pre (const parser::Union::UnionStmt &) | 
| 
bool  | Pre (const parser::StructureField &) | 
| 
void  | Post (const parser::StructureField &) | 
| 
bool  | Pre (const parser::AllocateStmt &) | 
| 
void  | Post (const parser::AllocateStmt &) | 
| 
bool  | Pre (const parser::StructureConstructor &) | 
| 
bool  | Pre (const parser::NamelistStmt::Group &) | 
| 
bool  | Pre (const parser::IoControlSpec &) | 
| 
bool  | Pre (const parser::CommonStmt::Block &) | 
| 
bool  | Pre (const parser::CommonBlockObject &) | 
| 
void  | Post (const parser::CommonBlockObject &) | 
| 
bool  | Pre (const parser::EquivalenceStmt &) | 
| 
bool  | Pre (const parser::SaveStmt &) | 
| 
bool  | Pre (const parser::BasedPointer &) | 
| 
void  | Post (const parser::BasedPointer &) | 
| 
void  | PointerInitialization (const parser::Name &, const parser::InitialDataTarget &) | 
| 
void  | PointerInitialization (const parser::Name &, const parser::ProcPointerInit &) | 
| 
bool  | CheckNonPointerInitialization (const parser::Name &, bool inLegacyDataInitialization) | 
| 
void  | NonPointerInitialization (const parser::Name &, const parser::ConstantExpr &) | 
| 
void  | LegacyDataInitialization (const parser::Name &, const std::list< common::Indirection< parser::DataStmtValue > > &values) | 
| 
void  | CheckExplicitInterface (const parser::Name &) | 
| 
void  | CheckBindings (const parser::TypeBoundProcedureStmt::WithoutInterface &) | 
| 
const parser::Name *  | ResolveDesignator (const parser::Designator &) | 
| 
int  | GetVectorElementKind (TypeCategory category, const std::optional< parser::KindSelector > &kind) | 
| 
void  | Post (const parser::ArraySpec &) | 
| 
void  | Post (const parser::ComponentArraySpec &) | 
| 
void  | Post (const parser::CoarraySpec &) | 
| 
void  | Post (const parser::AttrSpec &) | 
| 
void  | Post (const parser::ComponentAttrSpec &) | 
| 
template<typename T>  | 
| void  | Post (const parser::Statement< T > &) | 
| 
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 &) | 
| 
template<typename T>  | 
| bool  | Pre (const parser::Statement< T > &x) | 
| 
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::ArraySpec &) | 
| 
void  | Post (const parser::ComponentArraySpec &) | 
| 
void  | Post (const parser::CoarraySpec &) | 
| 
void  | Post (const parser::AttrSpec &) | 
| 
void  | Post (const parser::ComponentAttrSpec &) | 
| 
void  | AddOmpSourceRange (const parser::CharBlock &) | 
| 
bool  | Pre (const parser::OpenMPRequiresConstruct &x) | 
| 
bool  | Pre (const parser::OmpBlockConstruct &) | 
| 
void  | Post (const parser::OmpBlockConstruct &) | 
| 
bool  | Pre (const parser::OmpBeginDirective &x) | 
| 
void  | Post (const parser::OmpBeginDirective &x) | 
| 
bool  | Pre (const parser::OmpEndDirective &x) | 
| 
void  | Post (const parser::OmpEndDirective &x) | 
| 
bool  | Pre (const parser::OpenMPLoopConstruct &) | 
| 
void  | Post (const parser::OpenMPLoopConstruct &) | 
| 
bool  | Pre (const parser::OmpBeginLoopDirective &x) | 
| 
void  | Post (const parser::OmpBeginLoopDirective &x) | 
| 
bool  | Pre (const parser::OmpEndLoopDirective &x) | 
| 
void  | Post (const parser::OmpEndLoopDirective &x) | 
| 
void  | Post (const parser::OmpTypeName &) | 
| 
bool  | Pre (const parser::OmpStylizedDeclaration &) | 
| 
void  | Post (const parser::OmpStylizedDeclaration &) | 
| 
bool  | Pre (const parser::OmpStylizedInstance &) | 
| 
void  | Post (const parser::OmpStylizedInstance &) | 
| 
bool  | Pre (const parser::OpenMPDeclareMapperConstruct &x) | 
| 
bool  | Pre (const parser::OpenMPDeclareSimdConstruct &x) | 
| 
bool  | Pre (const parser::OmpDeclareVariantDirective &x) | 
| 
bool  | Pre (const parser::OpenMPDeclareReductionConstruct &x) | 
| 
bool  | Pre (const parser::OmpMapClause &) | 
| 
bool  | Pre (const parser::OpenMPSectionsConstruct &) | 
| 
void  | Post (const parser::OpenMPSectionsConstruct &) | 
| 
bool  | Pre (const parser::OmpBeginSectionsDirective &x) | 
| 
void  | Post (const parser::OmpBeginSectionsDirective &x) | 
| 
bool  | Pre (const parser::OmpEndSectionsDirective &x) | 
| 
void  | Post (const parser::OmpEndSectionsDirective &x) | 
| 
bool  | Pre (const parser::OpenMPThreadprivate &) | 
| 
void  | Post (const parser::OpenMPThreadprivate &) | 
| 
bool  | Pre (const parser::OpenMPDeclareTargetConstruct &x) | 
| 
void  | Post (const parser::OpenMPDeclareTargetConstruct &) | 
| 
bool  | Pre (const parser::OmpAllocateDirective &x) | 
| 
void  | Post (const parser::OmpAllocateDirective &) | 
| 
bool  | Pre (const parser::OpenMPDeclarativeConstruct &x) | 
| 
void  | Post (const parser::OpenMPDeclarativeConstruct &) | 
| 
bool  | Pre (const parser::OpenMPDepobjConstruct &x) | 
| 
void  | Post (const parser::OpenMPDepobjConstruct &x) | 
| 
bool  | Pre (const parser::OpenMPAtomicConstruct &x) | 
| 
void  | Post (const parser::OpenMPAtomicConstruct &) | 
| 
bool  | Pre (const parser::OmpClause &x) | 
| 
void  | Post (const parser::OmpClause &x) | 
| 
bool  | Pre (const parser::OmpMapperSpecifier &x) | 
| 
bool  | Pre (const parser::OmpReductionSpecifier &x) | 
| 
bool  | Pre (const parser::OmpBaseVariantNames &x) | 
| 
bool  | Pre (const parser::OmpDirectiveSpecification &x) | 
| 
void  | Post (const parser::OmpDirectiveSpecification &) | 
| 
bool  | Pre (const parser::OpenMPConstruct &x) | 
| 
void  | Post (const parser::OpenMPConstruct &) | 
| 
  | AccVisitor (SemanticsContext &context) | 
| 
void  | AddAccSourceRange (const parser::CharBlock &) | 
| 
bool  | Pre (const parser::OpenACCBlockConstruct &) | 
| 
void  | Post (const parser::OpenACCBlockConstruct &) | 
| 
bool  | Pre (const parser::OpenACCCombinedConstruct &) | 
| 
void  | Post (const parser::OpenACCCombinedConstruct &) | 
| 
bool  | Pre (const parser::AccClause::UseDevice &x) | 
| 
bool  | Pre (const parser::AccBeginBlockDirective &x) | 
| 
void  | Post (const parser::AccBeginBlockDirective &) | 
| 
bool  | Pre (const parser::AccEndBlockDirective &x) | 
| 
void  | Post (const parser::AccEndBlockDirective &) | 
| 
bool  | Pre (const parser::AccBeginCombinedDirective &x) | 
| 
void  | Post (const parser::AccBeginCombinedDirective &) | 
| 
bool  | Pre (const parser::AccEndCombinedDirective &x) | 
| 
void  | Post (const parser::AccEndCombinedDirective &) | 
| 
bool  | Pre (const parser::AccBeginLoopDirective &x) | 
| 
void  | Post (const parser::AccBeginLoopDirective &x) | 
| 
bool  | Pre (const parser::OpenACCStandaloneConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCCacheConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCWaitConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCAtomicConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCEndConstruct &x) | 
| 
bool  | Pre (const parser::OpenACCDeclarativeConstruct &x) | 
| 
void  | CopySymbolWithDevice (const parser::Name *name) |