Hello, I think I found a bug in bash-4.3.
An example should be self-explanatory : bash-4.2 : $ arr=( idx1 idx2 ) $ i=arr[1] $ echo ${!i} idx2 $ echo ${!i/x/X} idX2 bash-4.3 : $ arr=( idx1 idx2 ) $ i=arr[1] $ echo ${!i} idx2 $ echo ${!i/x/X} idX1If we use pattern substitution (or removing prefix/suffix pattern, ...) with an expansion of an array name which contain a non zero index, it will still use the index 0.
Thank you, Corentin Peuvrel