2014-07-29 15:04:27 +0100, Stephane Chazelas:
> With @(#)MIRBSD KSH R50 2014/06/29 on Debian:
> 
> $ IFS=:
> $ set ${0+:foo:bar}
> $ echo $#
> 2
> $ echo "<$1>"
> <foo>
[...]

Note that it's only about the ${var[:][+-]literal} syntax. These are
OK:

~$ mksh -c 'IFS=:; a=":a:b"; set -- $a; echo $#'
3
~$ mksh -c 'IFS=:; a=":a:b"; set -- ${-+$a}; echo $#'
3
~$ mksh -c 'IFS=:; a="a::b"; set -- ${-+$a}; echo $#'
3

~$ mksh -c 'IFS=:; set -- ${-+:a:b}; echo $#'
2

so it looks like a simple bug, not a design issue.

-- 
Stephane

Reply via email to