[committed] ARM/GAS: Correct an `index' global shadowing error

Maciej W. Rozycki macro@imgtec.com
Thu Dec 8 23:39:00 GMT 2016


Fix a commit 008a97eff0ca ("[GAS][ARM]Generate unpredictable warning for 
pc used in data processing instructions with register-shifted register 
operand.") build regression:

cc1: warnings being treated as errors
.../gas/config/tc-arm.c: In function 'encode_arm_shift':
.../gas/config/tc-arm.c:7439: error: declaration of 'index' shadows a global declaration
/usr/include/string.h:303: error: shadowed declaration is here
make[4]: *** [tc-arm.o] Error 1

in a way following commit 91d6fa6a035c ("Add -Wshadow to the gcc command 
line options used when compiling the binutils.").

	gas/
	* config/tc-arm.c (encode_arm_shift): Rename `index' local
	variable to `op_index'.
---
Index: binutils/gas/config/tc-arm.c
===================================================================
--- binutils.orig/gas/config/tc-arm.c	2016-12-05 23:05:22.000000000 +0000
+++ binutils/gas/config/tc-arm.c	2016-12-08 07:04:30.535077785 +0000
@@ -7436,14 +7436,14 @@ encode_arm_shift (int i)
   /* register-shifted register.  */
   if (inst.operands[i].immisreg)
     {
-      int index;
-      for (index = 0; index <= i; ++index)
+      int op_index;
+      for (op_index = 0; op_index <= i; ++op_index)
 	{
 	  /* Check the operand only when it's presented.  In pre-UAL syntax,
 	     if the destination register is the same as the first operand, two
 	     register form of the instruction can be used.  */
-	  if (inst.operands[index].present && inst.operands[index].isreg
-	      && inst.operands[index].reg == REG_PC)
+	  if (inst.operands[op_index].present && inst.operands[op_index].isreg
+	      && inst.operands[op_index].reg == REG_PC)
 	    as_warn (UNPRED_REG ("r15"));
 	}
 



More information about the Binutils mailing list