Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Possible bug with ${(A)foo=} and ${(AA)foo=}



On Jun 22,  8:13pm, Andrej Borsenkow wrote:
} Subject: Possible bug with ${(A)foo=} and ${(AA)foo=}
}
} While playing with something else I discovered, that it is impossible to
} create empty array with this form and it is impossible to create hash in
} this way without error message:

The first problem is what causes the second, though creating an empty AA
this way would create an empty hash table (normally the hash table is not
created until the AA has at least one value).

} I think, that if ${foo=} is valid at all, then we must distinguish between
} no value and empty value.

I've been looking at this ... we can distinguish between ${x=} and ${x=''},
but without jumping through a lot of hoops we can't distinguish whether $y
is set or unset in ${x=$y}.  Perhaps that doesn't matter ...

Anyway, I've just run out of time to work on this, so a patch will have to
wait unless someone else gets to it.

} It is the same as in command line (and, after all, we
} compute it using the same rules?)

I'm not sure what you mean by that, but we don't parse it with the same
code.

} [Background - ${(AA)foo=} seems currently to be the only way to create
} global hash from within Zsh function]

Hmm, yes, that does seem to be an issue.

-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com



Messages sorted by: Reverse Date, Date, Thread, Author