RISC-V/GAS: Correct an `expr' global shadowing error for pre-4.8 GCC
authorMaciej W. Rozycki <macro@mips.com>
Mon, 5 Feb 2018 14:05:51 +0000 (14:05 +0000)
committerMaciej W. Rozycki <macro@mips.com>
Mon, 5 Feb 2018 14:06:46 +0000 (14:06 +0000)
Correct a commit f0531ed6a429 ("Compress loads/stores with implicit 0
offset.") regression and remove a `-Wshadow' compilation error:

cc1: warnings being treated as errors
.../gas/config/tc-riscv.c: In function 'riscv_handle_implicit_zero_offset':
.../gas/config/tc-riscv.c:1194: error: declaration of 'expr' shadows a global declaration
.../gas/expr.h:180: error: shadowed declaration is here
make[4]: *** [tc-riscv.o] Error 1

which for versions of GCC before 4.8 prevents GAS for RISC-V targets
from being built.  See also GCC PR c/53066.

gas/
* config/tc-riscv.c (riscv_handle_implicit_zero_offset): Rename
`expr' parameter to `ep'.

gas/ChangeLog
gas/config/tc-riscv.c

index 6c9ff3e345642b81b089afbdc8f3f12ec2a08040..45ad93b0d172912965f56c7e3c02d8a36eb86080 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-05  Maciej W. Rozycki  <macro@mips.com>
+
+       * config/tc-riscv.c (riscv_handle_implicit_zero_offset): Rename
+       `expr' parameter to `ep'.
+
 2018-02-05  Maciej W. Rozycki  <macro@mips.com>
 
        * testsuite/gas/mips/reginfo-2.d: New test.
index a84240db2000191d03a4dc8f346b28c59afc7604..f1bc7f98041d4dfabbc3d3f120f4670091c54d7c 100644 (file)
@@ -1191,14 +1191,14 @@ my_getSmallExpression (expressionS *ep, bfd_reloc_code_real_type *reloc,
    an implicit offset was detected.  */
 
 static bfd_boolean
-riscv_handle_implicit_zero_offset (expressionS *expr, const char *s)
+riscv_handle_implicit_zero_offset (expressionS *ep, const char *s)
 {
   /* Check whether there is only a single bracketed expression left.
      If so, it must be the base register and the constant must be zero.  */
   if (*s == '(' && strchr (s + 1, '(') == 0)
     {
-      expr->X_op = O_constant;
-      expr->X_add_number = 0;
+      ep->X_op = O_constant;
+      ep->X_add_number = 0;
       return TRUE;
     }