> On Mar 30, 2023, at 7:13 AM, Felipe Contreras wrote: > However, this is what POSIX says: > > 3.b. Each occurrence in the input of an IFS character that is not > IFS white space, along with any adjacent IFS white space, shall > delimit a field, as described previously. > > We ignore all the white space stuff (since we are not using white > spaces), and thus: > > Each occurrence in the input of an IFS character shall delimit a field. > > In zsh each occurrence of a comma does delimit a field (4 commas, 5 > fields), which to me is what POSIX says should happen. > > So in this particular case it seems zsh is complying with POSIX (even > in zsh mode), and all other shells are not. Before the excerpt you quoted, XCU 2.6.5 says: “The shell shall treat each character of the IFS as a delimiter and use the delimiters as field terminators to split the results of parameter expansion, command substitution, and arithmetic expansion into fields.” The bash/dash/ksh behavior is not unreasonable if the phrase “field terminators” is interpreted strictly. In any case, I believe the standard intends to describe the ksh behavior: https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xcu_chap02.html#tag_23_02_06_05 -- vq Sent from my iPhone