freebsd-dev/tools/regression/bin/sh
Jilles Tjoelker 6c38071288 sh: Only accept a '}' inside ${v+-=?...} if double-quote state matches.
If double-quote state does not match, treat the '}' literally.

This ensures double-quote state remains the same before and after a
${v+-=?...} which helps with expand.c.

It makes things like
  ${foo+"\${bar}"}
which I have seen in the wild work as expected.

Exp-run done by:	pav (with some other sh(1) changes)
2010-10-28 22:34:49 +00:00
..
builtins Embellish this testcase a little bit to be more clear what the output is 2010-10-14 23:28:31 +00:00
errors Allow one to regression test 'sh' changes without having to install 2010-10-12 18:20:38 +00:00
execution sh: Do not allow overriding a special builtin with a function. 2010-10-24 22:03:21 +00:00
expansion sh: Only accept a '}' inside ${v+-=?...} if double-quote state matches. 2010-10-28 22:34:49 +00:00
parameters Allow one to regression test 'sh' changes without having to install 2010-10-12 18:20:38 +00:00
parser sh: Make sure defined functions can actually be called. 2010-10-24 20:45:13 +00:00
set-e sh: Get rid of unnecessary non-standard empty lists. 2010-08-16 17:18:08 +00:00
Makefile Allow one to regression test 'sh' changes without having to install 2010-10-12 18:20:38 +00:00
regress.sh Allow one to regression test 'sh' changes without having to install 2010-10-12 18:20:38 +00:00
regress.t sh: Allow running 'prove' from tools/regression/bin/sh again 2010-10-15 20:01:35 +00:00