(This is very similar to a fixed issue[1] from 4.4-beta)

A quoted null string will fail to generate a field when it is adjacent
to a double-quoted expansion of $@ which itself expands to a null string:

   $ set --; printf '<%s>' foo ''"$@"
   <foo><>   # correct

   $ set -- ''; printf '<%s>' foo ''"$@"
   <foo>

Note that this happens also if the expansion-to-single-null-string is due to
pattern substitution:

   $ set -- X; printf '<%s>' foo ''"${@/*}"
   <foo>

But not so with substring removal:

   $ set -- X; printf '<%s>' foo ''"${@#X}"
   <foo><>

  [1] https://lists.gnu.org/archive/html/bug-bash/2016-05/msg00059.html

Reply via email to