]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
RISC-V: Don't use structured binding in riscv-common.cc
authorKito Cheng <kito.cheng@sifive.com>
Thu, 5 Jun 2025 07:23:59 +0000 (15:23 +0800)
committerKito Cheng <kito.cheng@sifive.com>
Thu, 5 Jun 2025 14:11:42 +0000 (22:11 +0800)
It's new C++ language feature introduced in C++17, which is higher than
the build environment required by the GCC (C++14).

gcc/ChangeLog:

* common/config/riscv/riscv-common.cc: Remove structured binding
from the code.

gcc/common/config/riscv/riscv-common.cc

index a6d8763f032bd8db0489c1d01114e52418d5bf18..6b5440365e339481b3bfb03b0585b12b1f0dd877 100644 (file)
@@ -1129,8 +1129,10 @@ riscv_subset_list::check_implied_ext ()
 void
 riscv_subset_list::handle_combine_ext ()
 {
-  for (const auto &[ext_name, ext_info] : riscv_ext_infos)
+  for (const auto &pair : riscv_ext_infos)
     {
+      const std::string &ext_name = pair.first;
+      auto &ext_info = pair.second;
       bool is_combined = true;
       /* Skip if this extension don't need to combine.  */
       if (!ext_info.need_combine_p ())
@@ -1558,20 +1560,27 @@ riscv_set_arch_by_subset_list (riscv_subset_list *subset_list,
   if (opts)
     {
       /* Clean up target flags before we set.  */
-      for (const auto &[ext_name, ext_info] : riscv_ext_infos)
-       ext_info.clean_opts (opts);
+      for (const auto &pair : riscv_ext_infos)
+       {
+         auto &ext_info = pair.second;
+         ext_info.clean_opts (opts);
+       }
 
       if (subset_list->xlen () == 32)
        opts->x_riscv_isa_flags &= ~MASK_64BIT;
       else if (subset_list->xlen () == 64)
        opts->x_riscv_isa_flags |= MASK_64BIT;
 
-      for (const auto &[ext_name, ext_info] : riscv_ext_infos)
-       if (subset_list->lookup (ext_name.c_str ()))
-         {
-           /* Set the extension flag.  */
-           ext_info.set_opts (opts);
-         }
+      for (const auto &pair : riscv_ext_infos)
+       {
+         const std::string &ext_name = pair.first;
+         auto &ext_info = pair.second;
+         if (subset_list->lookup (ext_name.c_str ()))
+           {
+             /* Set the extension flag.  */
+             ext_info.set_opts (opts);
+           }
+       }
     }
 }