freebsd-dev/bin/sh/tests/errors/bad-parm-exp7.0
Jilles Tjoelker d0b0ac182d sh: Don't create bad parse result when postponing a bad substitution error.
An invalid substitution like ${var@} does not cause a parse error but is
stored in the intermediate representation, to be written as part of the
error message. If there is a CTL* byte in the stored part, this confuses
some code such as the code to skip an unused alternative such as in
${var-alternative}.

To keep things simple, do not store CTL* bytes.

Found with afl-fuzz.

MFC after:	1 week
2015-08-23 20:44:53 +00:00

5 lines
51 B
Plaintext

# $FreeBSD$
v=1
eval ": $(printf '${v-${\372}}')"