aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/rust/compile/nr2
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/rust/compile/nr2')
-rw-r--r--gcc/testsuite/rust/compile/nr2/compile.exp38
-rw-r--r--gcc/testsuite/rust/compile/nr2/exclude149
2 files changed, 30 insertions, 157 deletions
diff --git a/gcc/testsuite/rust/compile/nr2/compile.exp b/gcc/testsuite/rust/compile/nr2/compile.exp
index f2724f6..4d91dd0 100644
--- a/gcc/testsuite/rust/compile/nr2/compile.exp
+++ b/gcc/testsuite/rust/compile/nr2/compile.exp
@@ -14,9 +14,7 @@
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
-# Compile tests, no torture testing, for name resolution 2.0
-#
-# These tests raise errors in the front end; torture testing doesn't apply.
+# Run compile tests with name resolution 2.0 enabled
# Load support procs.
load_lib rust-dg.exp
@@ -44,23 +42,27 @@ namespace eval rust-nr2-ns {
# Run tests in directories
# Manually specifying these, in case some other test file
# does something weird
- set test_dirs {{} {macros builtin} {macros mbe} {macros proc}}
+ set test_dirs {{} {macros builtin} {macros mbe} {macros proc} {torture}}
set tests_expect_ok ""
set tests_expect_err ""
+ set compile_dir [list {*}[file split $srcdir] {*}[file split $subdir]]
+ set compile_dir [lreplace $compile_dir end end]
+
foreach test_dir $test_dirs {
- set directory [list {*}[file split $srcdir] {*}[file split $subdir]]
- set directory [lreplace $directory end end]
- set directory [list {*}$directory {*}$test_dir]
- foreach test [lsort [glob -nocomplain -tails -directory [file join {*}$directory] *.rs]] {
+ foreach test [lsort [glob -nocomplain -tails -directory [file join {*}$compile_dir {*}$test_dir] *.rs]] {
# use '/' as the path seperator for entries in the exclude file
set test_lbl [join [list {*}$test_dir $test] "/"]
set idx [lsearch -exact -sorted $exclude $test_lbl]
if {$idx == -1} {
- lappend tests_expect_ok [file join {*}$directory $test]
+ if {[runtest_file_p $runtests [file join {*}$compile_dir {*}$test_dir $test]]} {
+ lappend tests_expect_ok [list {*}$test_dir $test]
+ }
} else {
- lappend tests_expect_err [file join {*}$directory $test]
+ if {[runtest_file_p $runtests [file join {*}$compile_dir {*}$test_dir $test]]} {
+ lappend tests_expect_err [list {*}$test_dir $test]
+ }
set exclude [lreplace $exclude $idx $idx]
}
}
@@ -85,10 +87,10 @@ namespace eval rust-nr2-ns {
variable record_test_out
switch $type {
FAIL {
- lappend record_test_out "$type: $msg"
+ lappend record_test_out [list $type $msg]
}
XPASS {
- lappend record_test_out "$type: $msg"
+ lappend record_test_out [list $type $msg]
}
}
}
@@ -111,23 +113,23 @@ namespace eval rust-nr2-ns {
# check for unexpected failures
foreach test $tests_expect_ok {
- set fails [try_test $test]
+ set fails [try_test [file join {*}$compile_dir {*}$test]]
if {[llength $fails] != 0} {
foreach ent $fails {
- record_test FAIL "$test: nr2 failure: $ent"
+ record_test [lindex $ent 0] "on nr2: [lindex $ent 1]"
}
} else {
- record_test PASS "$test: nr2 success"
+ record_test PASS "[file join {*}$test] on nr2"
}
}
#check for unexpected successes
foreach test $tests_expect_err {
- set fails [try_test $test]
+ set fails [try_test [file join {*}$compile_dir {*}$test]]
if {[llength $fails] == 0} {
- record_test XPASS "$test: nr2 unexpectedly passed"
+ record_test XPASS "[file join {*}$test] on nr2"
} else {
- record_test XFAIL "$test: nr2 was rightfully excluded"
+ record_test XFAIL "[file join {*}$test] on nr2 was rightfully excluded"
}
}
}
diff --git a/gcc/testsuite/rust/compile/nr2/exclude b/gcc/testsuite/rust/compile/nr2/exclude
index 60322f3..4772517 100644
--- a/gcc/testsuite/rust/compile/nr2/exclude
+++ b/gcc/testsuite/rust/compile/nr2/exclude
@@ -1,154 +1,25 @@
-bounds1.rs
-break-rust2.rs
-break-rust3.rs
canonical_paths1.rs
cfg1.rs
-cfg3.rs
-cfg4.rs
-cfg5.rs
-closure_no_type_anno.rs
-complex-path1.rs
-const-issue1440.rs
-const_generics_3.rs
-const_generics_4.rs
-const_generics_5.rs
-const_generics_7.rs
-derive_empty.rs
-derive_macro1.rs
-expected_type_args2.rs
-feature_rust_attri0.rs
-format_args_basic_expansion.rs
-generic-default1.rs
-generics1.rs
-generics10.rs
-generics11.rs
-generics3.rs
-generics4.rs
-generics5.rs
-generics6.rs
generics9.rs
-if_let_expr.rs
-issue-1130.rs
-issue-1173.rs
-issue-1272.rs
-issue-1447.rs
-issue-1483.rs
-issue-1725-1.rs
-issue-1725-2.rs
-issue-1786.rs
-issue-1893.rs
-issue-1901.rs
-issue-1981.rs
-issue-2036.rs
-issue-2043.rs
-issue-2136-2.rs
-issue-2142.rs
-issue-2238.rs
-issue-2330.rs
-issue-2479.rs
-issue-2723-1.rs
-issue-2723-2.rs
-issue-2772-2.rs
-issue-2775.rs
-issue-2782.rs
-issue-2812.rs
-issue-850.rs
-issue-852.rs
-issue-855.rs
-iterators1.rs
+issue-3315-2.rs
lookup_err1.rs
-macros/mbe/macro13.rs
-macros/mbe/macro15.rs
-macros/mbe/macro23.rs
-macros/mbe/macro40.rs
-macros/mbe/macro43.rs
-macros/mbe/macro44.rs
-macros/mbe/macro50.rs
-macros/mbe/macro54.rs
-macros/mbe/macro6.rs
-macros/mbe/macro_rules_macro_rules.rs
-macros/mbe/macro_use1.rs
-match-never-ltype.rs
-match-never-rtype.rs
-match1.rs
-match2.rs
-match3.rs
-match4.rs
-match5.rs
-match9.rs
-method2.rs
multiple_bindings1.rs
multiple_bindings2.rs
-name_resolution2.rs
-name_resolution4.rs
-nested_macro_use1.rs
-nested_macro_use2.rs
-nested_macro_use3.rs
-not_find_value_in_scope.rs
-parse_associated_type_as_generic_arg.rs
-parse_associated_type_as_generic_arg2.rs
-parse_associated_type_as_generic_arg3.rs
-parse_complex_generic_application.rs
-parse_complex_generic_application2.rs
-path_as_generic_arg.rs
-pattern-struct.rs
-privacy4.rs
privacy5.rs
privacy8.rs
-macros/proc/attribute_non_function.rs
-macros/proc/derive_non_function.rs
-macros/proc/non_function.rs
pub_restricted_1.rs
pub_restricted_2.rs
pub_restricted_3.rs
-redef_error2.rs
-redef_error4.rs
-redef_error5.rs
-self-path1.rs
-self-path2.rs
-sizeof-stray-infer-var-bug.rs
-struct-expr-parse.rs
-traits3.rs
-traits6.rs
-traits7.rs
-type-bindings1.rs
-unconstrained_type_param.rs
-undeclared_label.rs
use_1.rs
-use_2.rs
-v0-mangle1.rs
-v0-mangle2.rs
-while_break_expr.rs
-exhaustiveness1.rs
-exhaustiveness2.rs
-exhaustiveness3.rs
-issue-2324-1.rs
-issue-2324-2.rs
-issue-3046.rs
-issue-3139-2.rs
-issue-3032-1.rs
-issue-3032-2.rs
-# https://github.com/Rust-GCC/gccrs/issues/3189
-if_let_expr_simple.rs
-iflet.rs
-issue-3033.rs
-issue-3009.rs
-issue-2953-2.rs
-issue-1773.rs
issue-2905-2.rs
-issue-2907.rs
-issue-2423.rs
-issue-266.rs
-additional-trait-bounds2.rs
-auto_traits3.rs
-issue-3140.rs
-cmp1.rs
-derive_clone_enum1.rs
-derive_clone_enum2.rs
derive_clone_enum3.rs
-derive_macro4.rs
-derive_macro6.rs
-issue-2987.rs
-issue-3139-1.rs
-issue-3139-3.rs
+derive-debug1.rs
+derive-default1.rs
+derive-eq-invalid.rs
+derive-hash1.rs
+torture/alt_patterns1.rs
+torture/name_resolve1.rs
+issue-3568.rs
+issue-3663.rs
+issue-3671.rs
# please don't delete the trailing newline