[flang-commits] [flang] [Flang][Semantics] Allow declare target to be used on functions external to the declare targets scope (PR #122546)

via flang-commits flang-commits at lists.llvm.org
Fri Jan 10 15:09:22 PST 2025


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff 25b90c4ef67a01de6eba4f9e160d33772eb53454 63a9a9340c52f28af243ac43c9073a353d77e45f --extensions cpp -- flang/lib/Semantics/resolve-names.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/flang/lib/Semantics/resolve-names.cpp b/flang/lib/Semantics/resolve-names.cpp
index 44bd540a42..878b502437 100644
--- a/flang/lib/Semantics/resolve-names.cpp
+++ b/flang/lib/Semantics/resolve-names.cpp
@@ -1551,16 +1551,18 @@ public:
     if (const auto *objectList{parser::Unwrap<parser::OmpObjectList>(spec.u)}) {
       populateDeclareTargetNames(*objectList);
     } else if (const auto *clauseList{
-                 parser::Unwrap<parser::OmpClauseList>(spec.u)}) {
+                   parser::Unwrap<parser::OmpClauseList>(spec.u)}) {
       for (const auto &clause : clauseList->v) {
-        if (const auto *toClause{std::get_if<parser::OmpClause::To>(&clause.u)}) {
-          populateDeclareTargetNames({std::get<parser::OmpObjectList>(toClause->v.t)});
+        if (const auto *toClause{
+                std::get_if<parser::OmpClause::To>(&clause.u)}) {
+          populateDeclareTargetNames(
+              {std::get<parser::OmpObjectList>(toClause->v.t)});
         } else if (const auto *linkClause{
                        std::get_if<parser::OmpClause::Link>(&clause.u)}) {
-            populateDeclareTargetNames(linkClause->v);
+          populateDeclareTargetNames(linkClause->v);
         } else if (const auto *enterClause{
-                     std::get_if<parser::OmpClause::Enter>(&clause.u)}) {
-        populateDeclareTargetNames(enterClause->v);
+                       std::get_if<parser::OmpClause::Enter>(&clause.u)}) {
+          populateDeclareTargetNames(enterClause->v);
         }
       }
     }
@@ -8345,7 +8347,8 @@ const parser::Name *DeclarationVisitor::FindComponent(
   return nullptr;
 }
 
-bool DeclarationVisitor::FindAndMarkDeclareTargetSymbol(const parser::Name &name) {
+bool DeclarationVisitor::FindAndMarkDeclareTargetSymbol(
+    const parser::Name &name) {
   if (!specPartState_.declareTargetNames.empty()) {
     if (specPartState_.declareTargetNames.find(name.source) !=
         specPartState_.declareTargetNames.end()) {
@@ -8354,7 +8357,7 @@ bool DeclarationVisitor::FindAndMarkDeclareTargetSymbol(const parser::Name &name
         // of scopes to search, we skip the current scope as it's already been
         // designated as implicit here.
         Symbol *symbol = nullptr;
-        for (auto *scope = &currScope().parent(); ; scope = &scope->parent()) {
+        for (auto *scope = &currScope().parent();; scope = &scope->parent()) {
           symbol = scope->FindSymbol(name.source);
           if (symbol) {
             if (symbol->test(Symbol::Flag::Subroutine) ||

``````````

</details>


https://github.com/llvm/llvm-project/pull/122546


More information about the flang-commits mailing list