1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
# Test overflow errors point to the correct thing.
set test "overflow_error"
if {![installtest_p]} { untested $test; return }
set error_msg1 "ERROR: Array overflow, check size limit (3) near identifier 'overflow1' at $srcdir/$subdir/$test.stp"
set error_msg2 "ERROR: Array overflow, check size limit (5) near identifier 'overflow2' at $srcdir/$subdir/$test.stp"
set exit_warning "WARNING: Number of errors: 2, skipped probes: 0"
foreach runtime [get_runtime_list] {
set test_name $test
if {$runtime != ""} {
lappend test_name "($runtime)"
spawn stap -DMAXERRORS=1 $srcdir/$subdir/$test.stp
} else {
spawn stap -DMAXERRORS=1 $srcdir/$subdir/$test.stp
}
set pass 0
expect {
-timeout 60
$error_msg1 {incr pass; exp_continue}
$error_msg2 {incr pass; exp_continue}
$exit_warning {incr pass; exp_continue}
timeout {
kill -INT -[exp_pid] 2
fail "$test_name timed out"
}
eof {}
}
catch { close }; catch { wait }
if {$pass == 3} {
pass $test_name
} else {
fail "$test_name ($pass)"
}
}
|