Currently, the result of ~ and ${unset-~} are not subject to field splitting or pathname expansion, but that of ${${unset-~}} is. Can we prevent expansion for the latter, too?
In the current implementation, the outer expansion receives the result of the inner expansion after it has performed quote removal.
To honor the character origin of the inner expansion, however, the outer expansion needs to receive the result without quote removal. This will affect the character count in the outer expansion; for example, should ${${unset-"~"}[1]} expand to a double-quote or tilde?
(Issue migrated from https://osdn.net/projects/yash/ticket/40707)
Currently, the result of
~
and${unset-~}
are not subject to field splitting or pathname expansion, but that of${${unset-~}}
is. Can we prevent expansion for the latter, too?In the current implementation, the outer expansion receives the result of the inner expansion after it has performed quote removal. To honor the character origin of the inner expansion, however, the outer expansion needs to receive the result without quote removal. This will affect the character count in the outer expansion; for example, should
${${unset-"~"}[1]}
expand to a double-quote or tilde?