54 lines
1.2 KiB
Plaintext
54 lines
1.2 KiB
Plaintext
# This harness is for tests that should be run at all optimisation levels.
|
|
|
|
load_lib g++-dg.exp
|
|
load_lib gcc-gdb-test.exp
|
|
|
|
# Disable on darwin until radr://7264615 is resolved.
|
|
if { [istarget *-*-darwin*] } {
|
|
return
|
|
}
|
|
|
|
proc check_guality {args} {
|
|
set result [eval check_compile guality_check executable $args "-g -O0"]
|
|
set lines [lindex $result 0]
|
|
set output [lindex $result 1]
|
|
set ret 0
|
|
if {[string match "" $lines]} {
|
|
set execout [g++_load "./$output"]
|
|
set ret [string match "*1 PASS, 0 FAIL, 0 UNRESOLVED*" $execout]
|
|
}
|
|
remote_file build delete $output
|
|
return $ret
|
|
}
|
|
|
|
dg-init
|
|
|
|
global GDB
|
|
if ![info exists ::env(GUALITY_GDB_NAME)] {
|
|
if [info exists GDB] {
|
|
set guality_gdb_name "$GDB"
|
|
} else {
|
|
set guality_gdb_name "[transform gdb]"
|
|
}
|
|
setenv GUALITY_GDB_NAME "$guality_gdb_name"
|
|
}
|
|
|
|
if {[check_guality "
|
|
#include \"$srcdir/$subdir/guality.h\"
|
|
volatile long int varl = 6;
|
|
int main (int argc, char *argv\[\])
|
|
{
|
|
GUALCHKVAL (varl);
|
|
return 0;
|
|
}
|
|
"]} {
|
|
gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.C]] ""
|
|
gcc-dg-runtest [lsort [glob $srcdir/c-c++-common/guality/*.c]] ""
|
|
}
|
|
|
|
if [info exists guality_gdb_name] {
|
|
unsetenv GUALITY_GDB_NAME
|
|
}
|
|
|
|
dg-finish
|