Function riscv_ext_is_subset () uses structured bindings to iterate over all keys and values of an unordered map. However, this is only available since C++17 and causes a warning like this: warning: structured bindings only available with ‘-std=c++17’ This patch addresses the warning.
gcc/ChangeLog: * common/config/riscv/riscv-common.cc (riscv_ext_is_subset): Remove use of structured binding to fix compiler warning. Signed-off-by: Christoph Müllner <christoph.muell...@vrull.eu> --- gcc/common/config/riscv/riscv-common.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/common/config/riscv/riscv-common.cc b/gcc/common/config/riscv/riscv-common.cc index 82037a334528..da3cb9f788dc 100644 --- a/gcc/common/config/riscv/riscv-common.cc +++ b/gcc/common/config/riscv/riscv-common.cc @@ -1606,8 +1606,9 @@ bool riscv_ext_is_subset (struct cl_target_option *opts, struct cl_target_option *subset) { - for (const auto &[ext_name, ext_info] : riscv_ext_infos) + for (const auto &riscv_ext_info : riscv_ext_infos) { + const auto &ext_info = riscv_ext_info.second; if (ext_info.check_opts (opts) && !ext_info.check_opts (subset)) return false; } -- 2.50.1