diff options
author | Anas Nashif <anas.nashif@intel.com> | 2012-11-05 11:10:13 -0800 |
---|---|---|
committer | Anas Nashif <anas.nashif@intel.com> | 2012-11-05 11:10:13 -0800 |
commit | 7be93f2d05131d061bd4790ae33c8d50f50010d7 (patch) | |
tree | 72736c1606f803a92ffa07c9808ffea2521d009e /tests/test-c-stack2.sh | |
download | m4-7be93f2d05131d061bd4790ae33c8d50f50010d7.tar.gz m4-7be93f2d05131d061bd4790ae33c8d50f50010d7.tar.bz2 m4-7be93f2d05131d061bd4790ae33c8d50f50010d7.zip |
Imported Upstream version 1.4.16upstream/1.4.16
Diffstat (limited to 'tests/test-c-stack2.sh')
-rwxr-xr-x | tests/test-c-stack2.sh | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/test-c-stack2.sh b/tests/test-c-stack2.sh new file mode 100755 index 0000000..a80373d --- /dev/null +++ b/tests/test-c-stack2.sh @@ -0,0 +1,36 @@ +#!/bin/sh + +tmpfiles="" +trap 'rm -fr $tmpfiles' 1 2 3 15 + +tmpfiles="t-c-stack2.tmp" + +# Sanitize exit status within a subshell, since some shells fail to +# redirect stderr on their message about death due to signal. +(./test-c-stack${EXEEXT} 1; exit $?) 2> t-c-stack2.tmp + +case $? in + 77) if grep 'stack overflow' t-c-stack2.tmp >/dev/null ; then + if test -z "$LIBSIGSEGV"; then + echo 'cannot tell stack overflow from crash; consider installing libsigsegv' >&2 + exit 77 + else + echo 'cannot tell stack overflow from crash, in spite of libsigsegv' >&2 + exit 1 + fi + else + cat t-c-stack2.tmp >&2 + exit 77 + fi + ;; + 0) (exit 1); exit 1 ;; +esac +if grep 'program error' t-c-stack2.tmp >/dev/null ; then + : +else + (exit 1); exit 1 +fi + +rm -fr $tmpfiles + +exit 0 |