setup: foo() { printf "%q\n" "$IFS" >&2; printf "%s\n" "$*" >&2; } IFS=: read <<< "$(foo bar baz qux)"
bash 4.2 output: : bar:baz:qux bash 4.3 output: : bar baz qux IFS is still set within the function call, but isn't being used in the expansion of "$*" -emg