1IFS=,
2
3SPECIAL="break,\
4	:,\
5	continue,\
6	. /dev/null,\
7	eval,\
8	exec,\
9	export -p,\
10	readonly -p,\
11	set,\
12	shift,\
13	times,\
14	trap,\
15	unset foo"
16
17UTILS="alias,\
18	bg,\
19	bind,\
20	cd,\
21	command echo,\
22	echo,\
23	false,\
24	fc -l,\
25	fg,\
26	getopts a -a,\
27	hash,\
28	jobs,\
29	printf a,\
30	pwd,\
31	read var < /dev/null,\
32	test,\
33	true,\
34	type ls,\
35	ulimit,\
36	umask,\
37	unalias -a,\
38	wait"
39
40# When used with 'command', neither special built-in utilities nor other
41# utilities must abort on a redirection error.
42
43set -- ${SPECIAL}
44for cmd in "$@"
45do
46	${SH} -c "command ${cmd} > /; exit 0" 2>/dev/null || exit 1
47done
48
49set -- ${UTILS}
50for cmd in "$@"
51do
52	${SH} -c "command ${cmd} > /; exit 0" 2>/dev/null || exit 1
53done
54