Op 01-05-18 om 18:45 schreef Martijn Dekker:
It appears that it must have one function calling another, and that
other function having an assignment preceding a special builtin, for
'unset' to fail silently for the variable so assigned.
Actually it can be simplified further: the following also outputs "BUG:
still set". I fact, with this version, the bug manifests all the way
down to bash 2.05b!
POSIXLY_CORRECT=y
func() {
var=1
var=2 : # or 'var=2 set foo', or another special builtin
unset -v var # bug: fails silently
}
func
echo ${var+"BUG: still set"}
Thanks,
- M.