Lines Matching defs:Post

239 // Provide Post methods to collect attributes into a member variable.
248 void Post(const parser::LanguageBindingSpec &);
325 using AttrsVisitor::Post;
327 void Post(const parser::IntrinsicTypeSpec::DoublePrecision &);
328 void Post(const parser::IntrinsicTypeSpec::DoubleComplex &);
329 void Post(const parser::DeclarationTypeSpec::ClassStar &);
330 void Post(const parser::DeclarationTypeSpec::TypeStar &);
332 void Post(const parser::TypeGuardStmt &);
333 void Post(const parser::TypeSpec &);
386 using DeclTypeSpecVisitor::Post;
390 void Post(const parser::ParameterStmt &);
394 void Post(const parser::ImplicitSpec &);
439 void Post(const parser::ArraySpec &);
440 void Post(const parser::ComponentArraySpec &);
441 void Post(const parser::CoarraySpec &);
442 void Post(const parser::AttrSpec &) { PostAttrSpec(); }
443 void Post(const parser::ComponentAttrSpec &) { PostAttrSpec(); }
487 bool inFunctionStmt{false}; // true between Pre/Post of FunctionStmt
509 using ImplicitRulesVisitor::Post;
532 template <typename T> void Post(const parser::Statement<T> &) {
782 void Post(const parser::UseStmt &);
862 void Post(const parser::InterfaceStmt &);
863 void Post(const parser::EndInterfaceStmt &);
867 void Post(const parser::GenericStmt &);
899 void Post(const parser::FunctionStmt &);
901 void Post(const parser::EntryStmt &);
903 void Post(const parser::InterfaceBody::Subroutine &);
905 void Post(const parser::InterfaceBody::Function &);
909 void Post(const parser::PrefixSpec::Launch_Bounds &);
910 void Post(const parser::PrefixSpec::Cluster_Dims &);
948 using ArraySpecVisitor::Post;
949 using ScopeHandler::Post;
953 void Post(const parser::EntityDecl &);
954 void Post(const parser::ObjectDecl &);
955 void Post(const parser::PointerDecl &);
957 void Post(const parser::BindStmt &) { EndAttrs(); }
962 void Post(const parser::EnumDef &);
978 void Post(const parser::AllocatableStmt &) { objectDeclAttr_ = std::nullopt; }
984 void Post(const parser::TargetStmt &) { objectDeclAttr_ = std::nullopt; }
985 void Post(const parser::DimensionStmt::Declaration &);
986 void Post(const parser::CodimensionDecl &);
988 void Post(const parser::TypeDeclarationStmt &);
989 void Post(const parser::IntegerTypeSpec &);
990 void Post(const parser::UnsignedTypeSpec &);
991 void Post(const parser::IntrinsicTypeSpec::Real &);
992 void Post(const parser::IntrinsicTypeSpec::Complex &);
993 void Post(const parser::IntrinsicTypeSpec::Logical &);
994 void Post(const parser::IntrinsicTypeSpec::Character &);
995 void Post(const parser::CharSelector::LengthAndKind &);
996 void Post(const parser::CharLength &);
997 void Post(const parser::LengthSelector &);
1000 void Post(const parser::VectorTypeSpec &);
1002 void Post(const parser::DeclarationTypeSpec::Type &);
1004 void Post(const parser::DeclarationTypeSpec::Class &);
1005 void Post(const parser::DeclarationTypeSpec::Record &);
1006 void Post(const parser::DerivedTypeSpec &);
1009 void Post(const parser::DerivedTypeStmt &);
1011 void Post(const parser::TypeParamDefStmt &);
1016 void Post(const parser::ComponentDefStmt &) { EndDecl(); }
1017 void Post(const parser::ComponentDecl &);
1018 void Post(const parser::FillDecl &);
1020 void Post(const parser::ProcedureDeclarationStmt &);
1023 void Post(const parser::ProcComponentDefStmt &);
1025 void Post(const parser::ProcInterface &);
1026 void Post(const parser::ProcDecl &);
1028 void Post(const parser::TypeBoundProcedurePart &);
1029 void Post(const parser::ContainsStmt &);
1031 void Post(const parser::TypeBoundProcBinding &) { EndAttrs(); }
1032 void Post(const parser::TypeBoundProcedureStmt::WithoutInterface &);
1033 void Post(const parser::TypeBoundProcedureStmt::WithInterface &);
1039 void Post(const parser::StructureField &);
1041 void Post(const parser::AllocateStmt &);
1047 void Post(const parser::CommonBlockObject &);
1051 void Post(const parser::BasedPointer &);
1255 void Post(const parser::DoConstruct &);
1257 void Post(const parser::ForallConstruct &);
1259 void Post(const parser::ForallStmt &);
1261 void Post(const parser::Selector &);
1262 void Post(const parser::AssociateStmt &);
1263 void Post(const parser::EndAssociateStmt &);
1265 void Post(const parser::SelectTypeStmt &);
1266 void Post(const parser::SelectRankStmt &);
1268 void Post(const parser::SelectTypeConstruct &);
1270 void Post(const parser::SelectTypeConstruct::TypeCase &);
1273 void Post(const parser::SelectRankConstruct::RankCase &);
1275 void Post(const parser::TypeGuardStmt::Guard &);
1276 void Post(const parser::SelectRankCaseStmt::Rank &);
1278 void Post(const parser::EndChangeTeamStmt &);
1279 void Post(const parser::CoarrayAssociation &);
1292 void Post(const parser::SelectRankConstruct &);
1301 void Post(const parser::MaskedElsewhereStmt &x) { CheckRef(x.t); }
1302 void Post(const parser::ElsewhereStmt &x) { CheckRef(x.v); }
1303 void Post(const parser::EndWhereStmt &x) { CheckRef(x.v); }
1304 void Post(const parser::EndForallStmt &x) { CheckRef(x.v); }
1305 void Post(const parser::EndCriticalStmt &x) { CheckRef(x.v); }
1306 void Post(const parser::EndDoStmt &x) { CheckRef(x.v); }
1307 void Post(const parser::ElseIfStmt &x) { CheckRef(x.t); }
1308 void Post(const parser::ElseStmt &x) { CheckRef(x.v); }
1309 void Post(const parser::EndIfStmt &x) { CheckRef(x.v); }
1310 void Post(const parser::CaseStmt &x) { CheckRef(x.t); }
1311 void Post(const parser::EndSelectStmt &x) { CheckRef(x.v); }
1312 void Post(const parser::SelectRankCaseStmt &x) { CheckRef(x.t); }
1313 void Post(const parser::TypeGuardStmt &x) { CheckRef(x.t); }
1314 void Post(const parser::CycleStmt &x) { CheckRef(x.v); }
1315 void Post(const parser::ExitStmt &x) { CheckRef(x.v); }
1368 void Post(const parser::OpenACCBlockConstruct &);
1370 void Post(const parser::OpenACCCombinedConstruct &);
1375 void Post(const parser::AccBeginBlockDirective &) {
1382 void Post(const parser::AccEndBlockDirective &) {
1389 void Post(const parser::AccBeginLoopDirective &x) {
1421 void AccVisitor::Post(const parser::OpenACCBlockConstruct &x) {
1432 void AccVisitor::Post(const parser::OpenACCCombinedConstruct &x) { PopScope(); }
1451 void Post(const parser::OpenMPBlockConstruct &);
1456 void Post(const parser::OmpBeginBlockDirective &) {
1463 void Post(const parser::OmpEndBlockDirective &) {
1471 void Post(const parser::OpenMPLoopConstruct &) { PopScope(); }
1481 void Post(const parser::OmpBeginLoopDirective &) {
1488 void Post(const parser::OmpEndLoopDirective &) {
1496 void Post(const parser::OpenMPSectionsConstruct &) { PopScope(); }
1501 void Post(const parser::OmpBeginSectionsDirective &) {
1508 void Post(const parser::OmpEndSectionsDirective &) {
1515 void Post(const parser::OmpCriticalDirective &) {
1522 void Post(const parser::OmpEndCriticalDirective &) {
1529 void Post(const parser::OpenMPThreadprivate &) { SkipImplicitTyping(false); }
1574 void Post(const parser::OpenMPDeclareTargetConstruct &) {
1581 void Post(const parser::OpenMPDeclarativeAllocate &) {
1588 void Post(const parser::OpenMPDeclarativeConstruct &) {
1595 void Post(const parser::OpenMPDepobjConstruct &x) {
1605 void Post(const parser::OpenMPAtomicConstruct &) {
1614 void Post(const parser::OmpClause &x) {
1652 void OmpVisitor::Post(const parser::OpenMPBlockConstruct &x) {
1724 using AccVisitor::Post;
1726 using ArraySpecVisitor::Post;
1727 using ConstructVisitor::Post;
1729 using DeclarationVisitor::Post;
1731 using ImplicitRulesVisitor::Post;
1733 using InterfaceVisitor::Post;
1735 using ModuleVisitor::Post;
1737 using OmpVisitor::Post;
1739 using ScopeHandler::Post;
1741 using SubprogramVisitor::Post;
1754 template <typename T> void Post(const T &) {}
1758 void Post(const parser::Program &);
1760 void Post(const parser::PointerObject &);
1761 void Post(const parser::AllocateObject &);
1763 void Post(const parser::Designator &);
1764 void Post(const parser::SubstringInquiry &);
1766 void Post(const parser::LoopBounds<A, B> &x) {
1769 void Post(const parser::ProcComponentRef &);
1773 void Post(const parser::TypeGuardStmt &);
1777 void Post(const parser::AssignStmt &);
1778 void Post(const parser::AssignedGotoStmt &);
1779 void Post(const parser::CompilerDirective &);
2017 void AttrsVisitor::Post(const parser::LanguageBindingSpec &x) {
2120 void DeclTypeSpecVisitor::Post(const parser::TypeGuardStmt &) {
2124 void DeclTypeSpecVisitor::Post(const parser::TypeSpec &typeSpec) {
2148 void DeclTypeSpecVisitor::Post(
2152 void DeclTypeSpecVisitor::Post(
2166 void DeclTypeSpecVisitor::Post(const parser::DeclarationTypeSpec::ClassStar &) {
2169 void DeclTypeSpecVisitor::Post(const parser::DeclarationTypeSpec::TypeStar &) {
2200 void ImplicitRulesVisitor::Post(const parser::ParameterStmt &) {
2246 void ImplicitRulesVisitor::Post(const parser::ImplicitSpec &) {
2324 void ArraySpecVisitor::Post(const parser::ArraySpec &x) {
2328 void ArraySpecVisitor::Post(const parser::ComponentArraySpec &x) {
2332 void ArraySpecVisitor::Post(const parser::CoarraySpec &x) {
3144 void ModuleVisitor::Post(const parser::UseStmt &x) {
3830 void InterfaceVisitor::Post(const parser::InterfaceStmt &) { EndAttrs(); }
3832 void InterfaceVisitor::Post(const parser::EndInterfaceStmt &) {
3860 void InterfaceVisitor::Post(const parser::GenericStmt &x) {
4118 // will check the result name in Post(EntryStmt)
4129 // LanguageBindingSpec deferred to Post(EntryStmt) or, for FunctionStmt,
4214 void SubprogramVisitor::Post(const parser::PrefixSpec::Launch_Bounds &x) {
4239 void SubprogramVisitor::Post(const parser::PrefixSpec::Cluster_Dims &x) {
4280 void SubprogramVisitor::Post(const parser::InterfaceBody::Subroutine &x) {
4292 void SubprogramVisitor::Post(const parser::InterfaceBody::Function &x) {
4327 void SubprogramVisitor::Post(const parser::FunctionStmt &stmt) {
4405 void SubprogramVisitor::Post(const parser::EntryStmt &stmt) {
5005 void DeclarationVisitor::Post(const parser::TypeDeclarationStmt &) {
5009 void DeclarationVisitor::Post(const parser::DimensionStmt::Declaration &x) {
5012 void DeclarationVisitor::Post(const parser::CodimensionDecl &x) {
5023 void DeclarationVisitor::Post(const parser::EntityDecl &x) {
5047 void DeclarationVisitor::Post(const parser::PointerDecl &x) {
5218 void DeclarationVisitor::Post(const parser::EnumDef &) {
5399 void DeclarationVisitor::Post(const parser::ObjectDecl &x) {
5541 void DeclarationVisitor::Post(const parser::IntegerTypeSpec &x) {
5546 void DeclarationVisitor::Post(const parser::UnsignedTypeSpec &x) {
5555 void DeclarationVisitor::Post(const parser::IntrinsicTypeSpec::Real &x) {
5560 void DeclarationVisitor::Post(const parser::IntrinsicTypeSpec::Complex &x) {
5563 void DeclarationVisitor::Post(const parser::IntrinsicTypeSpec::Logical &x) {
5566 void DeclarationVisitor::Post(const parser::IntrinsicTypeSpec::Character &) {
5578 void DeclarationVisitor::Post(const parser::CharSelector::LengthAndKind &x) {
5592 void DeclarationVisitor::Post(const parser::CharLength &x) {
5601 void DeclarationVisitor::Post(const parser::LengthSelector &x) {
5640 void DeclarationVisitor::Post(const parser::VectorTypeSpec &x) {
5739 void DeclarationVisitor::Post(const parser::DeclarationTypeSpec::Type &type) {
5751 void DeclarationVisitor::Post(
5762 void DeclarationVisitor::Post(const parser::DerivedTypeSpec &x) {
5837 void DeclarationVisitor::Post(const parser::DeclarationTypeSpec::Record &rec) {
5905 void DeclarationVisitor::Post(const parser::DerivedTypeStmt &x) {
5954 void DeclarationVisitor::Post(const parser::TypeParamDefStmt &x) {
6022 void DeclarationVisitor::Post(const parser::ComponentDecl &x) {
6078 void DeclarationVisitor::Post(const parser::FillDecl &x) {
6106 void DeclarationVisitor::Post(const parser::ProcedureDeclarationStmt &) {
6139 void DeclarationVisitor::Post(const parser::ProcComponentDefStmt &) {
6157 void DeclarationVisitor::Post(const parser::ProcInterface &x) {
6163 void DeclarationVisitor::Post(const parser::ProcDecl &x) {
6192 void DeclarationVisitor::Post(const parser::TypeBoundProcedurePart &) {
6224 void DeclarationVisitor::Post(const parser::ContainsStmt &) {
6230 void DeclarationVisitor::Post(
6287 void DeclarationVisitor::Post(
6445 void DeclarationVisitor::Post(const parser::StructureField &x) {
6456 void DeclarationVisitor::Post(const parser::AllocateStmt &) {
6494 void DeclarationVisitor::Post(const parser::BasedPointer &bp) {
6617 void DeclarationVisitor::Post(const parser::CommonBlockObject &x) {
7492 void ConstructVisitor::Post(const parser::DoConstruct &x) {
7502 void ConstructVisitor::Post(const parser::ForallConstruct &) { PopScope(); }
7507 void ConstructVisitor::Post(const parser::ForallStmt &) { PopScope(); }
7523 void ConstructVisitor::Post(const parser::Selector &x) {
7527 void ConstructVisitor::Post(const parser::AssociateStmt &x) {
7548 void ConstructVisitor::Post(const parser::EndAssociateStmt &x) {
7567 void ConstructVisitor::Post(const parser::CoarrayAssociation &x) {
7586 void ConstructVisitor::Post(const parser::EndChangeTeamStmt &x) {
7597 void ConstructVisitor::Post(const parser::SelectTypeConstruct &) {
7601 void ConstructVisitor::Post(const parser::SelectTypeStmt &x) {
7642 void ConstructVisitor::Post(const parser::SelectRankStmt &x) {
7655 void ConstructVisitor::Post(const parser::SelectTypeConstruct::TypeCase &) {
7663 void ConstructVisitor::Post(const parser::SelectRankConstruct::RankCase &) {
7675 void ConstructVisitor::Post(const parser::TypeGuardStmt::Guard &x) {
7686 void ConstructVisitor::Post(const parser::SelectRankCaseStmt::Rank &x) {
7723 void ConstructVisitor::Post(const parser::SelectRankConstruct &) {
7902 template <typename A> void Post(const A &) {}
7910 void Post(const parser::AssociateConstruct &) { PopScope(); }
7920 void Post(const parser::BlockConstruct &) {
7972 void Post(const parser::ImportStmt &x) {
7985 void Post(const parser::UseStmt &x) {
8007 void Post(const parser::DerivedTypeDef &) { PopScope(); }
8012 void Post(const parser::SelectTypeConstruct &) { PopScope(); }
8023 void Post(const parser::SelectRankConstruct &) { PopScope(); }
8042 void Post(const parser::OmpClause &x) {
8095 using ExecutionPartSkimmerBase::Post;
8113 void Post(const parser::ReadStmt &) { inAsyncIO_ = false; }
8114 void Post(const parser::WriteStmt &) { inAsyncIO_ = false; }
8115 void Post(const parser::IoControlSpec::Size &size) {
8122 void Post(const parser::InputItem &x) {
8130 void Post(const parser::OutputItem &x) {
9335 void ResolveNamesVisitor::Post(const parser::PointerObject &x) {
9344 void ResolveNamesVisitor::Post(const parser::AllocateObject &x) {
9404 void ResolveNamesVisitor::Post(const parser::Designator &x) {
9407 void ResolveNamesVisitor::Post(const parser::SubstringInquiry &x) {
9412 void ResolveNamesVisitor::Post(const parser::ProcComponentRef &x) {
9415 void ResolveNamesVisitor::Post(const parser::TypeGuardStmt &x) {
9416 DeclTypeSpecVisitor::Post(x);
9417 ConstructVisitor::Post(x);
9447 void ResolveNamesVisitor::Post(const parser::AssignStmt &x) {
9453 void ResolveNamesVisitor::Post(const parser::AssignedGotoStmt &x) {
9460 void ResolveNamesVisitor::Post(const parser::CompilerDirective &x) {
9695 using ExecutionPartSkimmerBase::Post;
9698 void Post(const parser::FunctionReference &fr) {
9701 void Post(const parser::CallStmt &cs) {
9916 template <typename A> void Post(const A &) {}
9918 void Post(const parser::DerivedTypeStmt &x) {
9930 void Post(const parser::EndTypeStmt &) {
9937 void Post(const parser::ProcInterface &pi) {
9959 void Post(const parser::TypeBoundProcedureStmt::WithInterface &tbps) {
9962 void Post(const parser::TypeBoundProcedureStmt::WithoutInterface &tbps) {
9971 void Post(const parser::DataStmtObject &) { --dataStmtObjectNesting_; }
9972 void Post(const parser::Designator &x) {
10093 void ResolveNamesVisitor::Post(const parser::Program &x) {