]>
Commit | Line | Data |
---|---|---|
b5b8b0ac AO |
1 | # This harness is for tests that should be run at all optimisation levels. |
2 | ||
3 | load_lib gcc-dg.exp | |
7555009a | 4 | load_lib gcc-gdb-test.exp |
b5b8b0ac | 5 | |
dabbcb14 | 6 | # Disable on darwin until radr://7264615 is resolved. |
5c30094f | 7 | if { [istarget *-*-darwin*] } { |
dabbcb14 JH |
8 | return |
9 | } | |
10 | ||
4d17b2f6 JJ |
11 | proc check_guality {args} { |
12 | set result [eval check_compile guality_check executable $args "-g -O0"] | |
13 | set lines [lindex $result 0] | |
14 | set output [lindex $result 1] | |
15 | set ret 0 | |
16 | if {[string match "" $lines]} { | |
17 | set execout [gcc_load "./$output"] | |
18 | set ret [string match "*1 PASS, 0 FAIL, 0 UNRESOLVED*" $execout] | |
19 | } | |
20 | remote_file build delete $output | |
21 | return $ret | |
22 | } | |
23 | ||
b5b8b0ac | 24 | dg-init |
4d17b2f6 | 25 | |
1dd61ee5 JJ |
26 | global GDB |
27 | if ![info exists ::env(GUALITY_GDB_NAME)] { | |
28 | if [info exists GDB] { | |
29 | set guality_gdb_name "$GDB" | |
30 | } else { | |
31 | set guality_gdb_name "[transform gdb]" | |
32 | } | |
33 | setenv GUALITY_GDB_NAME "$guality_gdb_name" | |
34 | } | |
35 | ||
4d17b2f6 JJ |
36 | if {[check_guality " |
37 | #include \"$srcdir/$subdir/guality.h\" | |
38 | volatile long int varl = 6; | |
39 | int main (int argc, char *argv\[\]) | |
40 | { | |
41 | GUALCHKVAL (varl); | |
42 | return 0; | |
43 | } | |
44 | "]} { | |
45 | gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.c]] "" | |
8b26599c | 46 | gcc-dg-runtest [lsort [glob $srcdir/c-c++-common/guality/*.c]] "-Wc++-compat" |
4d17b2f6 | 47 | } |
1dd61ee5 JJ |
48 | |
49 | if [info exists guality_gdb_name] { | |
50 | unsetenv GUALITY_GDB_NAME | |
51 | } | |
52 | ||
b5b8b0ac | 53 | dg-finish |