xref: /freebsd/bin/sh/tests/builtins/command8.0 (revision d0b2dbfa0ecf2bbc9709efc5e20baf8e4b44bbbf)
1*13de33a5SJulio MerinoIFS=,
2*13de33a5SJulio Merino
3*13de33a5SJulio MerinoSPECIAL="break,\
4*13de33a5SJulio Merino	:,\
5*13de33a5SJulio Merino	continue,\
6*13de33a5SJulio Merino	. /dev/null,\
7*13de33a5SJulio Merino	eval,\
8*13de33a5SJulio Merino	exec,\
9*13de33a5SJulio Merino	export -p,\
10*13de33a5SJulio Merino	readonly -p,\
11*13de33a5SJulio Merino	set,\
12*13de33a5SJulio Merino	shift 0,\
13*13de33a5SJulio Merino	times,\
14*13de33a5SJulio Merino	trap,\
15*13de33a5SJulio Merino	unset foo"
16*13de33a5SJulio Merino
17*13de33a5SJulio Merinoset -e
18*13de33a5SJulio Merino
19*13de33a5SJulio Merino# Check that special builtins can be executed via "command".
20*13de33a5SJulio Merino
21*13de33a5SJulio Merinoset -- ${SPECIAL}
22*13de33a5SJulio Merinofor cmd in "$@"
23*13de33a5SJulio Merinodo
24*13de33a5SJulio Merino	${SH} -c "v=:; while \$v; do v=false; command ${cmd}; done" >/dev/null
25*13de33a5SJulio Merinodone
26*13de33a5SJulio Merino
27*13de33a5SJulio Merinowhile :; do
28*13de33a5SJulio Merino	command break
29*13de33a5SJulio Merino	echo Error on line $LINENO
30*13de33a5SJulio Merinodone
31*13de33a5SJulio Merino
32*13de33a5SJulio Merinoset p q r
33*13de33a5SJulio Merinocommand shift 2
34*13de33a5SJulio Merinoif [ $# -ne 1 ]; then
35*13de33a5SJulio Merino	echo Error on line $LINENO
36*13de33a5SJulio Merinofi
37*13de33a5SJulio Merino
38*13de33a5SJulio Merino(
39*13de33a5SJulio Merino	command exec >/dev/null
40*13de33a5SJulio Merino	echo Error on line $LINENO
41*13de33a5SJulio Merino)
42*13de33a5SJulio Merino
43*13de33a5SJulio Merinoset +e
44*13de33a5SJulio Merino! command shift 2 2>/dev/null
45