aboutsummaryrefslogtreecommitdiff
path: root/bin/sh/tests/parser/line-cont11.0
blob: 22e49758dbc6d58fcff58c7d3066f9db36e9fff3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# $FreeBSD$

T=$(mktemp "${TMPDIR:-/tmp}/sh-test.XXXXXXXX") || exit
trap 'rm -f -- "$T"' 0
w='#A'
# A naive pgetc_linecont() would push back two characters here, which
# fails if a new buffer is read between the two characters.
c='${w#\#}'
c=$c$c$c$c
c=$c$c$c$c
c=$c$c$c$c
c=$c$c$c$c
c=$c$c$c$c
c=$c$c$c$c
printf 'v=%s\n' "$c" >"$T"
. "$T"
if [ "${#v}" != 4096 ]; then
	echo "Length is bad (${#v})"
	exit 3
fi
case $v in
*[!A]*) echo "Content is bad"; exit 3 ;;
esac