Lines Matching defs:stmt
99 auto stmt{UnwrapStmt<A>(a)};
103 stmt.unwrapped, pftParentStack.back(), stmt.position, stmt.label});
111 stmt.position, stmt.label});
116 convertIfStmt(x.value(), stmt.position, stmt.label);
122 stmt.position, stmt.label});
126 stmt.unwrapped.u);
256 [&](const parser::Statement<parser::AssignmentStmt> &stmt) {
259 addEvaluation(lower::pft::Evaluation{stmt.statement,
261 stmt.source, stmt.label});
660 void analyzeIoBranches(lower::pft::Evaluation &eval, const A &stmt) {
693 if (stmt.format)
694 analyzeFormatSpec(*stmt.format);
695 analyzeSpecs(stmt.controls);
697 analyzeFormatSpec(std::get<parser::Format>(stmt.t));
700 std::get_if<std::list<parser::InquireSpec>>(&stmt.u))
703 analyzeSpecs(stmt.v);
764 inline std::string getConstructName(const A &stmt) {
773 if (stmt.v)
774 return stmt.v->ToString();
785 if (auto name = std::get<std::optional<parser::Name>>(stmt.t))
792 if (auto name = std::get<0>(stmt.t))
802 void insertConstructName(const A &stmt,
804 std::string name = getConstructName(stmt);
1052 [&](const auto &stmt) {
1053 using A = std::decay_t<decltype(stmt)>;
1060 analyzeIoBranches(eval, stmt);
1267 [&](const parser::Statement<parser::ProgramStmt> &stmt) {
1269 name = toStringRef(stmt.statement.v.source);
1271 [&](const parser::Statement<parser::FunctionStmt> &stmt) {
1273 name = toStringRef(std::get<parser::Name>(stmt.statement.t).source);
1274 header = toStringRef(stmt.source);
1276 [&](const parser::Statement<parser::SubroutineStmt> &stmt) {
1278 name = toStringRef(std::get<parser::Name>(stmt.statement.t).source);
1279 header = toStringRef(stmt.source);
1281 [&](const parser::Statement<parser::MpSubprogramStmt> &stmt) {
1283 name = toStringRef(stmt.statement.v.source);
1284 header = toStringRef(stmt.source);
1286 [&](const auto &) { llvm_unreachable("not a valid begin stmt"); },
1308 [&](const parser::Statement<parser::ModuleStmt> &stmt) {
1310 name = toStringRef(stmt.statement.v.source);
1311 header = toStringRef(stmt.source);
1313 [&](const parser::Statement<parser::SubmoduleStmt> &stmt) {
1315 name = toStringRef(std::get<parser::Name>(stmt.statement.t).source);
1316 header = toStringRef(stmt.source);
1319 llvm_unreachable("not a valid module begin stmt");
1410 [](const parser::Statement<parser::ProgramStmt> &stmt)
1411 -> const semantics::Symbol * { return stmt.statement.v.symbol; },
1412 [](const parser::Statement<parser::FunctionStmt> &stmt)
1414 return std::get<parser::Name>(stmt.statement.t).symbol;
1416 [](const parser::Statement<parser::SubroutineStmt> &stmt)
1418 return std::get<parser::Name>(stmt.statement.t).symbol;
1420 [](const parser::Statement<parser::MpSubprogramStmt> &stmt)
1421 -> const semantics::Symbol * { return stmt.statement.v.symbol; },
1422 [](const parser::Statement<parser::ModuleStmt> &stmt)
1423 -> const semantics::Symbol * { return stmt.statement.v.symbol; },
1424 [](const parser::Statement<parser::SubmoduleStmt> &stmt)
1426 return std::get<parser::Name>(stmt.statement.t).symbol;