bless batch
diff --git a/src/tools/tidy/src/issues.txt b/src/tools/tidy/src/issues.txt
index b63f4d4..db6008d 100644
--- a/src/tools/tidy/src/issues.txt
+++ b/src/tools/tidy/src/issues.txt
@@ -2442,7 +2442,6 @@
 ui/span/issue-43927-non-ADT-derive.rs
 ui/span/issue-71363.rs
 ui/span/issue-81800.rs
-ui/span/issue28498-reject-ex1.rs
 ui/span/issue28498-reject-lifetime-param.rs
 ui/span/issue28498-reject-passed-to-fn.rs
 ui/span/issue28498-reject-trait-bound.rs
diff --git a/tests/ui/associated-types/nested-fnonce-output-projection.rs b/tests/ui/associated-types/nested-fnonce-output-projection.rs
index 31c7057..aa03ca1 100644
--- a/tests/ui/associated-types/nested-fnonce-output-projection.rs
+++ b/tests/ui/associated-types/nested-fnonce-output-projection.rs
@@ -1,4 +1,6 @@
+//! Regression test for <https://github.com/rust-lang/rust/issues/28550>.
 //@ run-pass
+
 struct A<F: FnOnce()->T,T>(F::Output);
 struct B<F: FnOnce()->T,T>(A<F,T>);
 
diff --git a/tests/ui/associated-types/projection-as-type-alias.rs b/tests/ui/associated-types/projection-as-type-alias.rs
index b5d7385..b3e01be 100644
--- a/tests/ui/associated-types/projection-as-type-alias.rs
+++ b/tests/ui/associated-types/projection-as-type-alias.rs
@@ -1,4 +1,7 @@
+//! Regression test for <https://github.com/rust-lang/rust/issues/28828>.
+//! This failed to compile as associated types aliases were not normalized.
 //@ run-pass
+
 pub trait Foo {
     type Out;
 }
diff --git a/tests/ui/extern/extern-c-method-with-str-param.rs b/tests/ui/extern/extern-c-method-with-str-param.rs
index a5427b9..d0fe55b 100644
--- a/tests/ui/extern/extern-c-method-with-str-param.rs
+++ b/tests/ui/extern/extern-c-method-with-str-param.rs
@@ -1,5 +1,6 @@
+//! Regression test for <https://github.com/rust-lang/rust/issues/28600>.
+//! pub extern fn with parameter type &str inside struct impl caused ICE.
 //@ build-pass
-// #28600 ICE: pub extern fn with parameter type &str inside struct impl
 
 struct Test;
 
diff --git a/tests/ui/inference/closure-arg-lifetime-by-ref.rs b/tests/ui/inference/closure-arg-lifetime-by-ref.rs
index 96503f0..f00a38e 100644
--- a/tests/ui/inference/closure-arg-lifetime-by-ref.rs
+++ b/tests/ui/inference/closure-arg-lifetime-by-ref.rs
@@ -1,4 +1,6 @@
+//! Regression test for <https://github.com/rust-lang/rust/issues/28936>.
 //@ check-pass
+
 pub type Session = i32;
 pub struct StreamParser<'a, T> {
     _tokens: T,
diff --git a/tests/ui/lifetimes/field-borrow-lifetime-inference.rs b/tests/ui/lifetimes/field-borrow-lifetime-inference.rs
index 572a0be..a8582db 100644
--- a/tests/ui/lifetimes/field-borrow-lifetime-inference.rs
+++ b/tests/ui/lifetimes/field-borrow-lifetime-inference.rs
@@ -1,4 +1,7 @@
+//! Regression test for <https://github.com/rust-lang/rust/issues/28999>.
+//! `this.v` was not constrained and inferred `'a`.
 //@ check-pass
+
 pub struct Xyz<'a, V> {
     pub v: (V, &'a u32),
 }
diff --git a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex1.rs b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex1.rs
index 813cd86..9afd7dd 100644
--- a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex1.rs
+++ b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex1.rs
@@ -1,8 +1,7 @@
+//! Test for <https://github.com/rust-lang/rust/issues/28498>.
+//! Example taken from RFC 1238 text
+//! <https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md>.
 //@ run-pass
-// Example taken from RFC 1238 text
-
-// https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md
-//     #examples-of-code-that-must-continue-to-work
 
 use std::cell::Cell;
 
diff --git a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex2.rs b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex2.rs
index 98514b1..4e8d403 100644
--- a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex2.rs
+++ b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex2.rs
@@ -1,8 +1,7 @@
+//! Test for <https://github.com/rust-lang/rust/issues/28498>.
+//! Example taken from RFC 1238 text
+//! <https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md>.
 //@ run-pass
-// Example taken from RFC 1238 text
-
-// https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md
-//     #examples-of-code-that-must-continue-to-work
 
 use std::cell::Cell;
 
diff --git a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.rs b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.rs
index 4d1b412..3209a17 100644
--- a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.rs
+++ b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.rs
@@ -1,9 +1,7 @@
-// Example taken from RFC 1238 text
-
-// https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md
-//     #examples-of-code-that-will-start-to-be-rejected
-
-// Compare against test/run-pass/issue28498-must-work-ex2.rs
+//! Test for <https://github.com/rust-lang/rust/issues/28498>.
+//! Example taken from RFC 1238 text
+//! <https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md>.
+//! Compare against tests/ui/rfcs/rfc-1238-nonparametric-dropck/must-work-ex2.rs.
 
 use std::cell::Cell;
 
diff --git a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.stderr b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.stderr
index 7b8af23..6e20f06 100644
--- a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.stderr
+++ b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/reject-ex1.stderr
@@ -1,5 +1,5 @@
 error[E0713]: borrow may still be in use when destructor runs
-  --> $DIR/issue28498-reject-ex1.rs:34:29
+  --> $DIR/reject-ex1.rs:32:29
    |
 LL |     foo.data[0].1.set(Some(&foo.data[1]));
    |                             ^^^^^^^^
diff --git a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/ugeh-ex1.rs b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/ugeh-ex1.rs
index f606d24..722523c 100644
--- a/tests/ui/rfcs/rfc-1238-nonparametric-dropck/ugeh-ex1.rs
+++ b/tests/ui/rfcs/rfc-1238-nonparametric-dropck/ugeh-ex1.rs
@@ -1,10 +1,8 @@
+//! Test for <https://github.com/rust-lang/rust/issues/28498>.
+//! Example taken from RFC 1238 text
+//! <https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md>.
 //@ run-pass
 
-// Example taken from RFC 1238 text
-
-// https://github.com/rust-lang/rfcs/blob/master/text/1238-nonparametric-dropck.md
-//     #example-of-the-unguarded-escape-hatch
-
 #![feature(dropck_eyepatch)]
 use std::cell::Cell;
 
diff --git a/tests/ui/span/foreign-item-vis-span.rs b/tests/ui/span/foreign-item-vis-span.rs
index 6db1f9a..839e07e 100644
--- a/tests/ui/span/foreign-item-vis-span.rs
+++ b/tests/ui/span/foreign-item-vis-span.rs
@@ -1,4 +1,5 @@
-// Check that the visibility modifier is included in the span of foreign items.
+//! Regression test for <https://github.com/rust-lang/rust/issues/28472>.
+//! Check that the visibility modifier is included in the span of foreign items.
 
 extern "C" {
   fn foo();
diff --git a/tests/ui/span/foreign-item-vis-span.stderr b/tests/ui/span/foreign-item-vis-span.stderr
index 051ed25..912a338 100644
--- a/tests/ui/span/foreign-item-vis-span.stderr
+++ b/tests/ui/span/foreign-item-vis-span.stderr
@@ -1,5 +1,5 @@
 error[E0428]: the name `foo` is defined multiple times
-  --> $DIR/issue-28472.rs:6:3
+  --> $DIR/foreign-item-vis-span.rs:7:3
    |
 LL |     fn foo();
    |     --------- previous definition of the value `foo` here
@@ -11,7 +11,7 @@
    = note: `foo` must be defined only once in the value namespace of this module
 
 error[E0428]: the name `foo` is defined multiple times
-  --> $DIR/issue-28472.rs:9:3
+  --> $DIR/foreign-item-vis-span.rs:10:3
    |
 LL |     fn foo();
    |     --------- previous definition of the value `foo` here
diff --git a/tests/ui/unsafe/unsafe-fn-called-through-ref.rs b/tests/ui/unsafe/unsafe-fn-called-through-ref.rs
index e564ebc..d5ac06f 100644
--- a/tests/ui/unsafe/unsafe-fn-called-through-ref.rs
+++ b/tests/ui/unsafe/unsafe-fn-called-through-ref.rs
@@ -1,3 +1,6 @@
+//! Regression test for <https://github.com/rust-lang/rust/issues/28776>.
+//! Unsafe fn could be called outside of unsafe block through autoderef.
+
 use std::ptr;
 
 fn main() {
diff --git a/tests/ui/unsafe/unsafe-fn-called-through-ref.stderr b/tests/ui/unsafe/unsafe-fn-called-through-ref.stderr
index 3db94ee..6978839 100644
--- a/tests/ui/unsafe/unsafe-fn-called-through-ref.stderr
+++ b/tests/ui/unsafe/unsafe-fn-called-through-ref.stderr
@@ -1,5 +1,5 @@
 error[E0133]: call to unsafe function `std::ptr::write` is unsafe and requires unsafe function or block
-  --> $DIR/issue-28776.rs:4:5
+  --> $DIR/unsafe-fn-called-through-ref.rs:7:5
    |
 LL |     (&ptr::write)(1 as *mut _, 42);
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function