This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Tests g++.old-deja/g++.mike/p3708*.C crash dejagnu on cygwin


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]