[PATCH] RISC-V/gas: fix build with certain gcc versions
Jan Beulich
jbeulich@suse.com
Fri Oct 28 10:06:35 GMT 2022
Some versions of gcc warn by default about shadowed outer-scope
declarations. This affects frag_align_code, which is declared in
frags.h. Rename the offending function parameter. While there also
switch to using true/false at the function call sites.
--- a/gas/config/tc-riscv.c
+++ b/gas/config/tc-riscv.c
@@ -549,7 +549,7 @@ make_mapping_symbol (enum riscv_seg_msta
void
riscv_mapping_state (enum riscv_seg_mstate to_state,
int max_chars,
- bool frag_align_code)
+ bool fr_align_code)
{
enum riscv_seg_mstate from_state =
seg_info (now_seg)->tc_segment_info_data.map_state;
@@ -574,7 +574,7 @@ riscv_mapping_state (enum riscv_seg_msta
}
else if (seg_arch_symbol != 0
&& to_state == MAP_INSN
- && !frag_align_code
+ && !fr_align_code
&& strcmp (riscv_rps_as.subset_list->arch_str,
S_GET_NAME (seg_arch_symbol) + 2) != 0)
{
@@ -3540,7 +3540,7 @@ md_assemble (char *str)
return;
}
- riscv_mapping_state (MAP_INSN, 0, 0/* frag_align_code */);
+ riscv_mapping_state (MAP_INSN, 0, false/* fr_align_code */);
const struct riscv_ip_error error = riscv_ip (str, &insn, &imm_expr,
&imm_reloc, op_hash);
@@ -4219,7 +4219,7 @@ riscv_frag_align_code (int n)
fix_new_exp (frag_now, nops - frag_now->fr_literal, 0,
&ex, false, BFD_RELOC_RISCV_ALIGN);
- riscv_mapping_state (MAP_INSN, worst_case_bytes, 1/* frag_align_code */);
+ riscv_mapping_state (MAP_INSN, worst_case_bytes, true/* fr_align_code */);
/* We need to start a new frag after the alignment which may be removed by
the linker, to prevent the assembler from computing static offsets.
@@ -4293,10 +4293,10 @@ riscv_init_frag (fragS * fragP, int max_
case rs_fill:
case rs_align:
case rs_align_test:
- riscv_mapping_state (MAP_DATA, max_chars, 0/* frag_align_code */);
+ riscv_mapping_state (MAP_DATA, max_chars, false/* fr_align_code */);
break;
case rs_align_code:
- riscv_mapping_state (MAP_INSN, max_chars, 1/* frag_align_code */);
+ riscv_mapping_state (MAP_INSN, max_chars, true/* fr_align_code */);
break;
default:
break;
@@ -4570,7 +4570,7 @@ s_riscv_insn (int x ATTRIBUTE_UNUSED)
save_c = *input_line_pointer;
*input_line_pointer = '\0';
- riscv_mapping_state (MAP_INSN, 0, 0/* frag_align_code */);
+ riscv_mapping_state (MAP_INSN, 0, false/* fr_align_code */);
struct riscv_ip_error error = riscv_ip (str, &insn, &imm_expr,
&imm_reloc, insn_type_hash);
More information about the Binutils
mailing list