Skip to content

Commit 7d7b43c

Browse files
authored
Rollup merge of #131346 - jieyouxu:prune-invalid-directives, r=Zalathar
Restrict `ignore-mode-*` directives This is only used by coverage test suites where the same sources get run under different coverage modes. Restrict `ignore-mode-<coverage_mode>` to only coverage modes.
2 parents df61a0b + 64efbe2 commit 7d7b43c

File tree

3 files changed

+3
-21
lines changed

3 files changed

+3
-21
lines changed

src/tools/compiletest/src/command-list.rs

-15
Original file line numberDiff line numberDiff line change
@@ -64,23 +64,8 @@ const KNOWN_DIRECTIVE_NAMES: &[&str] = &[
6464
"ignore-loongarch64",
6565
"ignore-macabi",
6666
"ignore-macos",
67-
"ignore-mode-assembly",
68-
"ignore-mode-codegen",
69-
"ignore-mode-codegen-units",
7067
"ignore-mode-coverage-map",
7168
"ignore-mode-coverage-run",
72-
"ignore-mode-crashes",
73-
"ignore-mode-debuginfo",
74-
"ignore-mode-incremental",
75-
"ignore-mode-js-doc-test",
76-
"ignore-mode-mir-opt",
77-
"ignore-mode-pretty",
78-
"ignore-mode-run-make",
79-
"ignore-mode-run-pass-valgrind",
80-
"ignore-mode-rustdoc",
81-
"ignore-mode-rustdoc-json",
82-
"ignore-mode-ui",
83-
"ignore-mode-ui-fulldeps",
8469
"ignore-msp430",
8570
"ignore-msvc",
8671
"ignore-musl",

src/tools/compiletest/src/header/cfg.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use std::collections::HashSet;
22

3-
use crate::common::{CompareMode, Config, Debugger, Mode};
3+
use crate::common::{CompareMode, Config, Debugger};
44
use crate::header::IgnoreDecision;
55

66
const EXTRA_ARCHS: &[&str] = &["spirv"];
@@ -222,7 +222,7 @@ pub(super) fn parse_cfg_name_directive<'a>(
222222
name: format!("mode-{}", config.mode.to_str()),
223223
allowed_names: ContainsPrefixed {
224224
prefix: "mode-",
225-
inner: Mode::STR_VARIANTS,
225+
inner: ["coverage-run", "coverage-map"],
226226
},
227227
message: "when the test mode is {name}",
228228
}

src/tools/compiletest/src/header/tests.rs

+1-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use std::io::Read;
22
use std::path::Path;
3-
use std::str::FromStr;
43

54
use super::iter_header;
65
use crate::common::{Config, Debugger, Mode};
@@ -574,14 +573,12 @@ fn families() {
574573

575574
#[test]
576575
fn ignore_mode() {
577-
for &mode in Mode::STR_VARIANTS {
576+
for mode in ["coverage-map", "coverage-run"] {
578577
// Indicate profiler support so that "coverage-run" tests aren't skipped.
579578
let config: Config = cfg().mode(mode).profiler_support(true).build();
580579
let other = if mode == "coverage-run" { "coverage-map" } else { "coverage-run" };
581580

582581
assert_ne!(mode, other);
583-
assert_eq!(config.mode, Mode::from_str(mode).unwrap());
584-
assert_ne!(config.mode, Mode::from_str(other).unwrap());
585582

586583
assert!(check_ignore(&config, &format!("//@ ignore-mode-{mode}")));
587584
assert!(!check_ignore(&config, &format!("//@ ignore-mode-{other}")));

0 commit comments

Comments
 (0)