Subject: Tests g++.old-deja/g++.mike/p3708*.C crash dejagnu on cygwin
From: "Billinghurst, David (CRTS)" <[email-masked]>
To: "[email-masked]'" <[email-masked]>, "'gcc-bugs@gcc,gnu.org'" <gcc-bugs@gcc>, [email-masked]
Cc: 'Christian Jönsson'<[email-masked]>
Date: Wed, 14 Mar 2001 13:27:30 -0000

Under cygwin, the gcc-3.0 testsuite crashes on tests
g++.old-deja/g++.mike/p3708*.C.  As a work around I have been deleting these
three tests. I have looked into this, but now I don't understand how they
can run on any platform.  

The code of interest is the last few lines of procedure old-dejagnu in
old-dejagnu.exp (below)

    # run the executable image
    if $runflag then {
	set executable $output
	if ![file exists $executable] then {
	    # Since we couldn't run it, we consider it an expected failure,
	    # so that test cases don't appear to disappear, and reappear.
	    setup_xfail "*-*-*"
	    fail "$name $pattern Execution test"
	} else {
	    set status -1
	    set result [eval [format "%s_load %s" $tool $executable]]
	    set status [lindex $result 0];
	    set output [lindex $result 1];
	    if { $status == "pass" } {
		remote_file build delete $executable;
	    }
	    if { $execbug_flag || $excessbug_flag } then {
		setup_xfail "*-*-*"
	    }
	    $status "$name $pattern Execution test"
	}
    }

    verbose "deleting $output"
    remote_file build delete $output
    return 0

Now the tests that fail generate output, so after the executable is run we
have:
 - status = pass
 - output = "The output generated by the executable under test"

We then procede to delete $executable, which seems reasonable, and $output,
which doesn't.  At this point dejagnu bails out.  Why doesn't this fail on
other platforms?

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple