Rollup merge of #144548 - Oneirical:uncountable-integer-2, r=jieyouxu

Rehome 21 `tests/ui/issues/` tests to other subdirectories under `tests/ui/`

rust-lang/rust#143902 divided into smaller, easier to review chunks.

Part of rust-lang/rust#133895

Methodology:

1. Refer to the previously written `tests/ui/SUMMARY.md`
2. Find an appropriate category for the test, using the original issue thread and the test contents.
3. Add the issue URL at the bottom (not at the top, as that would mess up stderr line numbers)
4. Rename the tests to make their purpose clearer

Inspired by the methodology that ``@Kivooeo`` was using.

r? ``@jieyouxu``
This commit is contained in:
Samuel Tardieu
2025-08-05 03:51:33 +02:00
committed by GitHub
34 changed files with 87 additions and 78 deletions

View File

@@ -1,8 +1,8 @@
// https://github.com/rust-lang/rust/issues/26095
//@ check-pass
#![allow(dead_code)]
#![allow(non_upper_case_globals)]
trait HasNumber<T> {
const Number: usize;
}

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/54044
#![deny(unused_attributes)] //~ NOTE lint level is defined here
#[cold]

View File

@@ -1,5 +1,5 @@
error: attribute should be applied to a function definition
--> $DIR/issue-54044.rs:3:1
--> $DIR/cold-attribute-application-54044.rs:4:1
|
LL | #[cold]
| ^^^^^^^
@@ -9,13 +9,13 @@ LL | struct Foo;
|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
note: the lint level is defined here
--> $DIR/issue-54044.rs:1:9
--> $DIR/cold-attribute-application-54044.rs:2:9
|
LL | #![deny(unused_attributes)]
| ^^^^^^^^^^^^^^^^^
error: attribute should be applied to a function definition
--> $DIR/issue-54044.rs:9:5
--> $DIR/cold-attribute-application-54044.rs:10:5
|
LL | #[cold]
| ^^^^^^^

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/36786
//@ run-pass
// Ensure that types that rely on obligations are autoderefed
// correctly

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/46471
fn main() {
let y = {
let mut z = 0;

View File

@@ -1,5 +1,5 @@
error[E0597]: `z` does not live long enough
--> $DIR/issue-46471-1.rs:4:9
--> $DIR/borrow-checker-lifetime-error-46471.rs:5:9
|
LL | let mut z = 0;
| ----- binding `z` declared here

View File

@@ -0,0 +1,17 @@
// https://github.com/rust-lang/rust/issues/11869
//@ check-pass
#![allow(dead_code)]
struct A {
a: String
}
fn borrow<'a>(binding: &'a A) -> &'a str {
match &*binding.a {
"in" => "in_",
"ref" => "ref_",
ident => ident
}
}
fn main() {}

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/9918
//@ run-pass
pub fn main() {

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/36023
//@ run-pass
#![allow(unused_variables)]
use std::ops::Deref;

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/18058
impl Undefined {}
//~^ ERROR cannot find type `Undefined` in this scope

View File

@@ -1,5 +1,5 @@
error[E0412]: cannot find type `Undefined` in this scope
--> $DIR/issue-18058.rs:1:6
--> $DIR/impl-coherence-error-for-undefined-type-18058.rs:2:6
|
LL | impl Undefined {}
| ^^^^^^^^^ not found in this scope

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/77919
fn main() {
[1; <Multiply<Five, Five>>::VAL];
}

View File

@@ -1,5 +1,5 @@
error[E0412]: cannot find type `PhantomData` in this scope
--> $DIR/issue-77919.rs:9:9
--> $DIR/trait-resolution-error-with-const-generics-77919.rs:10:9
|
LL | _n: PhantomData,
| ^^^^^^^^^^^ not found in this scope
@@ -10,7 +10,7 @@ LL + use std::marker::PhantomData;
|
error[E0412]: cannot find type `VAL` in this scope
--> $DIR/issue-77919.rs:11:63
--> $DIR/trait-resolution-error-with-const-generics-77919.rs:12:63
|
LL | impl<N, M> TypeVal<usize> for Multiply<N, M> where N: TypeVal<VAL> {}
| ^^^ not found in this scope
@@ -21,7 +21,7 @@ LL | impl<N, M, VAL> TypeVal<usize> for Multiply<N, M> where N: TypeVal<VAL> {}
| +++++
error[E0046]: not all trait items implemented, missing: `VAL`
--> $DIR/issue-77919.rs:11:1
--> $DIR/trait-resolution-error-with-const-generics-77919.rs:12:1
|
LL | const VAL: T;
| ------------ `VAL` from trait

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/4734
//@ run-pass
#![allow(dead_code)]
// Ensures that destructors are run for expressions of the form "e;" where

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/36116
// Unnecessary path disambiguator is ok
//@ check-pass

View File

@@ -0,0 +1,20 @@
// https://github.com/rust-lang/rust/issues/12909
//@ run-pass
#![allow(unused_variables)]
use std::collections::HashMap;
fn copy<T: Copy>(&x: &T) -> T {
x
}
fn main() {
let arr = [(1, 1), (2, 2), (3, 3)];
let v1: Vec<&_> = arr.iter().collect();
let v2: Vec<_> = arr.iter().map(copy).collect();
let m1: HashMap<_, _> = arr.iter().map(copy).collect();
let m2: HashMap<isize, _> = arr.iter().map(copy).collect();
let m3: HashMap<_, usize> = arr.iter().map(copy).collect();
}

View File

@@ -1,3 +0,0 @@
extern crate issue_25185_1;
pub use issue_25185_1::rust_dbg_extern_identity_u32;

View File

@@ -1,12 +0,0 @@
//@ run-pass
//@ aux-build:issue-25185-1.rs
//@ aux-build:issue-25185-2.rs
extern crate issue_25185_2;
fn main() {
let x = unsafe {
issue_25185_2::rust_dbg_extern_identity_u32(1)
};
assert_eq!(x, 1);
}

View File

@@ -1,19 +0,0 @@
macro_rules! foo (
() => (
#[derive_Clone] //~ ERROR cannot find attribute `derive_Clone` in this scope
struct T;
);
);
macro_rules! bar (
($e:item) => ($e)
);
foo!();
bar!(
#[derive_Clone] //~ ERROR cannot find attribute `derive_Clone` in this scope
struct S;
);
fn main() {}

View File

@@ -1,25 +0,0 @@
error: cannot find attribute `derive_Clone` in this scope
--> $DIR/issue-32655.rs:3:11
|
LL | #[derive_Clone]
| ^^^^^^^^^^^^ help: an attribute macro with a similar name exists: `derive_const`
...
LL | foo!();
| ------ in this macro invocation
--> $SRC_DIR/core/src/macros/mod.rs:LL:COL
|
= note: similarly named attribute macro `derive_const` defined here
|
= note: this error originates in the macro `foo` (in Nightly builds, run with -Z macro-backtrace for more info)
error: cannot find attribute `derive_Clone` in this scope
--> $DIR/issue-32655.rs:15:7
|
LL | #[derive_Clone]
| ^^^^^^^^^^^^ help: an attribute macro with a similar name exists: `derive_const`
--> $SRC_DIR/core/src/macros/mod.rs:LL:COL
|
= note: similarly named attribute macro `derive_const` defined here
error: aborting due to 2 previous errors

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/15673
//@ run-pass
#![allow(stable_features)]

View File

@@ -0,0 +1,3 @@
extern crate aux_25185_1;
pub use aux_25185_1::rust_dbg_extern_identity_u32;

View File

@@ -0,0 +1,13 @@
// https://github.com/rust-lang/rust/issues/25185
//@ run-pass
//@ aux-build:aux-25185-1.rs
//@ aux-build:aux-25185-2.rs
extern crate aux_25185_2;
fn main() {
let x = unsafe {
aux_25185_2::rust_dbg_extern_identity_u32(1)
};
assert_eq!(x, 1);
}

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/26093
macro_rules! not_a_place {
($thing:expr) => {
$thing = 42;

View File

@@ -1,5 +1,5 @@
error[E0070]: invalid left-hand side of assignment
--> $DIR/issue-26093.rs:3:16
--> $DIR/invalid-assignment-in-macro-26093.rs:4:16
|
LL | $thing = 42;
| ^
@@ -13,7 +13,7 @@ LL | not_a_place!(99);
= note: this error originates in the macro `not_a_place` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0067]: invalid left-hand side of assignment
--> $DIR/issue-26093.rs:5:16
--> $DIR/invalid-assignment-in-macro-26093.rs:6:16
|
LL | $thing += 42;
| ^^

View File

@@ -2,6 +2,7 @@
/*
#7519 ICE pattern matching unit in function argument
https://github.com/rust-lang/rust/issues/7519
*/
fn foo(():()) { }

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/22434
pub trait Foo {
type A;
}

View File

@@ -1,5 +1,5 @@
error[E0191]: the value of the associated type `A` in `Foo` must be specified
--> $DIR/issue-22434.rs:5:23
--> $DIR/missing-associated-type-in-trait-object-22434.rs:6:23
|
LL | type A;
| ------ `A` defined here

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/48276
// Regression test for issue #48276 - ICE when self type does not match what is
// required by a trait and regions are involved.

View File

@@ -1,5 +1,5 @@
error[E0185]: method `from` has a `&self` declaration in the impl, but not in the trait
--> $DIR/issue-48276.rs:11:5
--> $DIR/incorrect-self-type-in-trait-impl-48276.rs:12:5
|
LL | fn from(a: A) -> Self;
| ---------------------- trait method declared without `&self`
@@ -8,7 +8,7 @@ LL | fn from(self: &'a Self) -> &'b str {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&self` used in impl
error[E0185]: method `from` has a `&self` declaration in the impl, but not in the trait
--> $DIR/issue-48276.rs:20:5
--> $DIR/incorrect-self-type-in-trait-impl-48276.rs:21:5
|
LL | fn from(&self) -> B {
| ^^^^^^^^^^^^^^^^^^^ `&self` used in impl
@@ -16,7 +16,7 @@ LL | fn from(&self) -> B {
= note: `from` from trait: `fn(T) -> Self`
error[E0185]: method `from` has a `&self` declaration in the impl, but not in the trait
--> $DIR/issue-48276.rs:27:5
--> $DIR/incorrect-self-type-in-trait-impl-48276.rs:28:5
|
LL | fn from(&self) -> &'static str {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&self` used in impl

View File

@@ -1,3 +1,4 @@
// https://github.com/rust-lang/rust/issues/32995
fn main() {
{ fn f<X: ::std::marker()::Send>() {} }
//~^ ERROR parenthesized type parameters may only be used with a `Fn` trait

View File

@@ -1,17 +1,17 @@
error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
--> $DIR/issue-32995-2.rs:2:22
--> $DIR/parenthesized-type-parameters-error-32995.rs:3:22
|
LL | { fn f<X: ::std::marker()::Send>() {} }
| ^^^^^^^^ only `Fn` traits may use parentheses
error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
--> $DIR/issue-32995-2.rs:5:29
--> $DIR/parenthesized-type-parameters-error-32995.rs:6:29
|
LL | { fn f() -> impl ::std::marker()::Send { } }
| ^^^^^^^^ only `Fn` traits may use parentheses
error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
--> $DIR/issue-32995-2.rs:12:13
--> $DIR/parenthesized-type-parameters-error-32995.rs:13:13
|
LL | impl ::std::marker()::Copy for X {}
| ^^^^^^^^ only `Fn` traits may use parentheses

View File

@@ -1,8 +1,8 @@
// https://github.com/rust-lang/rust/issues/18685
//@ run-pass
// Test that the self param space is not used in a conflicting
// manner by unboxed closures within a default method on a trait
trait Tr {
fn foo(&self);