about summary refs log tree commit diff
diff options
context:
space:
mode:
authorKivooeo <Kivooeo123@gmail.com>2025-06-28 22:59:17 +0500
committerKivooeo <Kivooeo123@gmail.com>2025-06-30 12:45:47 +0500
commitc240566561b1b819e102618dcf9347b1745f3c92 (patch)
tree039f041734cae211d5c87467fc4b7f5c27ad6c6a
parent3d81af8c55cd422910c4560f6cdc03722f4530c7 (diff)
downloadrust-c240566561b1b819e102618dcf9347b1745f3c92.tar.gz
rust-c240566561b1b819e102618dcf9347b1745f3c92.zip
cleaned up some tests
-rw-r--r--tests/ui/codegen/maximal-hir-to-mir-coverage-flag.rs12
-rw-r--r--tests/ui/lint/missing-debug-implementations-lint.rs8
-rw-r--r--tests/ui/lint/missing-debug-implementations-lint.stderr6
-rw-r--r--tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.rs8
-rw-r--r--tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.stderr4
-rw-r--r--tests/ui/traits/maybe-trait-bounds-forbidden-locations.rs9
-rw-r--r--tests/ui/traits/maybe-trait-bounds-forbidden-locations.stderr6
-rw-r--r--tests/ui/type-alias-enum-variants/module-type-args-error.rs7
-rw-r--r--tests/ui/type-alias-enum-variants/module-type-args-error.stderr2
9 files changed, 45 insertions, 17 deletions
diff --git a/tests/ui/codegen/maximal-hir-to-mir-coverage-flag.rs b/tests/ui/codegen/maximal-hir-to-mir-coverage-flag.rs
index e57c83d007e..64c31beba28 100644
--- a/tests/ui/codegen/maximal-hir-to-mir-coverage-flag.rs
+++ b/tests/ui/codegen/maximal-hir-to-mir-coverage-flag.rs
@@ -1,10 +1,12 @@
+//! Test that -Z maximal-hir-to-mir-coverage flag is accepted.
+//!
+//! Original PR: https://github.com/rust-lang/rust/pull/105286
+
 //@ compile-flags: -Zmaximal-hir-to-mir-coverage
 //@ run-pass
 
-// Just making sure this flag is accepted and doesn't crash the compiler
-
 fn main() {
-  let x = 1;
-  let y = x + 1;
-  println!("{y}");
+    let x = 1;
+    let y = x + 1;
+    println!("{y}");
 }
diff --git a/tests/ui/lint/missing-debug-implementations-lint.rs b/tests/ui/lint/missing-debug-implementations-lint.rs
index 3abc0706887..8a93f052f9c 100644
--- a/tests/ui/lint/missing-debug-implementations-lint.rs
+++ b/tests/ui/lint/missing-debug-implementations-lint.rs
@@ -1,3 +1,7 @@
+//! Test the `missing_debug_implementations` lint that warns about public types without Debug.
+//!
+//! See https://github.com/rust-lang/rust/issues/20855
+
 //@ compile-flags: --crate-type lib
 #![deny(missing_debug_implementations)]
 #![allow(unused)]
@@ -10,7 +14,6 @@ pub enum A {} //~ ERROR type does not implement `Debug`
 pub enum B {}
 
 pub enum C {}
-
 impl fmt::Debug for C {
     fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
         Ok(())
@@ -23,15 +26,14 @@ pub struct Foo; //~ ERROR type does not implement `Debug`
 pub struct Bar;
 
 pub struct Baz;
-
 impl fmt::Debug for Baz {
     fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
         Ok(())
     }
 }
 
+// Private types should not trigger the lint
 struct PrivateStruct;
-
 enum PrivateEnum {}
 
 #[derive(Debug)]
diff --git a/tests/ui/lint/missing-debug-implementations-lint.stderr b/tests/ui/lint/missing-debug-implementations-lint.stderr
index 0538f207b44..288ab981034 100644
--- a/tests/ui/lint/missing-debug-implementations-lint.stderr
+++ b/tests/ui/lint/missing-debug-implementations-lint.stderr
@@ -1,17 +1,17 @@
 error: type does not implement `Debug`; consider adding `#[derive(Debug)]` or a manual implementation
-  --> $DIR/missing_debug_impls.rs:7:1
+  --> $DIR/missing-debug-implementations-lint.rs:11:1
    |
 LL | pub enum A {}
    | ^^^^^^^^^^^^^
    |
 note: the lint level is defined here
-  --> $DIR/missing_debug_impls.rs:2:9
+  --> $DIR/missing-debug-implementations-lint.rs:6:9
    |
 LL | #![deny(missing_debug_implementations)]
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 error: type does not implement `Debug`; consider adding `#[derive(Debug)]` or a manual implementation
-  --> $DIR/missing_debug_impls.rs:20:1
+  --> $DIR/missing-debug-implementations-lint.rs:23:1
    |
 LL | pub struct Foo;
    | ^^^^^^^^^^^^^^^
diff --git a/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.rs b/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.rs
index 85a903e2453..e28ca3e55b5 100644
--- a/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.rs
+++ b/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.rs
@@ -1,7 +1,15 @@
+//! This test checks that when there's a type mismatch between a function item and
+//! a function pointer, the error message focuses on the actual type difference
+//! (return types, argument types) rather than the confusing "pointer vs item" distinction.
+//!
+//! See https://github.com/rust-lang/rust/issues/127263
+
 fn bar() {}
+
 fn foo(x: i32) -> u32 {
     0
 }
+
 fn main() {
     let b: fn() -> u32 = bar; //~ ERROR mismatched types [E0308]
     let f: fn(i32) = foo; //~ ERROR mismatched types [E0308]
diff --git a/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.stderr b/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.stderr
index 35b86114f16..8d63f2ea2d3 100644
--- a/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.stderr
+++ b/tests/ui/mismatched_types/fn-pointer-mismatch-diagnostics.stderr
@@ -1,5 +1,5 @@
 error[E0308]: mismatched types
-  --> $DIR/method-output-diff-issue-127263.rs:6:26
+  --> $DIR/fn-pointer-mismatch-diagnostics.rs:14:26
    |
 LL |     let b: fn() -> u32 = bar;
    |            -----------   ^^^ expected fn pointer, found fn item
@@ -10,7 +10,7 @@ LL |     let b: fn() -> u32 = bar;
                  found fn item `fn() -> () {bar}`
 
 error[E0308]: mismatched types
-  --> $DIR/method-output-diff-issue-127263.rs:7:22
+  --> $DIR/fn-pointer-mismatch-diagnostics.rs:15:22
    |
 LL |     let f: fn(i32) = foo;
    |            -------   ^^^ expected fn pointer, found fn item
diff --git a/tests/ui/traits/maybe-trait-bounds-forbidden-locations.rs b/tests/ui/traits/maybe-trait-bounds-forbidden-locations.rs
index 02ed45c656f..04963c98765 100644
--- a/tests/ui/traits/maybe-trait-bounds-forbidden-locations.rs
+++ b/tests/ui/traits/maybe-trait-bounds-forbidden-locations.rs
@@ -1,3 +1,12 @@
+//! Test that ?Trait bounds are forbidden in supertraits and trait object types.
+//!
+//! While `?Sized` and other maybe bounds are allowed in type parameter bounds and where clauses,
+//! they are explicitly forbidden in certain syntactic positions:
+//! - As supertraits in trait definitions
+//! - In trait object type expressions
+//!
+//! See https://github.com/rust-lang/rust/issues/20503
+
 trait Tr: ?Sized {}
 //~^ ERROR `?Trait` is not permitted in supertraits
 
diff --git a/tests/ui/traits/maybe-trait-bounds-forbidden-locations.stderr b/tests/ui/traits/maybe-trait-bounds-forbidden-locations.stderr
index 230d11fd0ae..bd0baa580bd 100644
--- a/tests/ui/traits/maybe-trait-bounds-forbidden-locations.stderr
+++ b/tests/ui/traits/maybe-trait-bounds-forbidden-locations.stderr
@@ -1,5 +1,5 @@
 error[E0658]: `?Trait` is not permitted in supertraits
-  --> $DIR/maybe-bounds.rs:1:11
+  --> $DIR/maybe-trait-bounds-forbidden-locations.rs:10:11
    |
 LL | trait Tr: ?Sized {}
    |           ^^^^^^
@@ -9,7 +9,7 @@ LL | trait Tr: ?Sized {}
    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
 
 error[E0658]: `?Trait` is not permitted in trait object types
-  --> $DIR/maybe-bounds.rs:4:20
+  --> $DIR/maybe-trait-bounds-forbidden-locations.rs:13:20
    |
 LL | type A1 = dyn Tr + (?Sized);
    |                    ^^^^^^^^
@@ -18,7 +18,7 @@ LL | type A1 = dyn Tr + (?Sized);
    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
 
 error[E0658]: `?Trait` is not permitted in trait object types
-  --> $DIR/maybe-bounds.rs:6:28
+  --> $DIR/maybe-trait-bounds-forbidden-locations.rs:15:28
    |
 LL | type A2 = dyn for<'a> Tr + (?Sized);
    |                            ^^^^^^^^
diff --git a/tests/ui/type-alias-enum-variants/module-type-args-error.rs b/tests/ui/type-alias-enum-variants/module-type-args-error.rs
index 959024c46f4..9f7dae4f4f5 100644
--- a/tests/ui/type-alias-enum-variants/module-type-args-error.rs
+++ b/tests/ui/type-alias-enum-variants/module-type-args-error.rs
@@ -1,9 +1,16 @@
+//! Test that type arguments are properly rejected on modules.
+//!
+//! Related PR: https://github.com/rust-lang/rust/pull/56225 (RFC 2338 implementation)
+
 mod Mod {
     pub struct FakeVariant<T>(pub T);
 }
 
 fn main() {
+    // This should work fine - normal generic struct constructor
     Mod::FakeVariant::<i32>(0);
+
+    // This should error - type arguments not allowed on modules
     Mod::<i32>::FakeVariant(0);
     //~^ ERROR type arguments are not allowed on module `Mod` [E0109]
 }
diff --git a/tests/ui/type-alias-enum-variants/module-type-args-error.stderr b/tests/ui/type-alias-enum-variants/module-type-args-error.stderr
index 92d972eba42..4c59d19eaa7 100644
--- a/tests/ui/type-alias-enum-variants/module-type-args-error.stderr
+++ b/tests/ui/type-alias-enum-variants/module-type-args-error.stderr
@@ -1,5 +1,5 @@
 error[E0109]: type arguments are not allowed on module `Mod`
-  --> $DIR/mod-subitem-as-enum-variant.rs:7:11
+  --> $DIR/module-type-args-error.rs:14:11
    |
 LL |     Mod::<i32>::FakeVariant(0);
    |     ---   ^^^ type argument not allowed