Peter Maydell <peter.mayd...@linaro.org> writes: > In shell script syntax, $var[something] is not special for variable > expansion: $emu is expanded. However, as it can look as if it were
Do you mean "$var is expanded"? > intended to be an array element access (the correct syntax for which > is ${var[something]}), shellcheck recommends using explicit braces > around ${var} to clarify the intended expansion. > > This fixes the warning: > > In ./configure line 2346: > if "$target_ld" -verbose 2>&1 | grep -q > "^[[:space:]]*$emu[[:space:]]*$"; then > ^-- SC1087: Use > braces when expanding arrays, e.g. ${array[idx]} (or ${var}[.. to quiet). > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > This is our only 'error' level shellcheck warning, so it seems > worth suppressing even though it's not wrong as written. > --- > configure | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/configure b/configure > index dec6f030346..a56c3d921be 100755 > --- a/configure > +++ b/configure > @@ -2343,7 +2343,7 @@ if test -n "$target_cc" && > # emulation. Linux and OpenBSD/amd64 use 'elf_i386'; FreeBSD uses the > _fbsd > # variant; OpenBSD/i386 uses the _obsd variant; and Windows uses i386pe. > for emu in elf_i386 elf_i386_fbsd elf_i386_obsd i386pe; do > - if "$target_ld" -verbose 2>&1 | grep -q > "^[[:space:]]*$emu[[:space:]]*$"; then > + if "$target_ld" -verbose 2>&1 | grep -q > "^[[:space:]]*${emu}[[:space:]]*$"; then > ld_i386_emulation="$emu" > break > fi