about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2020-01-24 23:04:54 +0000
committerbors <bors@rust-lang.org>2020-01-24 23:04:54 +0000
commit8647aa1a2ce279f8ec7cc5252d10b8cb9ea504eb (patch)
treeea761455fe8821274ff5db691e789a91a206631d /src
parentc2d141df59703393c0c683abc259f9a8c3be041a (diff)
parentf998e275cae5320e75871c626c0f88eaef83d5e4 (diff)
downloadrust-8647aa1a2ce279f8ec7cc5252d10b8cb9ea504eb.tar.gz
rust-8647aa1a2ce279f8ec7cc5252d10b8cb9ea504eb.zip
Auto merge of #68526 - JohnTitor:rollup-3mmljof, r=JohnTitor
Rollup of 6 pull requests

Successful merges:

 - #68111 (Print constants in `type_name` for const generics)
 - #68374 (Fix invalid link to the C++ Exception Handling ABI documentation)
 - #68504 (Use check-pass mode for lint tests and nll tests)
 - #68509 (Clean up error codes E0223 and E0225 explanations)
 - #68511 (Remove unused ignore-license directives)
 - #68515 (Support feature process_set_argv0 for VxWorks)

Failed merges:

r? @ghost
Diffstat (limited to 'src')
-rw-r--r--src/libpanic_unwind/gcc.rs2
-rw-r--r--src/librustc/ty/print/pretty.rs38
-rw-r--r--src/librustc_codegen_utils/symbol_names/legacy.rs2
-rw-r--r--src/librustc_error_codes/error_codes/E0223.md3
-rw-r--r--src/librustc_error_codes/error_codes/E0225.md7
-rw-r--r--src/librustc_mir/interpret/intrinsics/type_name.rs5
-rw-r--r--src/libstd/sys/cloudabi/abi/bitflags.rs3
-rw-r--r--src/libstd/sys/cloudabi/abi/cloudabi.rs1
-rw-r--r--src/libstd/sys/vxworks/ext/process.rs18
-rw-r--r--src/libstd/sys/vxworks/process/process_common.rs24
-rw-r--r--src/libstd/sys/vxworks/process/process_vxworks.rs2
-rw-r--r--src/test/pretty/top-level-doc-comments.rs5
-rw-r--r--src/test/run-make-fulldeps/c-dynamic-dylib/cfoo.c1
-rw-r--r--src/test/run-make-fulldeps/c-dynamic-rlib/cfoo.c2
-rw-r--r--src/test/run-make-fulldeps/c-link-to-rust-dylib/bar.c1
-rw-r--r--src/test/run-make-fulldeps/c-link-to-rust-staticlib/bar.c1
-rw-r--r--src/test/run-make-fulldeps/c-static-dylib/cfoo.c1
-rw-r--r--src/test/run-make-fulldeps/c-static-rlib/cfoo.c1
-rw-r--r--src/test/run-make-fulldeps/compiler-rt-works-on-mingw/foo.cpp1
-rw-r--r--src/test/run-make-fulldeps/extern-fn-generic/test.c1
-rw-r--r--src/test/run-make-fulldeps/extern-fn-mangle/test.c1
-rw-r--r--src/test/run-make-fulldeps/extern-fn-with-extern-types/ctest.c1
-rw-r--r--src/test/run-make-fulldeps/extern-fn-with-packed-struct/test.c1
-rw-r--r--src/test/run-make-fulldeps/extern-fn-with-union/ctest.c1
-rw-r--r--src/test/run-make-fulldeps/glibc-staticlib-args/program.c1
-rw-r--r--src/test/run-make-fulldeps/interdependent-c-libraries/bar.c1
-rw-r--r--src/test/run-make-fulldeps/interdependent-c-libraries/foo.c1
-rw-r--r--src/test/run-make-fulldeps/issue-25581/test.c1
-rw-r--r--src/test/run-make-fulldeps/link-path-order/correct.c1
-rw-r--r--src/test/run-make-fulldeps/link-path-order/wrong.c1
-rw-r--r--src/test/run-make-fulldeps/linkage-attr-on-static/foo.c1
-rw-r--r--src/test/run-make-fulldeps/lto-smoke-c/bar.c1
-rw-r--r--src/test/run-make-fulldeps/manual-link/bar.c1
-rw-r--r--src/test/run-make-fulldeps/manual-link/foo.c1
-rw-r--r--src/test/run-make-fulldeps/sanitizer-staticlib-link/program.c1
-rw-r--r--src/test/ui/attr-shebang.rs1
-rw-r--r--src/test/ui/const-generics/const-generic-type_name.rs11
-rw-r--r--src/test/ui/const-generics/const-generic-type_name.stderr8
-rw-r--r--src/test/ui/lexer-crlf-line-endings-string-literal-doc-comment.rs5
-rw-r--r--src/test/ui/lint/command-line-lint-group-allow.rs2
-rw-r--r--src/test/ui/lint/dead-code/tuple-struct-field.rs2
-rw-r--r--src/test/ui/lint/inclusive-range-pattern-syntax.fixed2
-rw-r--r--src/test/ui/lint/inclusive-range-pattern-syntax.rs2
-rw-r--r--src/test/ui/lint/lint-lowercase-static-const-pattern-rename.rs2
-rw-r--r--src/test/ui/lint/lint-non-camel-case-variant.rs2
-rw-r--r--src/test/ui/lint/lint-non-camel-case-with-trailing-underscores.rs2
-rw-r--r--src/test/ui/lint/lint-non-snake-case-no-lowercase-equivalent.rs2
-rw-r--r--src/test/ui/lint/lint-nonstandard-style-unicode.rs2
-rw-r--r--src/test/ui/lint/lint-output-format-2.rs2
-rw-r--r--src/test/ui/lint/lint-stability-deprecated.rs2
-rw-r--r--src/test/ui/lint/lints-in-foreign-macros.rs2
-rw-r--r--src/test/ui/lint/reasons.rs2
-rw-r--r--src/test/ui/lint/type-overflow.rs2
-rw-r--r--src/test/ui/lint/unused_labels.rs2
-rw-r--r--src/test/ui/lint/use-redundant.rs2
-rw-r--r--src/test/ui/nll/closure-requirements/propagate-despite-same-free-region.rs2
-rw-r--r--src/test/ui/nll/constant.rs2
-rw-r--r--src/test/ui/nll/drop-may-dangle.rs2
-rw-r--r--src/test/ui/nll/extra-unused-mut.rs2
-rw-r--r--src/test/ui/nll/generator-distinct-lifetime.rs2
-rw-r--r--src/test/ui/nll/maybe-initialized-drop-uninitialized.rs2
-rw-r--r--src/test/ui/nll/projection-return.rs2
-rw-r--r--src/test/ui/nll/relate_tys/hr-fn-aau-eq-abu.rs2
-rw-r--r--src/test/ui/nll/relate_tys/hr-fn-aba-as-aaa.rs2
-rw-r--r--src/test/ui/nll/ty-outlives/projection-body.rs2
-rw-r--r--src/test/ui/nll/ty-outlives/projection-one-region-trait-bound-static-closure.rs2
-rw-r--r--src/test/ui/nll/ty-outlives/projection-where-clause-env.rs2
-rw-r--r--src/test/ui/nll/ty-outlives/projection-where-clause-trait.rs2
-rw-r--r--src/test/ui/nll/ty-outlives/ty-param-implied-bounds.rs2
-rw-r--r--src/test/ui/nll/user-annotations/downcast-infer.rs2
70 files changed, 131 insertions, 90 deletions
diff --git a/src/libpanic_unwind/gcc.rs b/src/libpanic_unwind/gcc.rs
index 6e04317d491..591ff9d7fdc 100644
--- a/src/libpanic_unwind/gcc.rs
+++ b/src/libpanic_unwind/gcc.rs
@@ -4,7 +4,7 @@
 //! "Exception Handling in LLVM" (llvm.org/docs/ExceptionHandling.html) and
 //! documents linked from it.
 //! These are also good reads:
-//!     http://mentorembedded.github.io/cxx-abi/abi-eh.html
+//!     https://itanium-cxx-abi.github.io/cxx-abi/abi-eh.html
 //!     http://monoinfinito.wordpress.com/series/exception-handling-in-c/
 //!     http://www.airs.com/blog/index.php?s=exception+frames
 //!
diff --git a/src/librustc/ty/print/pretty.rs b/src/librustc/ty/print/pretty.rs
index 9091de55b7d..7dd3c8f4a72 100644
--- a/src/librustc/ty/print/pretty.rs
+++ b/src/librustc/ty/print/pretty.rs
@@ -831,7 +831,11 @@ pub trait PrettyPrinter<'tcx>:
         Ok(self)
     }
 
-    fn pretty_print_const(mut self, ct: &'tcx ty::Const<'tcx>) -> Result<Self::Const, Self::Error> {
+    fn pretty_print_const(
+        mut self,
+        ct: &'tcx ty::Const<'tcx>,
+        print_ty: bool,
+    ) -> Result<Self::Const, Self::Error> {
         define_scoped_cx!(self);
 
         if self.tcx().sess.verbose() {
@@ -839,6 +843,15 @@ pub trait PrettyPrinter<'tcx>:
             return Ok(self);
         }
 
+        macro_rules! print_underscore {
+            () => {{
+                p!(write("_"));
+                if print_ty {
+                    p!(write(": "), print(ct.ty));
+                }
+            }};
+        }
+
         match (ct.val, &ct.ty.kind) {
             (_, ty::FnDef(did, substs)) => p!(print_value_path(*did, substs)),
             (ty::ConstKind::Unevaluated(did, substs, promoted), _) => {
@@ -857,22 +870,27 @@ pub trait PrettyPrinter<'tcx>:
                                 {
                                     p!(write("{}", snip))
                                 } else {
-                                    p!(write("_: "), print(ct.ty))
+                                    print_underscore!()
                                 }
                             } else {
-                                p!(write("_: "), print(ct.ty))
+                                print_underscore!()
                             }
                         }
                     }
                 }
             }
-            (ty::ConstKind::Infer(..), _) => p!(write("_: "), print(ct.ty)),
+            (ty::ConstKind::Infer(..), _) => print_underscore!(),
             (ty::ConstKind::Param(ParamConst { name, .. }), _) => p!(write("{}", name)),
-            (ty::ConstKind::Value(value), _) => return self.pretty_print_const_value(value, ct.ty),
+            (ty::ConstKind::Value(value), _) => {
+                return self.pretty_print_const_value(value, ct.ty, print_ty);
+            }
 
             _ => {
                 // fallback
-                p!(write("{:?} : ", ct.val), print(ct.ty))
+                p!(write("{:?}", ct.val));
+                if print_ty {
+                    p!(write(" : "), print(ct.ty));
+                }
             }
         };
         Ok(self)
@@ -882,6 +900,7 @@ pub trait PrettyPrinter<'tcx>:
         mut self,
         ct: ConstValue<'tcx>,
         ty: Ty<'tcx>,
+        print_ty: bool,
     ) -> Result<Self::Const, Self::Error> {
         define_scoped_cx!(self);
 
@@ -988,7 +1007,10 @@ pub trait PrettyPrinter<'tcx>:
                 };
                 if !printed {
                     // fallback
-                    p!(write("{:?} : ", ct), print(ty))
+                    p!(write("{:?}", ct));
+                    if print_ty {
+                        p!(write(" : "), print(ty));
+                    }
                 }
             }
         };
@@ -1162,7 +1184,7 @@ impl<F: fmt::Write> Printer<'tcx> for FmtPrinter<'_, 'tcx, F> {
     }
 
     fn print_const(self, ct: &'tcx ty::Const<'tcx>) -> Result<Self::Const, Self::Error> {
-        self.pretty_print_const(ct)
+        self.pretty_print_const(ct, true)
     }
 
     fn path_crate(mut self, cnum: CrateNum) -> Result<Self::Path, Self::Error> {
diff --git a/src/librustc_codegen_utils/symbol_names/legacy.rs b/src/librustc_codegen_utils/symbol_names/legacy.rs
index 4f5b9ce03fc..0dedda9bb6b 100644
--- a/src/librustc_codegen_utils/symbol_names/legacy.rs
+++ b/src/librustc_codegen_utils/symbol_names/legacy.rs
@@ -237,7 +237,7 @@ impl Printer<'tcx> for SymbolPrinter<'tcx> {
         // only print integers
         if let ty::ConstKind::Value(ConstValue::Scalar(Scalar::Raw { .. })) = ct.val {
             if ct.ty.is_integral() {
-                return self.pretty_print_const(ct);
+                return self.pretty_print_const(ct, true);
             }
         }
         self.write_str("_")?;
diff --git a/src/librustc_error_codes/error_codes/E0223.md b/src/librustc_error_codes/error_codes/E0223.md
index 9fe03604255..0d49f514ccf 100644
--- a/src/librustc_error_codes/error_codes/E0223.md
+++ b/src/librustc_error_codes/error_codes/E0223.md
@@ -1,5 +1,6 @@
 An attempt was made to retrieve an associated type, but the type was ambiguous.
-For example:
+
+Erroneous code example:
 
 ```compile_fail,E0223
 trait MyTrait {type X; }
diff --git a/src/librustc_error_codes/error_codes/E0225.md b/src/librustc_error_codes/error_codes/E0225.md
index b9820dc68ee..c306e710097 100644
--- a/src/librustc_error_codes/error_codes/E0225.md
+++ b/src/librustc_error_codes/error_codes/E0225.md
@@ -1,5 +1,6 @@
-You attempted to use multiple types as bounds for a closure or trait object.
-Rust does not currently support this. A simple example that causes this error:
+Multiple types were used as bounds for a closure or trait object.
+
+Erroneous code example:
 
 ```compile_fail,E0225
 fn main() {
@@ -7,6 +8,8 @@ fn main() {
 }
 ```
 
+Rust does not currently support this.
+
 Auto traits such as Send and Sync are an exception to this rule:
 It's possible to have bounds of one non-builtin trait, plus any number of
 auto traits. For example, the following compiles correctly:
diff --git a/src/librustc_mir/interpret/intrinsics/type_name.rs b/src/librustc_mir/interpret/intrinsics/type_name.rs
index eed47c147c6..cd8bf7085d1 100644
--- a/src/librustc_mir/interpret/intrinsics/type_name.rs
+++ b/src/librustc_mir/interpret/intrinsics/type_name.rs
@@ -69,9 +69,8 @@ impl<'tcx> Printer<'tcx> for AbsolutePathPrinter<'tcx> {
         }
     }
 
-    fn print_const(self, _: &'tcx ty::Const<'tcx>) -> Result<Self::Const, Self::Error> {
-        // don't print constants to the user
-        Ok(self)
+    fn print_const(self, ct: &'tcx ty::Const<'tcx>) -> Result<Self::Const, Self::Error> {
+        self.pretty_print_const(ct, false)
     }
 
     fn print_dyn_existential(
diff --git a/src/libstd/sys/cloudabi/abi/bitflags.rs b/src/libstd/sys/cloudabi/abi/bitflags.rs
index 306936213ed..2383277ad72 100644
--- a/src/libstd/sys/cloudabi/abi/bitflags.rs
+++ b/src/libstd/sys/cloudabi/abi/bitflags.rs
@@ -21,9 +21,6 @@
 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 // SUCH DAMAGE.
 
-// Appease Rust's tidy.
-// ignore-license
-
 #[cfg(feature = "bitflags")]
 use bitflags::bitflags;
 
diff --git a/src/libstd/sys/cloudabi/abi/cloudabi.rs b/src/libstd/sys/cloudabi/abi/cloudabi.rs
index d113a7b3d60..b02faf1830c 100644
--- a/src/libstd/sys/cloudabi/abi/cloudabi.rs
+++ b/src/libstd/sys/cloudabi/abi/cloudabi.rs
@@ -26,7 +26,6 @@
 // Source: https://github.com/NuxiNL/cloudabi
 
 // Appease Rust's tidy.
-// ignore-license
 // ignore-tidy-linelength
 
 //! **PLEASE NOTE: This entire crate including this
diff --git a/src/libstd/sys/vxworks/ext/process.rs b/src/libstd/sys/vxworks/ext/process.rs
index e535c4aa122..31e691dd136 100644
--- a/src/libstd/sys/vxworks/ext/process.rs
+++ b/src/libstd/sys/vxworks/ext/process.rs
@@ -2,6 +2,7 @@
 
 #![stable(feature = "rust1", since = "1.0.0")]
 
+use crate::ffi::OsStr;
 use crate::io;
 use crate::process;
 use crate::sys;
@@ -105,6 +106,15 @@ pub trait CommandExt {
     /// cross-platform `spawn` instead.
     #[stable(feature = "process_exec2", since = "1.9.0")]
     fn exec(&mut self) -> io::Error;
+
+    /// Set executable argument
+    ///
+    /// Set the first process argument, `argv[0]`, to something other than the
+    /// default executable path.
+    #[unstable(feature = "process_set_argv0", issue = "66510")]
+    fn arg0<S>(&mut self, arg: S) -> &mut process::Command
+    where
+        S: AsRef<OsStr>;
 }
 
 #[stable(feature = "rust1", since = "1.0.0")]
@@ -130,6 +140,14 @@ impl CommandExt for process::Command {
     fn exec(&mut self) -> io::Error {
         self.as_inner_mut().exec(sys::process::Stdio::Inherit)
     }
+
+    fn arg0<S>(&mut self, arg: S) -> &mut process::Command
+    where
+        S: AsRef<OsStr>,
+    {
+        self.as_inner_mut().set_arg_0(arg.as_ref());
+        self
+    }
 }
 
 /// Unix-specific extensions to [`process::ExitStatus`].
diff --git a/src/libstd/sys/vxworks/process/process_common.rs b/src/libstd/sys/vxworks/process/process_common.rs
index a8139a27537..6d5506bec5f 100644
--- a/src/libstd/sys/vxworks/process/process_common.rs
+++ b/src/libstd/sys/vxworks/process/process_common.rs
@@ -90,8 +90,8 @@ impl Command {
         let program = os2c(program, &mut saw_nul);
         Command {
             argv: Argv(vec![program.as_ptr(), ptr::null()]),
+            args: vec![program.clone()],
             program,
-            args: Vec::new(),
             env: Default::default(),
             cwd: None,
             uid: None,
@@ -104,11 +104,19 @@ impl Command {
         }
     }
 
+    pub fn set_arg_0(&mut self, arg: &OsStr) {
+        // Set a new arg0
+        let arg = os2c(arg, &mut self.saw_nul);
+        debug_assert!(self.argv.0.len() > 1);
+        self.argv.0[0] = arg.as_ptr();
+        self.args[0] = arg;
+    }
+
     pub fn arg(&mut self, arg: &OsStr) {
         // Overwrite the trailing NULL pointer in `argv` and then add a new null
         // pointer.
         let arg = os2c(arg, &mut self.saw_nul);
-        self.argv.0[self.args.len() + 1] = arg.as_ptr();
+        self.argv.0[self.args.len()] = arg.as_ptr();
         self.argv.0.push(ptr::null());
 
         // Also make sure we keep track of the owned value to schedule a
@@ -133,6 +141,10 @@ impl Command {
         &self.argv.0
     }
 
+    pub fn get_program(&self) -> &CStr {
+        &*self.program
+    }
+
     #[allow(dead_code)]
     pub fn get_cwd(&self) -> &Option<CString> {
         &self.cwd
@@ -315,8 +327,12 @@ impl ChildStdio {
 
 impl fmt::Debug for Command {
     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
-        write!(f, "{:?}", self.program)?;
-        for arg in &self.args {
+        if self.program != self.args[0] {
+            write!(f, "[{:?}] ", self.program)?;
+        }
+        write!(f, "{:?}", self.args[0])?;
+
+        for arg in &self.args[1..] {
             write!(f, " {:?}", arg)?;
         }
         Ok(())
diff --git a/src/libstd/sys/vxworks/process/process_vxworks.rs b/src/libstd/sys/vxworks/process/process_vxworks.rs
index ced70dea27f..f7e84ae3de9 100644
--- a/src/libstd/sys/vxworks/process/process_vxworks.rs
+++ b/src/libstd/sys/vxworks/process/process_vxworks.rs
@@ -67,7 +67,7 @@ impl Command {
             let _lock = sys::os::env_lock();
 
             let ret = libc::rtpSpawn(
-                self.get_argv()[0],                             // executing program
+                self.get_program().as_ptr(),
                 self.get_argv().as_ptr() as *mut *const c_char, // argv
                 c_envp as *mut *const c_char,
                 100 as c_int, // initial priority
diff --git a/src/test/pretty/top-level-doc-comments.rs b/src/test/pretty/top-level-doc-comments.rs
index 16f95d334cb..b97927124c3 100644
--- a/src/test/pretty/top-level-doc-comments.rs
+++ b/src/test/pretty/top-level-doc-comments.rs
@@ -1,11 +1,6 @@
 /// Some doc comment.
 struct X;
 
-// ignore-license
-
-// http://rust-lang.org/COPYRIGHT.
-//
-
 // pp-exact
 
 // Test that rust can properly pretty print a doc comment if it's the first line in a file.  some
diff --git a/src/test/run-make-fulldeps/c-dynamic-dylib/cfoo.c b/src/test/run-make-fulldeps/c-dynamic-dylib/cfoo.c
index a9755493541..fea490cf9b4 100644
--- a/src/test/run-make-fulldeps/c-dynamic-dylib/cfoo.c
+++ b/src/test/run-make-fulldeps/c-dynamic-dylib/cfoo.c
@@ -1,4 +1,3 @@
-// ignore-license
 #ifdef _WIN32
 __declspec(dllexport)
 #endif
diff --git a/src/test/run-make-fulldeps/c-dynamic-rlib/cfoo.c b/src/test/run-make-fulldeps/c-dynamic-rlib/cfoo.c
index b2849326a75..fea490cf9b4 100644
--- a/src/test/run-make-fulldeps/c-dynamic-rlib/cfoo.c
+++ b/src/test/run-make-fulldeps/c-dynamic-rlib/cfoo.c
@@ -1,5 +1,3 @@
-// ignore-license
-
 #ifdef _WIN32
 __declspec(dllexport)
 #endif
diff --git a/src/test/run-make-fulldeps/c-link-to-rust-dylib/bar.c b/src/test/run-make-fulldeps/c-link-to-rust-dylib/bar.c
index 5729d411c5b..bb4036b06e1 100644
--- a/src/test/run-make-fulldeps/c-link-to-rust-dylib/bar.c
+++ b/src/test/run-make-fulldeps/c-link-to-rust-dylib/bar.c
@@ -1,4 +1,3 @@
-// ignore-license
 void foo();
 
 int main() {
diff --git a/src/test/run-make-fulldeps/c-link-to-rust-staticlib/bar.c b/src/test/run-make-fulldeps/c-link-to-rust-staticlib/bar.c
index 5729d411c5b..bb4036b06e1 100644
--- a/src/test/run-make-fulldeps/c-link-to-rust-staticlib/bar.c
+++ b/src/test/run-make-fulldeps/c-link-to-rust-staticlib/bar.c
@@ -1,4 +1,3 @@
-// ignore-license
 void foo();
 
 int main() {
diff --git a/src/test/run-make-fulldeps/c-static-dylib/cfoo.c b/src/test/run-make-fulldeps/c-static-dylib/cfoo.c
index 113717a776a..9fe07f82f9e 100644
--- a/src/test/run-make-fulldeps/c-static-dylib/cfoo.c
+++ b/src/test/run-make-fulldeps/c-static-dylib/cfoo.c
@@ -1,2 +1 @@
-// ignore-license
 int foo() { return 0; }
diff --git a/src/test/run-make-fulldeps/c-static-rlib/cfoo.c b/src/test/run-make-fulldeps/c-static-rlib/cfoo.c
index 113717a776a..9fe07f82f9e 100644
--- a/src/test/run-make-fulldeps/c-static-rlib/cfoo.c
+++ b/src/test/run-make-fulldeps/c-static-rlib/cfoo.c
@@ -1,2 +1 @@
-// ignore-license
 int foo() { return 0; }
diff --git a/src/test/run-make-fulldeps/compiler-rt-works-on-mingw/foo.cpp b/src/test/run-make-fulldeps/compiler-rt-works-on-mingw/foo.cpp
index aac3ba42201..4c2fb9cdb87 100644
--- a/src/test/run-make-fulldeps/compiler-rt-works-on-mingw/foo.cpp
+++ b/src/test/run-make-fulldeps/compiler-rt-works-on-mingw/foo.cpp
@@ -1,4 +1,3 @@
-// ignore-license
 extern "C" void foo() {
     int *a = new int(3);
     delete a;
diff --git a/src/test/run-make-fulldeps/extern-fn-generic/test.c b/src/test/run-make-fulldeps/extern-fn-generic/test.c
index f9faef64afc..a8504ff2afb 100644
--- a/src/test/run-make-fulldeps/extern-fn-generic/test.c
+++ b/src/test/run-make-fulldeps/extern-fn-generic/test.c
@@ -1,4 +1,3 @@
-// ignore-license
 #include <stdint.h>
 
 typedef struct TestStruct {
diff --git a/src/test/run-make-fulldeps/extern-fn-mangle/test.c b/src/test/run-make-fulldeps/extern-fn-mangle/test.c
index 1a9855dedec..e94d75083b8 100644
--- a/src/test/run-make-fulldeps/extern-fn-mangle/test.c
+++ b/src/test/run-make-fulldeps/extern-fn-mangle/test.c
@@ -1,4 +1,3 @@
-// ignore-license
 #include <stdint.h>
 
 uint32_t foo();
diff --git a/src/test/run-make-fulldeps/extern-fn-with-extern-types/ctest.c b/src/test/run-make-fulldeps/extern-fn-with-extern-types/ctest.c
index c3d6166fb12..3b6fb4cfce9 100644
--- a/src/test/run-make-fulldeps/extern-fn-with-extern-types/ctest.c
+++ b/src/test/run-make-fulldeps/extern-fn-with-extern-types/ctest.c
@@ -1,4 +1,3 @@
-// ignore-license
 #include <stdio.h>
 #include <stdint.h>
 
diff --git a/src/test/run-make-fulldeps/extern-fn-with-packed-struct/test.c b/src/test/run-make-fulldeps/extern-fn-with-packed-struct/test.c
index 4124e202c1d..52af3dceb10 100644
--- a/src/test/run-make-fulldeps/extern-fn-with-packed-struct/test.c
+++ b/src/test/run-make-fulldeps/extern-fn-with-packed-struct/test.c
@@ -1,4 +1,3 @@
-// ignore-license
 // Pragma needed cause of gcc bug on windows: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52991
 
 #include <assert.h>
diff --git a/src/test/run-make-fulldeps/extern-fn-with-union/ctest.c b/src/test/run-make-fulldeps/extern-fn-with-union/ctest.c
index 8c87c230693..86cb6453723 100644
--- a/src/test/run-make-fulldeps/extern-fn-with-union/ctest.c
+++ b/src/test/run-make-fulldeps/extern-fn-with-union/ctest.c
@@ -1,4 +1,3 @@
-// ignore-license
 #include <stdio.h>
 #include <stdint.h>
 
diff --git a/src/test/run-make-fulldeps/glibc-staticlib-args/program.c b/src/test/run-make-fulldeps/glibc-staticlib-args/program.c
index d704c39d5c4..30f6974b750 100644
--- a/src/test/run-make-fulldeps/glibc-staticlib-args/program.c
+++ b/src/test/run-make-fulldeps/glibc-staticlib-args/program.c
@@ -1,4 +1,3 @@
-// ignore-license
 void args_check();
 
 int main() {
diff --git a/src/test/run-make-fulldeps/interdependent-c-libraries/bar.c b/src/test/run-make-fulldeps/interdependent-c-libraries/bar.c
index c761f029eff..812c9753528 100644
--- a/src/test/run-make-fulldeps/interdependent-c-libraries/bar.c
+++ b/src/test/run-make-fulldeps/interdependent-c-libraries/bar.c
@@ -1,4 +1,3 @@
-// ignore-license
 void foo();
 
 void bar() { foo(); }
diff --git a/src/test/run-make-fulldeps/interdependent-c-libraries/foo.c b/src/test/run-make-fulldeps/interdependent-c-libraries/foo.c
index 2895ad473bf..85e6cd8c390 100644
--- a/src/test/run-make-fulldeps/interdependent-c-libraries/foo.c
+++ b/src/test/run-make-fulldeps/interdependent-c-libraries/foo.c
@@ -1,2 +1 @@
-// ignore-license
 void foo() {}
diff --git a/src/test/run-make-fulldeps/issue-25581/test.c b/src/test/run-make-fulldeps/issue-25581/test.c
index 5736b173021..52fbf78510a 100644
--- a/src/test/run-make-fulldeps/issue-25581/test.c
+++ b/src/test/run-make-fulldeps/issue-25581/test.c
@@ -1,4 +1,3 @@
-// ignore-license
 #include <stddef.h>
 #include <stdint.h>
 
diff --git a/src/test/run-make-fulldeps/link-path-order/correct.c b/src/test/run-make-fulldeps/link-path-order/correct.c
index a595939f92e..3064af952f8 100644
--- a/src/test/run-make-fulldeps/link-path-order/correct.c
+++ b/src/test/run-make-fulldeps/link-path-order/correct.c
@@ -1,2 +1 @@
-// ignore-license
 int should_return_one() { return 1; }
diff --git a/src/test/run-make-fulldeps/link-path-order/wrong.c b/src/test/run-make-fulldeps/link-path-order/wrong.c
index c53e7e3c48c..64275b3ad6b 100644
--- a/src/test/run-make-fulldeps/link-path-order/wrong.c
+++ b/src/test/run-make-fulldeps/link-path-order/wrong.c
@@ -1,2 +1 @@
-// ignore-license
 int should_return_one() { return 0; }
diff --git a/src/test/run-make-fulldeps/linkage-attr-on-static/foo.c b/src/test/run-make-fulldeps/linkage-attr-on-static/foo.c
index d7d33ea12e8..78a6934f57f 100644
--- a/src/test/run-make-fulldeps/linkage-attr-on-static/foo.c
+++ b/src/test/run-make-fulldeps/linkage-attr-on-static/foo.c
@@ -1,4 +1,3 @@
-// ignore-license
 #include <stdint.h>
 
 extern int32_t BAZ;
diff --git a/src/test/run-make-fulldeps/lto-smoke-c/bar.c b/src/test/run-make-fulldeps/lto-smoke-c/bar.c
index 5729d411c5b..bb4036b06e1 100644
--- a/src/test/run-make-fulldeps/lto-smoke-c/bar.c
+++ b/src/test/run-make-fulldeps/lto-smoke-c/bar.c
@@ -1,4 +1,3 @@
-// ignore-license
 void foo();
 
 int main() {
diff --git a/src/test/run-make-fulldeps/manual-link/bar.c b/src/test/run-make-fulldeps/manual-link/bar.c
index 3c167b45af9..e4259998678 100644
--- a/src/test/run-make-fulldeps/manual-link/bar.c
+++ b/src/test/run-make-fulldeps/manual-link/bar.c
@@ -1,2 +1 @@
-// ignore-license
 void bar() {}
diff --git a/src/test/run-make-fulldeps/manual-link/foo.c b/src/test/run-make-fulldeps/manual-link/foo.c
index 3c167b45af9..e4259998678 100644
--- a/src/test/run-make-fulldeps/manual-link/foo.c
+++ b/src/test/run-make-fulldeps/manual-link/foo.c
@@ -1,2 +1 @@
-// ignore-license
 void bar() {}
diff --git a/src/test/run-make-fulldeps/sanitizer-staticlib-link/program.c b/src/test/run-make-fulldeps/sanitizer-staticlib-link/program.c
index a6d3bcdc5ac..735e2b147fd 100644
--- a/src/test/run-make-fulldeps/sanitizer-staticlib-link/program.c
+++ b/src/test/run-make-fulldeps/sanitizer-staticlib-link/program.c
@@ -1,4 +1,3 @@
-// ignore-license
 void overflow();
 
 int main() {
diff --git a/src/test/ui/attr-shebang.rs b/src/test/ui/attr-shebang.rs
index cce31c9bb7b..3b0dc096f58 100644
--- a/src/test/ui/attr-shebang.rs
+++ b/src/test/ui/attr-shebang.rs
@@ -3,4 +3,3 @@
 #![allow(stable_features)]
 #![feature(rust1)]
 pub fn main() { }
-// ignore-license
diff --git a/src/test/ui/const-generics/const-generic-type_name.rs b/src/test/ui/const-generics/const-generic-type_name.rs
new file mode 100644
index 00000000000..28586426b44
--- /dev/null
+++ b/src/test/ui/const-generics/const-generic-type_name.rs
@@ -0,0 +1,11 @@
+// run-pass
+
+#![feature(const_generics)]
+//~^ WARN the feature `const_generics` is incomplete and may cause the compiler to crash
+
+#[derive(Debug)]
+struct S<const N: usize>;
+
+fn main() {
+    assert_eq!(std::any::type_name::<S<3>>(), "const_generic_type_name::S<3usize>");
+}
diff --git a/src/test/ui/const-generics/const-generic-type_name.stderr b/src/test/ui/const-generics/const-generic-type_name.stderr
new file mode 100644
index 00000000000..6b60a77effe
--- /dev/null
+++ b/src/test/ui/const-generics/const-generic-type_name.stderr
@@ -0,0 +1,8 @@
+warning: the feature `const_generics` is incomplete and may cause the compiler to crash
+  --> $DIR/const-generic-type_name.rs:3:12
+   |
+LL | #![feature(const_generics)]
+   |            ^^^^^^^^^^^^^^
+   |
+   = note: `#[warn(incomplete_features)]` on by default
+
diff --git a/src/test/ui/lexer-crlf-line-endings-string-literal-doc-comment.rs b/src/test/ui/lexer-crlf-line-endings-string-literal-doc-comment.rs
index ada253aacfb..802be7f5afb 100644
--- a/src/test/ui/lexer-crlf-line-endings-string-literal-doc-comment.rs
+++ b/src/test/ui/lexer-crlf-line-endings-string-literal-doc-comment.rs
@@ -1,11 +1,8 @@
 // run-pass

-// ignore-tidy-cr ignore-license

+// ignore-tidy-cr

 // ignore-tidy-cr (repeated again because of tidy bug)

 // license is ignored because tidy can't handle the CRLF here properly.

 

-// http://rust-lang.org/COPYRIGHT.

-//

-

 // N.B., this file needs CRLF line endings. The .gitattributes file in

 // this directory should enforce it.

 

diff --git a/src/test/ui/lint/command-line-lint-group-allow.rs b/src/test/ui/lint/command-line-lint-group-allow.rs
index f26e157bc70..21c0df0288f 100644
--- a/src/test/ui/lint/command-line-lint-group-allow.rs
+++ b/src/test/ui/lint/command-line-lint-group-allow.rs
@@ -1,5 +1,5 @@
 // compile-flags: -A bad-style
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 fn main() {
     let _InappropriateCamelCasing = true;
diff --git a/src/test/ui/lint/dead-code/tuple-struct-field.rs b/src/test/ui/lint/dead-code/tuple-struct-field.rs
index 92a67950986..c8fd32c64d6 100644
--- a/src/test/ui/lint/dead-code/tuple-struct-field.rs
+++ b/src/test/ui/lint/dead-code/tuple-struct-field.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![deny(dead_code)]
 
diff --git a/src/test/ui/lint/inclusive-range-pattern-syntax.fixed b/src/test/ui/lint/inclusive-range-pattern-syntax.fixed
index 9fce66a0a83..d6e5033a0c4 100644
--- a/src/test/ui/lint/inclusive-range-pattern-syntax.fixed
+++ b/src/test/ui/lint/inclusive-range-pattern-syntax.fixed
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 // run-rustfix
 
 #![warn(ellipsis_inclusive_range_patterns)]
diff --git a/src/test/ui/lint/inclusive-range-pattern-syntax.rs b/src/test/ui/lint/inclusive-range-pattern-syntax.rs
index f886e778b59..773eea14fd7 100644
--- a/src/test/ui/lint/inclusive-range-pattern-syntax.rs
+++ b/src/test/ui/lint/inclusive-range-pattern-syntax.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 // run-rustfix
 
 #![warn(ellipsis_inclusive_range_patterns)]
diff --git a/src/test/ui/lint/lint-lowercase-static-const-pattern-rename.rs b/src/test/ui/lint/lint-lowercase-static-const-pattern-rename.rs
index 95da4efa590..d085db43aa9 100644
--- a/src/test/ui/lint/lint-lowercase-static-const-pattern-rename.rs
+++ b/src/test/ui/lint/lint-lowercase-static-const-pattern-rename.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 // Issue #7526: lowercase static constants in patterns look like bindings
 
 // This is similar to lint-lowercase-static-const-pattern.rs, except it
diff --git a/src/test/ui/lint/lint-non-camel-case-variant.rs b/src/test/ui/lint/lint-non-camel-case-variant.rs
index 434e24c1d27..2b1a52f25be 100644
--- a/src/test/ui/lint/lint-non-camel-case-variant.rs
+++ b/src/test/ui/lint/lint-non-camel-case-variant.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![deny(non_camel_case_types)]
 
diff --git a/src/test/ui/lint/lint-non-camel-case-with-trailing-underscores.rs b/src/test/ui/lint/lint-non-camel-case-with-trailing-underscores.rs
index d025ee94854..b832e4bcd62 100644
--- a/src/test/ui/lint/lint-non-camel-case-with-trailing-underscores.rs
+++ b/src/test/ui/lint/lint-non-camel-case-with-trailing-underscores.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![allow(dead_code)]
 // This is ok because we often use the trailing underscore to mean 'prime'
diff --git a/src/test/ui/lint/lint-non-snake-case-no-lowercase-equivalent.rs b/src/test/ui/lint/lint-non-snake-case-no-lowercase-equivalent.rs
index 5bec82ce1a6..710eebe4b65 100644
--- a/src/test/ui/lint/lint-non-snake-case-no-lowercase-equivalent.rs
+++ b/src/test/ui/lint/lint-non-snake-case-no-lowercase-equivalent.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![allow(dead_code)]
 // pretty-expanded FIXME #23616
diff --git a/src/test/ui/lint/lint-nonstandard-style-unicode.rs b/src/test/ui/lint/lint-nonstandard-style-unicode.rs
index 40f0a676381..9f16cb20fb3 100644
--- a/src/test/ui/lint/lint-nonstandard-style-unicode.rs
+++ b/src/test/ui/lint/lint-nonstandard-style-unicode.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![allow(dead_code)]
 
diff --git a/src/test/ui/lint/lint-output-format-2.rs b/src/test/ui/lint/lint-output-format-2.rs
index 32a41179965..521472d99b1 100644
--- a/src/test/ui/lint/lint-output-format-2.rs
+++ b/src/test/ui/lint/lint-output-format-2.rs
@@ -1,7 +1,7 @@
 // aux-build:lint_output_format.rs
 
 #![feature(unstable_test_feature)]
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 extern crate lint_output_format;
 use lint_output_format::{foo, bar};
diff --git a/src/test/ui/lint/lint-stability-deprecated.rs b/src/test/ui/lint/lint-stability-deprecated.rs
index 0bac9bb3d99..4b407a29f64 100644
--- a/src/test/ui/lint/lint-stability-deprecated.rs
+++ b/src/test/ui/lint/lint-stability-deprecated.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 // aux-build:lint_stability.rs
 // aux-build:inherited_stability.rs
 // aux-build:stability_cfg1.rs
diff --git a/src/test/ui/lint/lints-in-foreign-macros.rs b/src/test/ui/lint/lints-in-foreign-macros.rs
index e381c81453b..c96b8f1a5cf 100644
--- a/src/test/ui/lint/lints-in-foreign-macros.rs
+++ b/src/test/ui/lint/lints-in-foreign-macros.rs
@@ -1,5 +1,5 @@
 // aux-build:lints-in-foreign-macros.rs
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![warn(unused_imports)] //~ missing documentation for crate [missing_docs]
 #![warn(missing_docs)]
diff --git a/src/test/ui/lint/reasons.rs b/src/test/ui/lint/reasons.rs
index fa9f012c926..4722e85673c 100644
--- a/src/test/ui/lint/reasons.rs
+++ b/src/test/ui/lint/reasons.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![feature(lint_reasons)]
 
diff --git a/src/test/ui/lint/type-overflow.rs b/src/test/ui/lint/type-overflow.rs
index 79ffc82d329..e40321e56bf 100644
--- a/src/test/ui/lint/type-overflow.rs
+++ b/src/test/ui/lint/type-overflow.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 #![warn(overflowing_literals)]
 
 fn main() {
diff --git a/src/test/ui/lint/unused_labels.rs b/src/test/ui/lint/unused_labels.rs
index d234a2fb1a0..8a3568f65f6 100644
--- a/src/test/ui/lint/unused_labels.rs
+++ b/src/test/ui/lint/unused_labels.rs
@@ -2,7 +2,7 @@
 // should also deal with the edge cases where a label is shadowed,
 // within nested loops
 
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![feature(label_break_value)]
 #![warn(unused_labels)]
diff --git a/src/test/ui/lint/use-redundant.rs b/src/test/ui/lint/use-redundant.rs
index 3b00424d2f3..53315dcf638 100644
--- a/src/test/ui/lint/use-redundant.rs
+++ b/src/test/ui/lint/use-redundant.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 #![warn(unused_imports)]
 
 use crate::foo::Bar;
diff --git a/src/test/ui/nll/closure-requirements/propagate-despite-same-free-region.rs b/src/test/ui/nll/closure-requirements/propagate-despite-same-free-region.rs
index 1df7c6114ee..ac182be1556 100644
--- a/src/test/ui/nll/closure-requirements/propagate-despite-same-free-region.rs
+++ b/src/test/ui/nll/closure-requirements/propagate-despite-same-free-region.rs
@@ -4,7 +4,7 @@
 // regions is erased.
 
 // compile-flags:-Zborrowck=mir -Zverbose
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![feature(rustc_attrs)]
 
diff --git a/src/test/ui/nll/constant.rs b/src/test/ui/nll/constant.rs
index b1ea2c906da..039b6aaaf0a 100644
--- a/src/test/ui/nll/constant.rs
+++ b/src/test/ui/nll/constant.rs
@@ -2,7 +2,7 @@
 // arbitrary types without ICEs.
 
 // compile-flags:-Zborrowck=mir
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 const HI: &str = "hi";
 
diff --git a/src/test/ui/nll/drop-may-dangle.rs b/src/test/ui/nll/drop-may-dangle.rs
index 0f3d27d0665..1897589bd58 100644
--- a/src/test/ui/nll/drop-may-dangle.rs
+++ b/src/test/ui/nll/drop-may-dangle.rs
@@ -3,7 +3,7 @@
 // including) the call to `use_x`. The `else` branch is not included.
 
 // compile-flags:-Zborrowck=mir
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![allow(warnings)]
 #![feature(dropck_eyepatch)]
diff --git a/src/test/ui/nll/extra-unused-mut.rs b/src/test/ui/nll/extra-unused-mut.rs
index e9c8df46213..db056a22855 100644
--- a/src/test/ui/nll/extra-unused-mut.rs
+++ b/src/test/ui/nll/extra-unused-mut.rs
@@ -1,6 +1,6 @@
 // extra unused mut lint tests for #51918
 
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![feature(generators, nll)]
 #![deny(unused_mut)]
diff --git a/src/test/ui/nll/generator-distinct-lifetime.rs b/src/test/ui/nll/generator-distinct-lifetime.rs
index 1bd39db35d9..3102562cd0a 100644
--- a/src/test/ui/nll/generator-distinct-lifetime.rs
+++ b/src/test/ui/nll/generator-distinct-lifetime.rs
@@ -6,7 +6,7 @@
 // over a yield -- because the data that is borrowed (`*x`) is not
 // stored on the stack.
 
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 fn foo(x: &mut u32) {
     move || {
diff --git a/src/test/ui/nll/maybe-initialized-drop-uninitialized.rs b/src/test/ui/nll/maybe-initialized-drop-uninitialized.rs
index 72212e9e70c..e81479495c4 100644
--- a/src/test/ui/nll/maybe-initialized-drop-uninitialized.rs
+++ b/src/test/ui/nll/maybe-initialized-drop-uninitialized.rs
@@ -1,5 +1,5 @@
 // compile-flags: -Zborrowck=mir
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![allow(warnings)]
 
diff --git a/src/test/ui/nll/projection-return.rs b/src/test/ui/nll/projection-return.rs
index 5c340434691..017f53d1457 100644
--- a/src/test/ui/nll/projection-return.rs
+++ b/src/test/ui/nll/projection-return.rs
@@ -1,5 +1,5 @@
 // compile-flags:-Zborrowck=mir
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![feature(rustc_attrs)]
 
diff --git a/src/test/ui/nll/relate_tys/hr-fn-aau-eq-abu.rs b/src/test/ui/nll/relate_tys/hr-fn-aau-eq-abu.rs
index 1bbc896c270..527cca13395 100644
--- a/src/test/ui/nll/relate_tys/hr-fn-aau-eq-abu.rs
+++ b/src/test/ui/nll/relate_tys/hr-fn-aau-eq-abu.rs
@@ -6,7 +6,7 @@
 // another -- effectively, the single lifetime `'a` is just inferred
 // to be the intersection of the two distinct lifetimes.
 //
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 // compile-flags:-Zno-leak-check
 
 #![feature(nll)]
diff --git a/src/test/ui/nll/relate_tys/hr-fn-aba-as-aaa.rs b/src/test/ui/nll/relate_tys/hr-fn-aba-as-aaa.rs
index 4e8599b2e3f..3a46188d119 100644
--- a/src/test/ui/nll/relate_tys/hr-fn-aba-as-aaa.rs
+++ b/src/test/ui/nll/relate_tys/hr-fn-aba-as-aaa.rs
@@ -2,7 +2,7 @@
 // function returning always its first argument can be upcast to one
 // that returns either first or second argument.
 //
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 // compile-flags:-Zno-leak-check
 
 #![feature(nll)]
diff --git a/src/test/ui/nll/ty-outlives/projection-body.rs b/src/test/ui/nll/ty-outlives/projection-body.rs
index 148120d848b..b03a539ebdb 100644
--- a/src/test/ui/nll/ty-outlives/projection-body.rs
+++ b/src/test/ui/nll/ty-outlives/projection-body.rs
@@ -1,7 +1,7 @@
 // Test that when we infer the lifetime to a subset of the fn body, it
 // works out.
 //
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 trait MyTrait<'a> {
     type Output;
diff --git a/src/test/ui/nll/ty-outlives/projection-one-region-trait-bound-static-closure.rs b/src/test/ui/nll/ty-outlives/projection-one-region-trait-bound-static-closure.rs
index b9c9611e38c..be1b653c384 100644
--- a/src/test/ui/nll/ty-outlives/projection-one-region-trait-bound-static-closure.rs
+++ b/src/test/ui/nll/ty-outlives/projection-one-region-trait-bound-static-closure.rs
@@ -3,7 +3,7 @@
 // we don't even propagate constraints from the closures to the callers.
 
 // compile-flags:-Zborrowck=mir -Zverbose
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 #![allow(warnings)]
 #![feature(rustc_attrs)]
diff --git a/src/test/ui/nll/ty-outlives/projection-where-clause-env.rs b/src/test/ui/nll/ty-outlives/projection-where-clause-env.rs
index 4613dd29ef8..a411162325d 100644
--- a/src/test/ui/nll/ty-outlives/projection-where-clause-env.rs
+++ b/src/test/ui/nll/ty-outlives/projection-where-clause-env.rs
@@ -4,7 +4,7 @@
 //
 // Regression test for #53121.
 //
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 trait MyTrait<'a> {
     type Output;
diff --git a/src/test/ui/nll/ty-outlives/projection-where-clause-trait.rs b/src/test/ui/nll/ty-outlives/projection-where-clause-trait.rs
index 89328c2ef1b..8d0c10a639e 100644
--- a/src/test/ui/nll/ty-outlives/projection-where-clause-trait.rs
+++ b/src/test/ui/nll/ty-outlives/projection-where-clause-trait.rs
@@ -4,7 +4,7 @@
 // MyTrait<'a>>::Output: 'a` outlives `'a` (because the trait says
 // so).
 //
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 trait MyTrait<'a> {
     type Output: 'a;
diff --git a/src/test/ui/nll/ty-outlives/ty-param-implied-bounds.rs b/src/test/ui/nll/ty-outlives/ty-param-implied-bounds.rs
index a68c3cf12fd..6547ae39817 100644
--- a/src/test/ui/nll/ty-outlives/ty-param-implied-bounds.rs
+++ b/src/test/ui/nll/ty-outlives/ty-param-implied-bounds.rs
@@ -1,5 +1,5 @@
 // compile-flags:-Zborrowck=mir -Zverbose
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 // Test that we assume that universal types like `T` outlive the
 // function body.
diff --git a/src/test/ui/nll/user-annotations/downcast-infer.rs b/src/test/ui/nll/user-annotations/downcast-infer.rs
index 3efea713630..b27429f4d19 100644
--- a/src/test/ui/nll/user-annotations/downcast-infer.rs
+++ b/src/test/ui/nll/user-annotations/downcast-infer.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 // Check that we don't try to downcast `_` when type-checking the annotation.
 fn main() {