$ f() { for i; do echo "|$i|"; done; } $ x=x $ e=
$ f ${x:+""} || ^^^^^^^^^^^ correct $ f ${x:+ ""} ^^^^^^^^^^^ prints nothing, bug? $ ${x:+"" } ^^^^^^^^^^^ prints nothing, bug? $ f ${x:+"$e"} || ^^^^^^^^^^^ correct $ f ${x:+ "$e"} ^^^^^^^^^^^ prints nothing, bug? $ f ${x:+"$e""$e"""} || ^^^^^^^^^^^ correct $ f ${x:+"$e""$e"""} ^^^^^^^^^^^ prints nothing, bug? Similarly with: f ${x:+"`echo`" } etc...