3f6e3bc032
double quotes, not seen by the inner backquotes. Previously, ksh(1) handled this correctly in non-posix mode but incorrectly in posix mode. The previous comments in src/bin/ksh/lex.c quote parts of some version of the POSIX specification. The version of POSIX being quoted is not identified, but the wording is very similar to that in SUSv3 <http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html>. It seems clear that the words "having escape characters removed" mean, in that context, that the backslash before the double quote in "...`...\"...`..." is removed as part of the handling of the outer double quotes, so that the backslash is not present when the inner backquotes are handled. The new code in this commit follows this interpretation. The previous code followed a different interpretation which is now believed to be incorrect. Discussed in tech-userlevel. Closes PR 26493. |
||
---|---|---|
.. | ||
Makefile | ||
alloc.c | ||
c_ksh.c | ||
c_sh.c | ||
c_test.c | ||
c_test.h | ||
c_ulimit.c | ||
conf-end.h | ||
config.h | ||
edit.c | ||
edit.h | ||
emacs-gen.sh | ||
emacs.c | ||
eval.c | ||
exec.c | ||
expand.h | ||
expr.c | ||
history.c | ||
io.c | ||
jobs.c | ||
ksh.Man | ||
ksh_dir.h | ||
ksh_limval.h | ||
ksh_stat.h | ||
ksh_time.h | ||
ksh_times.h | ||
ksh_wait.h | ||
lex.c | ||
lex.h | ||
mail.c | ||
main.c | ||
misc.c | ||
mkman | ||
path.c | ||
proto.h | ||
sh.h | ||
shf.c | ||
shf.h | ||
sigact.c | ||
sigact.h | ||
siglist.in | ||
siglist.sh | ||
syn.c | ||
table.c | ||
table.h | ||
trap.c | ||
tree.c | ||
tree.h | ||
tty.c | ||
tty.h | ||
var.c | ||
version.c | ||
vi.c |