@@ -46,7 +46,7 @@ impl EarlyProps {
4646
4747 pub fn from_reader<R: Read>(config: &Config, testfile: &Path, rdr: R) -> Self {
4848 let mut props = EarlyProps::default();
49- iter_header(testfile, rdr, &mut |_, ln, _| {
49+ iter_header(config.mode, testfile, rdr, &mut |_, ln, _| {
5050 config.push_name_value_directive(ln, directives::AUX_BUILD, &mut props.aux, |r| {
5151 r.trim().to_string()
5252 });
@@ -306,7 +306,7 @@ impl TestProps {
306306 if !testfile.is_dir() {
307307 let file = File::open(testfile).unwrap();
308308
309- iter_header(testfile, file, &mut |revision, ln, _| {
309+ iter_header(self.config.mode, testfile, file, &mut |revision, ln, _| {
310310 if revision.is_some() && revision != cfg {
311311 return;
312312 }
@@ -628,11 +628,17 @@ pub fn line_directive<'line>(
628628 }
629629}
630630
631- fn iter_header<R: Read>(testfile: &Path, rdr: R, it: &mut dyn FnMut(Option<&str>, &str, usize)) {
632- iter_header_extra(testfile, rdr, &[], it)
631+ fn iter_header<R: Read>(
632+ mode: Mode,
633+ testfile: &Path,
634+ rdr: R,
635+ it: &mut dyn FnMut(Option<&str>, &str, usize),
636+ ) {
637+ iter_header_extra(mode, testfile, rdr, &[], it)
633638}
634639
635640fn iter_header_extra(
641+ mode: Mode,
636642 testfile: &Path,
637643 rdr: impl Read,
638644 extra_directives: &[&str],
@@ -648,7 +654,11 @@ fn iter_header_extra(
648654 it(None, directive, 0);
649655 }
650656
651- let comment = if testfile.extension().is_some_and(|e| e == "rs") { "//" } else { "#" };
657+ let comment = if testfile.extension().is_some_and(|e| e == "rs") {
658+ if mode == Mode::Ui { "//@" } else { "//" }
659+ } else {
660+ "#"
661+ };
652662
653663 let mut rdr = BufReader::new(rdr);
654664 let mut ln = String::new();
@@ -946,12 +956,17 @@ pub fn make_test_description<R: Read>(
946956 _ => &[],
947957 };
948958
949- iter_header_extra(path, src, extra_directives, &mut |revision, ln, line_number| {
950- if revision.is_some() && revision != cfg {
951- return;
952- }
959+ iter_header_extra(
960+ config.mode,
961+ path,
962+ src,
963+ extra_directives,
964+ &mut |revision, ln, line_number| {
965+ if revision.is_some() && revision != cfg {
966+ return;
967+ }
953968
954- macro_rules! decision {
969+ macro_rules! decision {
955970 ($e:expr) => {
956971 match $e {
957972 IgnoreDecision::Ignore { reason } => {
@@ -971,24 +986,25 @@ pub fn make_test_description<R: Read>(
971986 };
972987 }
973988
974- decision!(cfg::handle_ignore(config, ln));
975- decision!(cfg::handle_only(config, ln));
976- decision!(needs::handle_needs(&cache.needs, config, ln));
977- decision!(ignore_llvm(config, ln));
978- decision!(ignore_cdb(config, ln));
979- decision!(ignore_gdb(config, ln));
980- decision!(ignore_lldb(config, ln));
981-
982- if config.target == "wasm32-unknown-unknown" {
983- if config.parse_name_directive(ln, directives::CHECK_RUN_RESULTS) {
984- decision!(IgnoreDecision::Ignore {
985- reason: "ignored when checking the run results on WASM".into(),
986- });
989+ decision!(cfg::handle_ignore(config, ln));
990+ decision!(cfg::handle_only(config, ln));
991+ decision!(needs::handle_needs(&cache.needs, config, ln));
992+ decision!(ignore_llvm(config, ln));
993+ decision!(ignore_cdb(config, ln));
994+ decision!(ignore_gdb(config, ln));
995+ decision!(ignore_lldb(config, ln));
996+
997+ if config.target == "wasm32-unknown-unknown" {
998+ if config.parse_name_directive(ln, directives::CHECK_RUN_RESULTS) {
999+ decision!(IgnoreDecision::Ignore {
1000+ reason: "ignored when checking the run results on WASM".into(),
1001+ });
1002+ }
9871003 }
988- }
9891004
990- should_fail |= config.parse_name_directive(ln, "should-fail");
991- });
1005+ should_fail |= config.parse_name_directive(ln, "should-fail");
1006+ },
1007+ );
9921008
9931009 // The `should-fail` annotation doesn't apply to pretty tests,
9941010 // since we run the pretty printer across all tests by default.
0 commit comments