If a test doesn't write anything at all to stdout, the current test
framework can't support that. Even if you put a blank output line:
# output:
the setup happily clobbers that with a default pass/fail string.
Tweak the parsing logic so we only set the output to pass/fail when
the test has no output marker.
+2015-03-29 Mike Frysinger <vapier@gentoo.org>
+
+ * lib/sim-defs.exp (run_sim_test): Declare seen_output as 0. When
+ the test has an output keyword, set it to 1. Set default output only
+ when seen_output is 0.
+
2015-03-29 Mike Frysinger <vapier@gentoo.org>
* configure: Regenerate.
set opts(xerror) "no"
set opts(xfail) ""
set opts(kfail) ""
+ set seen_output 0
if ![info exists global_as_options] {
set global_as_options ""
# Multiple "output" specifications concatenate, they don't override.
if { $opt_name == "output" } {
set opt_val "$opts(output)$opt_val"
+ set seen_output 1
}
# Similar with "xfail" and "kfail", but arguments are space-separated.
if { $opt_name == "xfail" || $opt_name == "kfail" } {
set testname $name
set sourcefile $file
- if { $opts(output) == "" } {
+ if { $seen_output == 0 } {
if { "$opts(xerror)" == "no" } {
set opts(output) "pass\n"
} else {