xref: /freebsd/bin/sh/tests/execution/redir7.0 (revision b9f654b163bce26de79705e77b872427c9f2afa1)
1# $FreeBSD$
2
3failures=0
4
5check() {
6	if [ "$2" != "$3" ]; then
7		echo "Failure at $1" >&2
8		failures=$((failures + 1))
9	fi
10}
11
12check $LINENO "$(trap "echo bye" EXIT; f() { :; }; f >/dev/null)" bye
13check $LINENO "$(trap "echo bye" EXIT; f() { :; }; { f; } >/dev/null)" bye
14check $LINENO "$(trap "echo bye" EXIT; f() { :; }; (f) >/dev/null)" bye
15check $LINENO "$(trap "echo bye" EXIT; f() { :; }; (f >/dev/null))" bye
16check $LINENO "$(${SH} -c 'trap "echo bye" EXIT; f() { :; }; f >/dev/null')" bye
17check $LINENO "$(${SH} -c 'trap "echo bye" EXIT; f() { :; }; { f; } >/dev/null')" bye
18check $LINENO "$(${SH} -c 'trap "echo bye" EXIT; f() { :; }; (f) >/dev/null')" bye
19check $LINENO "$(${SH} -c 'trap "echo bye" EXIT; f() { :; }; (f >/dev/null)')" bye
20
21exit $((failures > 0))
22