diff options
Diffstat (limited to 'testsuite/systemtap.base')
-rw-r--r-- | testsuite/systemtap.base/error_fn.exp | 7 | ||||
-rw-r--r-- | testsuite/systemtap.base/error_fn.stp | 17 |
2 files changed, 24 insertions, 0 deletions
diff --git a/testsuite/systemtap.base/error_fn.exp b/testsuite/systemtap.base/error_fn.exp new file mode 100644 index 00000000..c0de850f --- /dev/null +++ b/testsuite/systemtap.base/error_fn.exp @@ -0,0 +1,7 @@ +# check that errors in nested functions are not lost on return +# bugzilla 6529 + +set test "error_fn" + +stap_run $srcdir/$subdir/$test.stp no_load ".*synthetic error.*" + diff --git a/testsuite/systemtap.base/error_fn.stp b/testsuite/systemtap.base/error_fn.stp new file mode 100644 index 00000000..2e68026f --- /dev/null +++ b/testsuite/systemtap.base/error_fn.stp @@ -0,0 +1,17 @@ +probe begin { + println("systemtap starting probe") + println("systemtap ending probe") +} + +function generate_error:long() { + error("synthetic error") + return 1 +} + +function compute:long() { + return generate_error() +} + +probe end { + compute() +} |