diff --git a/src/test/compile-fail/issue-26548.rs b/src/test/compile-fail/issue-26548.rs index aab674fbb1a44..fc4f3d1fb53de 100644 --- a/src/test/compile-fail/issue-26548.rs +++ b/src/test/compile-fail/issue-26548.rs @@ -8,9 +8,10 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern: cycle detected when computing layout of -// note-pattern: ...which requires computing layout of -// note-pattern: ...which again requires computing layout of +//~^^^^^^^^^^ ERROR cycle detected when computing layout of +//~| NOTE ...which requires computing layout of +//~| NOTE ...which again requires computing layout of +//~| NOTE cycle used when compile_codegen_unit trait Mirror { type It: ?Sized; } impl Mirror for T { type It = Self; } diff --git a/src/test/compile-fail/issue-10176.rs b/src/test/ui/issue-10176.rs similarity index 100% rename from src/test/compile-fail/issue-10176.rs rename to src/test/ui/issue-10176.rs diff --git a/src/test/ui/issue-10176.stderr b/src/test/ui/issue-10176.stderr new file mode 100644 index 0000000000000..02e0b899b3f88 --- /dev/null +++ b/src/test/ui/issue-10176.stderr @@ -0,0 +1,14 @@ +error[E0308]: mismatched types + --> $DIR/issue-10176.rs:12:5 + | +LL | fn f() -> isize { + | ----- expected `isize` because of return type +LL | (return 1, return 2) + | ^^^^^^^^^^^^^^^^^^^^ expected isize, found tuple + | + = note: expected type `isize` + found type `(!, !)` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-10200.rs b/src/test/ui/issue-10200.rs similarity index 100% rename from src/test/compile-fail/issue-10200.rs rename to src/test/ui/issue-10200.rs diff --git a/src/test/ui/issue-10200.stderr b/src/test/ui/issue-10200.stderr new file mode 100644 index 0000000000000..4eb0782762857 --- /dev/null +++ b/src/test/ui/issue-10200.stderr @@ -0,0 +1,9 @@ +error[E0532]: expected tuple struct/variant, found function `foo` + --> $DIR/issue-10200.rs:16:9 + | +LL | foo(x) //~ ERROR expected tuple struct/variant, found function `foo` + | ^^^ did you mean `Foo`? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0532`. diff --git a/src/test/ui/issue-10291.nll.stderr b/src/test/ui/issue-10291.nll.stderr new file mode 100644 index 0000000000000..1358fe010b443 --- /dev/null +++ b/src/test/ui/issue-10291.nll.stderr @@ -0,0 +1,14 @@ +warning: not reporting region error due to nll + --> $DIR/issue-10291.rs:13:9 + | +LL | x //~ ERROR E0312 + | ^ + +error: unsatisfied lifetime constraints + --> $DIR/issue-10291.rs:12:5 + | +LL | drop:: FnMut(&'z isize) -> &'z isize>>(Box::new(|z| { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ free region requires that `'x` must outlive `'static` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-10291.rs b/src/test/ui/issue-10291.rs similarity index 100% rename from src/test/compile-fail/issue-10291.rs rename to src/test/ui/issue-10291.rs diff --git a/src/test/ui/issue-10291.stderr b/src/test/ui/issue-10291.stderr new file mode 100644 index 0000000000000..af5929782f627 --- /dev/null +++ b/src/test/ui/issue-10291.stderr @@ -0,0 +1,23 @@ +error[E0312]: lifetime of reference outlives lifetime of borrowed content... + --> $DIR/issue-10291.rs:13:9 + | +LL | x //~ ERROR E0312 + | ^ + | +note: ...the reference is valid for the anonymous lifetime #2 defined on the body at 12:65... + --> $DIR/issue-10291.rs:12:65 + | +LL | drop:: FnMut(&'z isize) -> &'z isize>>(Box::new(|z| { + | _________________________________________________________________^ +LL | | x //~ ERROR E0312 +LL | | })); + | |_____^ +note: ...but the borrowed content is only valid for the lifetime 'x as defined on the function body at 11:9 + --> $DIR/issue-10291.rs:11:9 + | +LL | fn test<'x>(x: &'x isize) { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0312`. diff --git a/src/test/ui/issue-10398.nll.stderr b/src/test/ui/issue-10398.nll.stderr new file mode 100644 index 0000000000000..d13e843b94b56 --- /dev/null +++ b/src/test/ui/issue-10398.nll.stderr @@ -0,0 +1,13 @@ +error[E0382]: use of moved value: `x` + --> $DIR/issue-10398.rs:17:14 + | +LL | let _a = x; + | - value moved here +LL | drop(x); + | ^ value used here after move + | + = note: move occurs because `x` has type `std::boxed::Box`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-10398.rs b/src/test/ui/issue-10398.rs similarity index 100% rename from src/test/compile-fail/issue-10398.rs rename to src/test/ui/issue-10398.rs diff --git a/src/test/ui/issue-10398.stderr b/src/test/ui/issue-10398.stderr new file mode 100644 index 0000000000000..e3b816df3f4b6 --- /dev/null +++ b/src/test/ui/issue-10398.stderr @@ -0,0 +1,13 @@ +error[E0382]: use of moved value: `x` + --> $DIR/issue-10398.rs:17:14 + | +LL | let _a = x; + | -- value moved here +LL | drop(x); + | ^ value used here after move + | + = note: move occurs because `x` has type `std::boxed::Box`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-10401.rs b/src/test/ui/issue-10401.rs similarity index 100% rename from src/test/compile-fail/issue-10401.rs rename to src/test/ui/issue-10401.rs diff --git a/src/test/ui/issue-10401.stderr b/src/test/ui/issue-10401.stderr new file mode 100644 index 0000000000000..8c91c11a67c33 --- /dev/null +++ b/src/test/ui/issue-10401.stderr @@ -0,0 +1,16 @@ +error[E0368]: binary assignment operation `+=` cannot be applied to type `&str` + --> $DIR/issue-10401.rs:13:5 + | +LL | a += { "b" }; + | -^^^^^^^^^^^ + | | + | cannot use `+=` on type `&str` + | `+` can't be used to concatenate two `&str` strings +help: `to_owned()` can be used to create an owned `String` from a string reference. String concatenation appends the string on the right to the string on the left and may require reallocation. This requires ownership of the string on the left + | +LL | a.to_owned() += { "b" }; + | ^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0368`. diff --git a/src/test/compile-fail/issue-10412.rs b/src/test/ui/issue-10412.rs similarity index 100% rename from src/test/compile-fail/issue-10412.rs rename to src/test/ui/issue-10412.rs diff --git a/src/test/ui/issue-10412.stderr b/src/test/ui/issue-10412.stderr new file mode 100644 index 0000000000000..7f2f2dbf5091a --- /dev/null +++ b/src/test/ui/issue-10412.stderr @@ -0,0 +1,51 @@ +error: lifetimes cannot use keyword names + --> $DIR/issue-10412.rs:11:20 + | +LL | trait Serializable<'self, T> { //~ ERROR lifetimes cannot use keyword names + | ^^^^^ + +error: lifetimes cannot use keyword names + --> $DIR/issue-10412.rs:12:25 + | +LL | fn serialize(val : &'self T) -> Vec; //~ ERROR lifetimes cannot use keyword names + | ^^^^^ + +error: lifetimes cannot use keyword names + --> $DIR/issue-10412.rs:13:38 + | +LL | fn deserialize(repr : &[u8]) -> &'self T; //~ ERROR lifetimes cannot use keyword names + | ^^^^^ + +error: lifetimes cannot use keyword names + --> $DIR/issue-10412.rs:16:6 + | +LL | impl<'self> Serializable for &'self str { //~ ERROR lifetimes cannot use keyword names + | ^^^^^ + +error: lifetimes cannot use keyword names + --> $DIR/issue-10412.rs:16:36 + | +LL | impl<'self> Serializable for &'self str { //~ ERROR lifetimes cannot use keyword names + | ^^^^^ + +error: lifetimes cannot use keyword names + --> $DIR/issue-10412.rs:19:25 + | +LL | fn serialize(val : &'self str) -> Vec { //~ ERROR lifetimes cannot use keyword names + | ^^^^^ + +error: lifetimes cannot use keyword names + --> $DIR/issue-10412.rs:22:37 + | +LL | fn deserialize(repr: &[u8]) -> &'self str { //~ ERROR lifetimes cannot use keyword names + | ^^^^^ + +error[E0106]: missing lifetime specifier + --> $DIR/issue-10412.rs:16:13 + | +LL | impl<'self> Serializable for &'self str { //~ ERROR lifetimes cannot use keyword names + | ^^^^^^^^^^^^^^^^^ expected lifetime parameter + +error: aborting due to 8 previous errors + +For more information about this error, try `rustc --explain E0106`. diff --git a/src/test/compile-fail/issue-10465.rs b/src/test/ui/issue-10465.rs similarity index 100% rename from src/test/compile-fail/issue-10465.rs rename to src/test/ui/issue-10465.rs diff --git a/src/test/ui/issue-10465.stderr b/src/test/ui/issue-10465.stderr new file mode 100644 index 0000000000000..add4b832e8322 --- /dev/null +++ b/src/test/ui/issue-10465.stderr @@ -0,0 +1,13 @@ +error[E0599]: no method named `foo` found for type `&b::B` in the current scope + --> $DIR/issue-10465.rs:27:15 + | +LL | b.foo(); //~ ERROR: no method named `foo` found + | ^^^ + | + = help: items from traits can only be used if the trait is in scope + = note: the following trait is implemented but not in scope, perhaps add a `use` for it: + `use a::A;` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-10536.rs b/src/test/ui/issue-10536.rs similarity index 88% rename from src/test/compile-fail/issue-10536.rs rename to src/test/ui/issue-10536.rs index 3b0ea55cfa9c1..2b71fb5c67f7a 100644 --- a/src/test/compile-fail/issue-10536.rs +++ b/src/test/ui/issue-10536.rs @@ -24,8 +24,10 @@ pub fn main() { foo!(); assert!({one! two()}); + //~^ ERROR macros that expand to items must either be surrounded with braces or followed by a // regardless of whether nested macro_rules works, the following should at // least throw a conventional error. assert!({one! two}); + //~^ ERROR expected } diff --git a/src/test/ui/issue-10536.stderr b/src/test/ui/issue-10536.stderr new file mode 100644 index 0000000000000..ba404d0dd3f63 --- /dev/null +++ b/src/test/ui/issue-10536.stderr @@ -0,0 +1,14 @@ +error: macros that expand to items must either be surrounded with braces or followed by a semicolon + --> $DIR/issue-10536.rs:26:22 + | +LL | assert!({one! two()}); + | ^^ + +error: expected `(` or `{`, found `}` + --> $DIR/issue-10536.rs:31:22 + | +LL | assert!({one! two}); + | ^ expected `(` or `{` + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-10545.rs b/src/test/ui/issue-10545.rs similarity index 100% rename from src/test/compile-fail/issue-10545.rs rename to src/test/ui/issue-10545.rs diff --git a/src/test/ui/issue-10545.stderr b/src/test/ui/issue-10545.stderr new file mode 100644 index 0000000000000..28f95dff3bc0a --- /dev/null +++ b/src/test/ui/issue-10545.stderr @@ -0,0 +1,9 @@ +error[E0603]: struct `S` is private + --> $DIR/issue-10545.rs:17:11 + | +LL | fn foo(_: a::S) { //~ ERROR: struct `S` is private + | ^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0603`. diff --git a/src/test/compile-fail/issue-10656.rs b/src/test/ui/issue-10656.rs similarity index 90% rename from src/test/compile-fail/issue-10656.rs rename to src/test/ui/issue-10656.rs index 0b335a526a4e3..7fd5a0d13485b 100644 --- a/src/test/compile-fail/issue-10656.rs +++ b/src/test/ui/issue-10656.rs @@ -8,7 +8,6 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern: missing documentation for crate - #![deny(missing_docs)] #![crate_type="lib"] +//~^^ ERROR missing documentation for crate diff --git a/src/test/ui/issue-10656.stderr b/src/test/ui/issue-10656.stderr new file mode 100644 index 0000000000000..d67463f02636b --- /dev/null +++ b/src/test/ui/issue-10656.stderr @@ -0,0 +1,15 @@ +error: missing documentation for crate + --> $DIR/issue-10656.rs:11:1 + | +LL | / #![deny(missing_docs)] +LL | | #![crate_type="lib"] + | |____________________^ + | +note: lint level defined here + --> $DIR/issue-10656.rs:11:9 + | +LL | #![deny(missing_docs)] + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-10764.rs b/src/test/ui/issue-10764.rs similarity index 100% rename from src/test/compile-fail/issue-10764.rs rename to src/test/ui/issue-10764.rs diff --git a/src/test/ui/issue-10764.stderr b/src/test/ui/issue-10764.stderr new file mode 100644 index 0000000000000..6aacbef089720 --- /dev/null +++ b/src/test/ui/issue-10764.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-10764.rs:14:15 + | +LL | fn main() { f(bar) } + | ^^^ expected "Rust" fn, found "C" fn + | + = note: expected type `fn()` + found type `extern "C" fn() {bar}` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-10877.rs b/src/test/ui/issue-10877.rs similarity index 100% rename from src/test/compile-fail/issue-10877.rs rename to src/test/ui/issue-10877.rs diff --git a/src/test/ui/issue-10877.stderr b/src/test/ui/issue-10877.stderr new file mode 100644 index 0000000000000..6db0bf6dc65fb --- /dev/null +++ b/src/test/ui/issue-10877.stderr @@ -0,0 +1,27 @@ +error[E0130]: patterns aren't allowed in foreign function declarations + --> $DIR/issue-10877.rs:13:12 + | +LL | fn foo(1: ()); + | ^ pattern not allowed in foreign function + +error[E0130]: patterns aren't allowed in foreign function declarations + --> $DIR/issue-10877.rs:15:12 + | +LL | fn bar((): isize); + | ^^ pattern not allowed in foreign function + +error[E0130]: patterns aren't allowed in foreign function declarations + --> $DIR/issue-10877.rs:17:12 + | +LL | fn baz(Foo { x }: isize); + | ^^^^^^^^^ pattern not allowed in foreign function + +error[E0130]: patterns aren't allowed in foreign function declarations + --> $DIR/issue-10877.rs:19:12 + | +LL | fn qux((x,y): ()); + | ^^^^^ pattern not allowed in foreign function + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0130`. diff --git a/src/test/compile-fail/issue-10991.rs b/src/test/ui/issue-10991.rs similarity index 100% rename from src/test/compile-fail/issue-10991.rs rename to src/test/ui/issue-10991.rs diff --git a/src/test/ui/issue-10991.stderr b/src/test/ui/issue-10991.stderr new file mode 100644 index 0000000000000..3ae3bbe06cbf7 --- /dev/null +++ b/src/test/ui/issue-10991.stderr @@ -0,0 +1,11 @@ +error[E0605]: non-primitive cast: `()` as `usize` + --> $DIR/issue-10991.rs:13:14 + | +LL | let _t = nil as usize; //~ ERROR: non-primitive cast: `()` as `usize` + | ^^^^^^^^^^^^ + | + = note: an `as` expression can only be used to convert between primitive types. Consider using the `From` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0605`. diff --git a/src/test/compile-fail/issue-11154.rs b/src/test/ui/issue-11154.rs similarity index 100% rename from src/test/compile-fail/issue-11154.rs rename to src/test/ui/issue-11154.rs diff --git a/src/test/ui/issue-11154.stderr b/src/test/ui/issue-11154.stderr new file mode 100644 index 0000000000000..8eec8b37c85ec --- /dev/null +++ b/src/test/ui/issue-11154.stderr @@ -0,0 +1,6 @@ +error: cannot prefer dynamic linking when performing LTO + +note: only 'staticlib', 'bin', and 'cdylib' outputs are supported with LTO + +error: aborting due to previous error + diff --git a/src/test/ui/issue-11192.nll.stderr b/src/test/ui/issue-11192.nll.stderr new file mode 100644 index 0000000000000..d5a67083a23b8 --- /dev/null +++ b/src/test/ui/issue-11192.nll.stderr @@ -0,0 +1,18 @@ +error[E0502]: cannot borrow `*ptr` as immutable because it is also borrowed as mutable + --> $DIR/issue-11192.rs:30:10 + | +LL | let mut test = |foo: &Foo| { + | ----------- mutable borrow occurs here +LL | println!("access {}", foo.x); +LL | ptr = box Foo { x: ptr.x + 1 }; + | --- previous borrow occurs due to use of `ptr` in closure +... +LL | test(&*ptr); + | -----^^^^^- + | | | + | | immutable borrow occurs here + | borrow later used here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0502`. diff --git a/src/test/compile-fail/issue-11192.rs b/src/test/ui/issue-11192.rs similarity index 100% rename from src/test/compile-fail/issue-11192.rs rename to src/test/ui/issue-11192.rs diff --git a/src/test/ui/issue-11192.stderr b/src/test/ui/issue-11192.stderr new file mode 100644 index 0000000000000..e9853ac0ca827 --- /dev/null +++ b/src/test/ui/issue-11192.stderr @@ -0,0 +1,18 @@ +error[E0502]: cannot borrow `*ptr` as immutable because `ptr` is also borrowed as mutable + --> $DIR/issue-11192.rs:30:11 + | +LL | let mut test = |foo: &Foo| { + | ----------- mutable borrow occurs here +LL | println!("access {}", foo.x); +LL | ptr = box Foo { x: ptr.x + 1 }; + | --- previous borrow occurs due to use of `ptr` in closure +... +LL | test(&*ptr); + | ^^^^ immutable borrow occurs here +LL | //~^ ERROR: cannot borrow `*ptr` as immutable +LL | } + | - mutable borrow ends here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0502`. diff --git a/src/test/compile-fail/issue-11374.rs b/src/test/ui/issue-11374.rs similarity index 100% rename from src/test/compile-fail/issue-11374.rs rename to src/test/ui/issue-11374.rs diff --git a/src/test/ui/issue-11374.stderr b/src/test/ui/issue-11374.stderr new file mode 100644 index 0000000000000..3465069129bf5 --- /dev/null +++ b/src/test/ui/issue-11374.stderr @@ -0,0 +1,15 @@ +error[E0308]: mismatched types + --> $DIR/issue-11374.rs:36:15 + | +LL | c.read_to(v); //~ ERROR E0308 + | ^ + | | + | expected &mut [u8], found struct `std::vec::Vec` + | help: consider mutably borrowing here: `&mut v` + | + = note: expected type `&mut [u8]` + found type `std::vec::Vec<_>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/issue-11493.ast.stderr b/src/test/ui/issue-11493.ast.stderr new file mode 100644 index 0000000000000..99b996387e79b --- /dev/null +++ b/src/test/ui/issue-11493.ast.stderr @@ -0,0 +1,16 @@ +error[E0597]: borrowed value does not live long enough (Ast) + --> $DIR/issue-11493.rs:20:35 + | +LL | let y = x.as_ref().unwrap_or(&id(5)); + | ^^^^^ - temporary value dropped here while still borrowed + | | + | temporary value does not live long enough +... +LL | } + | - temporary value needs to live until here + | + = note: consider using a `let` binding to increase its lifetime + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/ui/issue-11493.mir.stderr b/src/test/ui/issue-11493.mir.stderr new file mode 100644 index 0000000000000..99b996387e79b --- /dev/null +++ b/src/test/ui/issue-11493.mir.stderr @@ -0,0 +1,16 @@ +error[E0597]: borrowed value does not live long enough (Ast) + --> $DIR/issue-11493.rs:20:35 + | +LL | let y = x.as_ref().unwrap_or(&id(5)); + | ^^^^^ - temporary value dropped here while still borrowed + | | + | temporary value does not live long enough +... +LL | } + | - temporary value needs to live until here + | + = note: consider using a `let` binding to increase its lifetime + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-11493.rs b/src/test/ui/issue-11493.rs similarity index 67% rename from src/test/compile-fail/issue-11493.rs rename to src/test/ui/issue-11493.rs index 3045c06ca4c18..80ecc24543e17 100644 --- a/src/test/compile-fail/issue-11493.rs +++ b/src/test/ui/issue-11493.rs @@ -9,10 +9,16 @@ // except according to those terms. // This file must never have a trailing newline +// +// revisions: ast mir +// compile-flags: -Z borrowck=compare fn id(x: T) -> T { x } fn main() { let x = Some(3); - let y = x.as_ref().unwrap_or(&id(5)); //~ ERROR: borrowed value does not live long enough + let y = x.as_ref().unwrap_or(&id(5)); + //[ast]~^ ERROR borrowed value does not live long enough (Ast) + //[mir]~^^ ERROR borrowed value does not live long enough (Ast) + // This actually passes in mir } diff --git a/src/test/compile-fail/issue-11515.rs b/src/test/ui/issue-11515.rs similarity index 100% rename from src/test/compile-fail/issue-11515.rs rename to src/test/ui/issue-11515.rs diff --git a/src/test/ui/issue-11515.stderr b/src/test/ui/issue-11515.stderr new file mode 100644 index 0000000000000..25e2a45438e84 --- /dev/null +++ b/src/test/ui/issue-11515.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-11515.rs:19:33 + | +LL | let test = box Test { func: closure }; //~ ERROR mismatched types + | ^^^^^^^ expected trait `std::ops::FnMut`, found trait `std::ops::Fn` + | + = note: expected type `std::boxed::Box<(dyn std::ops::FnMut() + 'static)>` + found type `std::boxed::Box<(dyn std::ops::Fn() + 'static)>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-11681.rs b/src/test/ui/issue-11681.rs similarity index 100% rename from src/test/compile-fail/issue-11681.rs rename to src/test/ui/issue-11681.rs diff --git a/src/test/ui/issue-11681.stderr b/src/test/ui/issue-11681.stderr new file mode 100644 index 0000000000000..ef3d24c6657be --- /dev/null +++ b/src/test/ui/issue-11681.stderr @@ -0,0 +1,18 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-11681.rs:22:20 + | +LL | let testValue = &Test; //~ ERROR borrowed value does not live long enough + | ^^^^ temporary value does not live long enough +LL | return testValue; +LL | } + | - temporary value only lives until here + | +note: borrowed value must be valid for the lifetime 'a as defined on the function body at 21:15... + --> $DIR/issue-11681.rs:21:15 + | +LL | fn createTest<'a>() -> &'a Test { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-11692-1.rs b/src/test/ui/issue-11692-1.rs similarity index 100% rename from src/test/compile-fail/issue-11692-1.rs rename to src/test/ui/issue-11692-1.rs diff --git a/src/test/ui/issue-11692-1.stderr b/src/test/ui/issue-11692-1.stderr new file mode 100644 index 0000000000000..daf53af3ace99 --- /dev/null +++ b/src/test/ui/issue-11692-1.stderr @@ -0,0 +1,8 @@ +error: format argument must be a string literal. + --> $DIR/issue-11692-1.rs:12:12 + | +LL | print!(test!()); + | ^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-11692-2.rs b/src/test/ui/issue-11692-2.rs similarity index 100% rename from src/test/compile-fail/issue-11692-2.rs rename to src/test/ui/issue-11692-2.rs diff --git a/src/test/ui/issue-11692-2.stderr b/src/test/ui/issue-11692-2.stderr new file mode 100644 index 0000000000000..51d6041e92220 --- /dev/null +++ b/src/test/ui/issue-11692-2.stderr @@ -0,0 +1,8 @@ +error: cannot find macro `test!` in this scope + --> $DIR/issue-11692-2.rs:12:13 + | +LL | concat!(test!()); + | ^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-11740.rs b/src/test/ui/issue-11740.rs similarity index 100% rename from src/test/compile-fail/issue-11740.rs rename to src/test/ui/issue-11740.rs diff --git a/src/test/ui/issue-11740.stderr b/src/test/ui/issue-11740.stderr new file mode 100644 index 0000000000000..a1913e0057ca7 --- /dev/null +++ b/src/test/ui/issue-11740.stderr @@ -0,0 +1,11 @@ +error: compilation successful + --> $DIR/issue-11740.rs:35:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let element = Element { attrs: Vec::new() }; +LL | | let _ = unsafe { element.get_attr("foo") }; +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-11771.rs b/src/test/ui/issue-11771.rs similarity index 100% rename from src/test/compile-fail/issue-11771.rs rename to src/test/ui/issue-11771.rs diff --git a/src/test/ui/issue-11771.stderr b/src/test/ui/issue-11771.stderr new file mode 100644 index 0000000000000..a31c4fa008db1 --- /dev/null +++ b/src/test/ui/issue-11771.stderr @@ -0,0 +1,19 @@ +error[E0277]: cannot add `()` to `{integer}` + --> $DIR/issue-11771.rs:13:7 + | +LL | 1 + + | ^ no implementation for `{integer} + ()` + | + = help: the trait `std::ops::Add<()>` is not implemented for `{integer}` + +error[E0277]: cannot add `()` to `{integer}` + --> $DIR/issue-11771.rs:18:7 + | +LL | 1 + + | ^ no implementation for `{integer} + ()` + | + = help: the trait `std::ops::Add<()>` is not implemented for `{integer}` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-11844.rs b/src/test/ui/issue-11844.rs similarity index 100% rename from src/test/compile-fail/issue-11844.rs rename to src/test/ui/issue-11844.rs diff --git a/src/test/ui/issue-11844.stderr b/src/test/ui/issue-11844.stderr new file mode 100644 index 0000000000000..d773e88d01cf2 --- /dev/null +++ b/src/test/ui/issue-11844.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-11844.rs:16:9 + | +LL | Ok(a) => //~ ERROR: mismatched types + | ^^^^^ expected enum `std::option::Option`, found enum `std::result::Result` + | + = note: expected type `std::option::Option>` + found type `std::result::Result<_, _>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/issue-11873.nll.stderr b/src/test/ui/issue-11873.nll.stderr new file mode 100644 index 0000000000000..c12cbbfdd53a1 --- /dev/null +++ b/src/test/ui/issue-11873.nll.stderr @@ -0,0 +1,14 @@ +error[E0505]: cannot move out of `v` because it is borrowed + --> $DIR/issue-11873.rs:14:14 + | +LL | let mut f = || v.push(2); + | ------------ borrow of `v` occurs here +LL | let _w = v; //~ ERROR: cannot move out of `v` + | ^ move out of `v` occurs here +LL | +LL | f(); + | - borrow later used here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0505`. diff --git a/src/test/compile-fail/issue-11873.rs b/src/test/ui/issue-11873.rs similarity index 100% rename from src/test/compile-fail/issue-11873.rs rename to src/test/ui/issue-11873.rs diff --git a/src/test/ui/issue-11873.stderr b/src/test/ui/issue-11873.stderr new file mode 100644 index 0000000000000..f4da011f5729c --- /dev/null +++ b/src/test/ui/issue-11873.stderr @@ -0,0 +1,11 @@ +error[E0505]: cannot move out of `v` because it is borrowed + --> $DIR/issue-11873.rs:14:9 + | +LL | let mut f = || v.push(2); + | -- borrow of `v` occurs here +LL | let _w = v; //~ ERROR: cannot move out of `v` + | ^^ move out of `v` occurs here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0505`. diff --git a/src/test/compile-fail/issue-12028.rs b/src/test/ui/issue-12028.rs similarity index 100% rename from src/test/compile-fail/issue-12028.rs rename to src/test/ui/issue-12028.rs diff --git a/src/test/ui/issue-12028.stderr b/src/test/ui/issue-12028.stderr new file mode 100644 index 0000000000000..f756e0a29d17a --- /dev/null +++ b/src/test/ui/issue-12028.stderr @@ -0,0 +1,9 @@ +error[E0284]: type annotations required: cannot resolve `<_ as StreamHasher>::S == ::S` + --> $DIR/issue-12028.rs:39:14 + | +LL | self.input_stream(&mut stream); //~ ERROR type annotations required + | ^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0284`. diff --git a/src/test/ui/issue-12041.nll.stderr b/src/test/ui/issue-12041.nll.stderr new file mode 100644 index 0000000000000..b880317a2a612 --- /dev/null +++ b/src/test/ui/issue-12041.nll.stderr @@ -0,0 +1,11 @@ +error[E0382]: use of moved value: `tx` + --> $DIR/issue-12041.rs:18:22 + | +LL | let tx = tx; + | ^^ value moved here in previous iteration of loop + | + = note: move occurs because `tx` has type `std::sync::mpsc::Sender`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-12041.rs b/src/test/ui/issue-12041.rs similarity index 100% rename from src/test/compile-fail/issue-12041.rs rename to src/test/ui/issue-12041.rs diff --git a/src/test/ui/issue-12041.stderr b/src/test/ui/issue-12041.stderr new file mode 100644 index 0000000000000..6172d78b51377 --- /dev/null +++ b/src/test/ui/issue-12041.stderr @@ -0,0 +1,11 @@ +error[E0382]: use of moved value: `tx` + --> $DIR/issue-12041.rs:18:17 + | +LL | let tx = tx; + | ^^ value moved here in previous iteration of loop + | + = note: move occurs because `tx` has type `std::sync::mpsc::Sender`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-12116.rs b/src/test/ui/issue-12116.rs similarity index 100% rename from src/test/compile-fail/issue-12116.rs rename to src/test/ui/issue-12116.rs diff --git a/src/test/ui/issue-12116.stderr b/src/test/ui/issue-12116.stderr new file mode 100644 index 0000000000000..3bf0984b25685 --- /dev/null +++ b/src/test/ui/issue-12116.stderr @@ -0,0 +1,14 @@ +error: unreachable pattern + --> $DIR/issue-12116.rs:25:9 + | +LL | &IntList::Cons(val, box IntList::Nil) => IntList::Cons(val, box IntList::Nil), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-12116.rs:15:9 + | +LL | #![deny(unreachable_patterns)] + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-12127.rs b/src/test/ui/issue-12127.rs similarity index 100% rename from src/test/compile-fail/issue-12127.rs rename to src/test/ui/issue-12127.rs diff --git a/src/test/ui/issue-12127.stderr b/src/test/ui/issue-12127.stderr new file mode 100644 index 0000000000000..afd483823a630 --- /dev/null +++ b/src/test/ui/issue-12127.stderr @@ -0,0 +1,13 @@ +error[E0382]: use of moved value: `f` + --> $DIR/issue-12127.rs:21:9 + | +LL | f(); + | - value moved here +LL | f(); + | ^ value used here after move + | + = note: move occurs because `f` has type `[closure@$DIR/issue-12127.rs:18:24: 18:41 x:std::boxed::Box]`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-12369.rs b/src/test/ui/issue-12369.rs similarity index 100% rename from src/test/compile-fail/issue-12369.rs rename to src/test/ui/issue-12369.rs diff --git a/src/test/ui/issue-12369.stderr b/src/test/ui/issue-12369.stderr new file mode 100644 index 0000000000000..2e8cd840fb7e8 --- /dev/null +++ b/src/test/ui/issue-12369.stderr @@ -0,0 +1,14 @@ +error: unreachable pattern + --> $DIR/issue-12369.rs:20:9 + | +LL | &[10,a, ref rest..] => 10 //~ ERROR: unreachable pattern + | ^^^^^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-12369.rs:12:9 + | +LL | #![deny(unreachable_patterns)] + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/ui/issue-12470.nll.stderr b/src/test/ui/issue-12470.nll.stderr new file mode 100644 index 0000000000000..09cbfe4f66daa --- /dev/null +++ b/src/test/ui/issue-12470.nll.stderr @@ -0,0 +1,18 @@ +error[E0597]: `*b` does not live long enough + --> $DIR/issue-12470.rs:38:18 + | +LL | let bb: &B = &*b; //~ ERROR does not live long enough + | ^^^ borrowed value does not live long enough +LL | make_a(bb) +LL | } + | - borrowed value only lives until here + | +note: borrowed value must be valid for the lifetime 'a as defined on the function body at 36:16... + --> $DIR/issue-12470.rs:36:16 + | +LL | fn make_make_a<'a>() -> A<'a> { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-12470.rs b/src/test/ui/issue-12470.rs similarity index 100% rename from src/test/compile-fail/issue-12470.rs rename to src/test/ui/issue-12470.rs diff --git a/src/test/ui/issue-12470.stderr b/src/test/ui/issue-12470.stderr new file mode 100644 index 0000000000000..91788e9629789 --- /dev/null +++ b/src/test/ui/issue-12470.stderr @@ -0,0 +1,18 @@ +error[E0597]: `*b` does not live long enough + --> $DIR/issue-12470.rs:38:19 + | +LL | let bb: &B = &*b; //~ ERROR does not live long enough + | ^^ borrowed value does not live long enough +LL | make_a(bb) +LL | } + | - borrowed value only lives until here + | +note: borrowed value must be valid for the lifetime 'a as defined on the function body at 36:16... + --> $DIR/issue-12470.rs:36:16 + | +LL | fn make_make_a<'a>() -> A<'a> { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-12552.rs b/src/test/ui/issue-12552.rs similarity index 100% rename from src/test/compile-fail/issue-12552.rs rename to src/test/ui/issue-12552.rs diff --git a/src/test/ui/issue-12552.stderr b/src/test/ui/issue-12552.stderr new file mode 100644 index 0000000000000..9a3d5ef02c627 --- /dev/null +++ b/src/test/ui/issue-12552.stderr @@ -0,0 +1,21 @@ +error[E0308]: mismatched types + --> $DIR/issue-12552.rs:16:5 + | +LL | Some(k) => match k { //~ ERROR mismatched types + | ^^^^^^^ expected enum `std::result::Result`, found enum `std::option::Option` + | + = note: expected type `std::result::Result<_, {integer}>` + found type `std::option::Option<_>` + +error[E0308]: mismatched types + --> $DIR/issue-12552.rs:19:5 + | +LL | None => () //~ ERROR mismatched types + | ^^^^ expected enum `std::result::Result`, found enum `std::option::Option` + | + = note: expected type `std::result::Result<_, {integer}>` + found type `std::option::Option<_>` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/issue-12567.nll.stderr b/src/test/ui/issue-12567.nll.stderr new file mode 100644 index 0000000000000..a040f7c3c8d1b --- /dev/null +++ b/src/test/ui/issue-12567.nll.stderr @@ -0,0 +1,31 @@ +error[E0508]: cannot move out of type `[T]`, a non-copy slice + --> $DIR/issue-12567.rs:14:11 + | +LL | match (l1, l2) { + | ^^^^^^^^ cannot move out of here +help: to prevent move, use ref or ref mut + | +LL | (&[], &[ref hd, ..]) | (&[hd, ..], &[]) + | ^^^^^^ +help: to prevent move, use ref or ref mut + | +LL | (&[hd1, ..], &[ref hd2, ..]) + | ^^^^^^^ + +error[E0508]: cannot move out of type `[T]`, a non-copy slice + --> $DIR/issue-12567.rs:14:11 + | +LL | match (l1, l2) { + | ^^^^^^^^ cannot move out of here +help: to prevent move, use ref or ref mut + | +LL | (&[], &[ref hd, ..]) | (&[hd, ..], &[]) + | ^^^^^^ +help: to prevent move, use ref or ref mut + | +LL | (&[ref hd1, ..], &[hd2, ..]) + | ^^^^^^^ + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0508`. diff --git a/src/test/compile-fail/issue-12567.rs b/src/test/ui/issue-12567.rs similarity index 100% rename from src/test/compile-fail/issue-12567.rs rename to src/test/ui/issue-12567.rs diff --git a/src/test/ui/issue-12567.stderr b/src/test/ui/issue-12567.stderr new file mode 100644 index 0000000000000..60acffdcb06f8 --- /dev/null +++ b/src/test/ui/issue-12567.stderr @@ -0,0 +1,39 @@ +error[E0508]: cannot move out of type `[T]`, a non-copy slice + --> $DIR/issue-12567.rs:16:16 + | +LL | (&[], &[hd, ..]) | (&[hd, ..], &[]) + | ^--^^^^^ + | || + | |hint: to prevent move, use `ref hd` or `ref mut hd` + | cannot move out of here + +error[E0508]: cannot move out of type `[T]`, a non-copy slice + --> $DIR/issue-12567.rs:16:30 + | +LL | (&[], &[hd, ..]) | (&[hd, ..], &[]) + | ^--^^^^^ + | || + | |hint: to prevent move, use `ref hd` or `ref mut hd` + | cannot move out of here + +error[E0508]: cannot move out of type `[T]`, a non-copy slice + --> $DIR/issue-12567.rs:20:11 + | +LL | (&[hd1, ..], &[hd2, ..]) + | ^---^^^^^ + | || + | |hint: to prevent move, use `ref hd1` or `ref mut hd1` + | cannot move out of here + +error[E0508]: cannot move out of type `[T]`, a non-copy slice + --> $DIR/issue-12567.rs:20:23 + | +LL | (&[hd1, ..], &[hd2, ..]) + | ^---^^^^^ + | || + | |hint: to prevent move, use `ref hd2` or `ref mut hd2` + | cannot move out of here + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0508`. diff --git a/src/test/compile-fail/issue-12796.rs b/src/test/ui/issue-12796.rs similarity index 100% rename from src/test/compile-fail/issue-12796.rs rename to src/test/ui/issue-12796.rs diff --git a/src/test/ui/issue-12796.stderr b/src/test/ui/issue-12796.stderr new file mode 100644 index 0000000000000..c8bedd3853c68 --- /dev/null +++ b/src/test/ui/issue-12796.stderr @@ -0,0 +1,11 @@ +error[E0401]: can't use type parameters from outer function + --> $DIR/issue-12796.rs:13:22 + | +LL | fn inner(_: &Self) { + | ----- ^^^^ use of type variable from outer function + | | + | help: try using a local type parameter instead: `inner` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0401`. diff --git a/src/test/compile-fail/issue-12863.rs b/src/test/ui/issue-12863.rs similarity index 100% rename from src/test/compile-fail/issue-12863.rs rename to src/test/ui/issue-12863.rs diff --git a/src/test/ui/issue-12863.stderr b/src/test/ui/issue-12863.stderr new file mode 100644 index 0000000000000..eb2957a822593 --- /dev/null +++ b/src/test/ui/issue-12863.stderr @@ -0,0 +1,9 @@ +error[E0532]: expected unit struct/variant or constant, found function `foo::bar` + --> $DIR/issue-12863.rs:15:9 + | +LL | foo::bar => {} //~ ERROR expected unit struct/variant or constant, found function `foo::bar` + | ^^^^^^^^ not a unit struct/variant or constant + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0532`. diff --git a/src/test/compile-fail/issue-12997-1.rs b/src/test/ui/issue-12997-1.rs similarity index 100% rename from src/test/compile-fail/issue-12997-1.rs rename to src/test/ui/issue-12997-1.rs diff --git a/src/test/ui/issue-12997-1.stderr b/src/test/ui/issue-12997-1.stderr new file mode 100644 index 0000000000000..856538417d914 --- /dev/null +++ b/src/test/ui/issue-12997-1.stderr @@ -0,0 +1,14 @@ +error: functions used as benches must have signature `fn(&mut Bencher) -> impl Termination` + --> $DIR/issue-12997-1.rs:16:1 + | +LL | fn foo() { } //~ ERROR functions used as benches + | ^^^^^^^^^^^^ + +error: functions used as benches must have signature `fn(&mut Bencher) -> impl Termination` + --> $DIR/issue-12997-1.rs:19:1 + | +LL | fn bar(x: isize, y: isize) { } //~ ERROR functions used as benches + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-12997-2.rs b/src/test/ui/issue-12997-2.rs similarity index 100% rename from src/test/compile-fail/issue-12997-2.rs rename to src/test/ui/issue-12997-2.rs diff --git a/src/test/ui/issue-12997-2.stderr b/src/test/ui/issue-12997-2.stderr new file mode 100644 index 0000000000000..3030ee4779b4b --- /dev/null +++ b/src/test/ui/issue-12997-2.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-12997-2.rs:16:1 + | +LL | fn bar(x: isize) { } + | ^^^^^^^^^^^^^^^^^^^^ expected isize, found mutable reference + | + = note: expected type `isize` + found type `&mut __test::test::Bencher` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-13033.rs b/src/test/ui/issue-13033.rs similarity index 100% rename from src/test/compile-fail/issue-13033.rs rename to src/test/ui/issue-13033.rs diff --git a/src/test/ui/issue-13033.stderr b/src/test/ui/issue-13033.stderr new file mode 100644 index 0000000000000..2db3cb80a819e --- /dev/null +++ b/src/test/ui/issue-13033.stderr @@ -0,0 +1,15 @@ +error[E0053]: method `bar` has an incompatible type for trait + --> $DIR/issue-13033.rs:18:30 + | +LL | fn bar(&mut self, other: &mut Foo); + | -------- type in trait +... +LL | fn bar(&mut self, other: &Foo) {} + | ^^^^ types differ in mutability + | + = note: expected type `fn(&mut Baz, &mut dyn Foo)` + found type `fn(&mut Baz, &dyn Foo)` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0053`. diff --git a/src/test/compile-fail/issue-13352.rs b/src/test/ui/issue-13352.rs similarity index 100% rename from src/test/compile-fail/issue-13352.rs rename to src/test/ui/issue-13352.rs diff --git a/src/test/ui/issue-13352.stderr b/src/test/ui/issue-13352.stderr new file mode 100644 index 0000000000000..5324eb2118617 --- /dev/null +++ b/src/test/ui/issue-13352.stderr @@ -0,0 +1,11 @@ +error[E0277]: cannot add `()` to `usize` + --> $DIR/issue-13352.rs:19:13 + | +LL | 2_usize + (loop {}); + | ^ no implementation for `usize + ()` + | + = help: the trait `std::ops::Add<()>` is not implemented for `usize` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-13359.rs b/src/test/ui/issue-13359.rs similarity index 100% rename from src/test/compile-fail/issue-13359.rs rename to src/test/ui/issue-13359.rs diff --git a/src/test/ui/issue-13359.stderr b/src/test/ui/issue-13359.stderr new file mode 100644 index 0000000000000..77f10be982b01 --- /dev/null +++ b/src/test/ui/issue-13359.stderr @@ -0,0 +1,15 @@ +error[E0308]: mismatched types + --> $DIR/issue-13359.rs:16:9 + | +LL | foo(1*(1 as isize)); + | ^^^^^^^^^^^^^^ expected i16, found isize + +error[E0308]: mismatched types + --> $DIR/issue-13359.rs:20:9 + | +LL | bar(1*(1 as usize)); + | ^^^^^^^^^^^^^^ expected u32, found usize + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-13404.rs b/src/test/ui/issue-13404.rs similarity index 100% rename from src/test/compile-fail/issue-13404.rs rename to src/test/ui/issue-13404.rs diff --git a/src/test/ui/issue-13404.stderr b/src/test/ui/issue-13404.stderr new file mode 100644 index 0000000000000..b71d3ceab5b3b --- /dev/null +++ b/src/test/ui/issue-13404.stderr @@ -0,0 +1,9 @@ +error[E0432]: unresolved import `b::f` + --> $DIR/issue-13404.rs:12:5 + | +LL | use b::f; //~ ERROR: unresolved import `b::f` [E0432] + | ^^^^ no `f` in `b` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-13407.rs b/src/test/ui/issue-13407.rs similarity index 100% rename from src/test/compile-fail/issue-13407.rs rename to src/test/ui/issue-13407.rs diff --git a/src/test/ui/issue-13407.stderr b/src/test/ui/issue-13407.stderr new file mode 100644 index 0000000000000..e5ef50e984a76 --- /dev/null +++ b/src/test/ui/issue-13407.stderr @@ -0,0 +1,25 @@ +error[E0603]: unit struct `C` is private + --> $DIR/issue-13407.rs:16:5 + | +LL | A::C = 1; + | ^^^^ + +error[E0308]: mismatched types + --> $DIR/issue-13407.rs:16:12 + | +LL | A::C = 1; + | ^ expected struct `A::C`, found integral variable + | + = note: expected type `A::C` + found type `{integer}` + +error[E0070]: invalid left-hand side expression + --> $DIR/issue-13407.rs:16:5 + | +LL | A::C = 1; + | ^^^^^^^^ left-hand of expression not valid + +error: aborting due to 3 previous errors + +Some errors occurred: E0070, E0308, E0603. +For more information about an error, try `rustc --explain E0070`. diff --git a/src/test/compile-fail/issue-13446.rs b/src/test/ui/issue-13446.rs similarity index 100% rename from src/test/compile-fail/issue-13446.rs rename to src/test/ui/issue-13446.rs diff --git a/src/test/ui/issue-13446.stderr b/src/test/ui/issue-13446.stderr new file mode 100644 index 0000000000000..68fece30c81d1 --- /dev/null +++ b/src/test/ui/issue-13446.stderr @@ -0,0 +1,13 @@ +error[E0308]: mismatched types + --> $DIR/issue-13446.rs:16:26 + | +LL | static VEC: [u32; 256] = vec![]; + | ^^^^^^ expected array of 256 elements, found struct `std::vec::Vec` + | + = note: expected type `[u32; 256]` + found type `std::vec::Vec<_>` + = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-13466.rs b/src/test/ui/issue-13466.rs similarity index 100% rename from src/test/compile-fail/issue-13466.rs rename to src/test/ui/issue-13466.rs diff --git a/src/test/ui/issue-13466.stderr b/src/test/ui/issue-13466.stderr new file mode 100644 index 0000000000000..be845fb8e2285 --- /dev/null +++ b/src/test/ui/issue-13466.stderr @@ -0,0 +1,21 @@ +error[E0308]: mismatched types + --> $DIR/issue-13466.rs:18:9 + | +LL | Ok(u) => u, + | ^^^^^ expected enum `std::option::Option`, found enum `std::result::Result` + | + = note: expected type `std::option::Option<{integer}>` + found type `std::result::Result<_, _>` + +error[E0308]: mismatched types + --> $DIR/issue-13466.rs:24:9 + | +LL | Err(e) => panic!(e) + | ^^^^^^ expected enum `std::option::Option`, found enum `std::result::Result` + | + = note: expected type `std::option::Option<{integer}>` + found type `std::result::Result<_, _>` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-13482-2.rs b/src/test/ui/issue-13482-2.rs similarity index 100% rename from src/test/compile-fail/issue-13482-2.rs rename to src/test/ui/issue-13482-2.rs diff --git a/src/test/ui/issue-13482-2.stderr b/src/test/ui/issue-13482-2.stderr new file mode 100644 index 0000000000000..1ecae3b867a11 --- /dev/null +++ b/src/test/ui/issue-13482-2.stderr @@ -0,0 +1,9 @@ +error[E0527]: pattern requires 0 elements but array has 2 + --> $DIR/issue-13482-2.rs:16:9 + | +LL | [] => None, //~ ERROR pattern requires 0 elements but array has 2 + | ^^ expected 2 elements + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0527`. diff --git a/src/test/compile-fail/issue-13482.rs b/src/test/ui/issue-13482.rs similarity index 100% rename from src/test/compile-fail/issue-13482.rs rename to src/test/ui/issue-13482.rs diff --git a/src/test/ui/issue-13482.stderr b/src/test/ui/issue-13482.stderr new file mode 100644 index 0000000000000..95273bb46bca3 --- /dev/null +++ b/src/test/ui/issue-13482.stderr @@ -0,0 +1,9 @@ +error[E0527]: pattern requires 0 elements but array has 2 + --> $DIR/issue-13482.rs:14:5 + | +LL | [] => None, //~ ERROR pattern requires 0 elements but array has 2 + | ^^ expected 2 elements + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0527`. diff --git a/src/test/compile-fail/issue-13497-2.rs b/src/test/ui/issue-13497-2.rs similarity index 100% rename from src/test/compile-fail/issue-13497-2.rs rename to src/test/ui/issue-13497-2.rs diff --git a/src/test/ui/issue-13497-2.stderr b/src/test/ui/issue-13497-2.stderr new file mode 100644 index 0000000000000..72770f8c84ce7 --- /dev/null +++ b/src/test/ui/issue-13497-2.stderr @@ -0,0 +1,18 @@ +error[E0597]: `rawLines` does not live long enough + --> $DIR/issue-13497-2.rs:13:5 + | +LL | rawLines //~ ERROR `rawLines` does not live long enough + | ^^^^^^^^ borrowed value does not live long enough +LL | .iter().map(|l| l.trim()).collect() +LL | } + | - borrowed value only lives until here + | +note: borrowed value must be valid for the lifetime 'a as defined on the function body at 11:24... + --> $DIR/issue-13497-2.rs:11:24 + | +LL | fn read_lines_borrowed<'a>() -> Vec<&'a str> { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-13497.rs b/src/test/ui/issue-13497.rs similarity index 100% rename from src/test/compile-fail/issue-13497.rs rename to src/test/ui/issue-13497.rs diff --git a/src/test/ui/issue-13497.stderr b/src/test/ui/issue-13497.stderr new file mode 100644 index 0000000000000..ab6d041bd48d7 --- /dev/null +++ b/src/test/ui/issue-13497.stderr @@ -0,0 +1,12 @@ +error[E0106]: missing lifetime specifier + --> $DIR/issue-13497.rs:12:5 + | +LL | &str //~ ERROR missing lifetime specifier + | ^ expected lifetime parameter + | + = help: this function's return type contains a borrowed value, but there is no value for it to be borrowed from + = help: consider giving it a 'static lifetime + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0106`. diff --git a/src/test/compile-fail/issue-1362.rs b/src/test/ui/issue-1362.rs similarity index 100% rename from src/test/compile-fail/issue-1362.rs rename to src/test/ui/issue-1362.rs diff --git a/src/test/ui/issue-1362.stderr b/src/test/ui/issue-1362.stderr new file mode 100644 index 0000000000000..c19e256eb9283 --- /dev/null +++ b/src/test/ui/issue-1362.stderr @@ -0,0 +1,9 @@ +error[E0308]: mismatched types + --> $DIR/issue-1362.rs:14:16 + | +LL | let x: u32 = 20i32; //~ ERROR mismatched types + | ^^^^^ expected u32, found i32 + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-13641.rs b/src/test/ui/issue-13641.rs similarity index 100% rename from src/test/compile-fail/issue-13641.rs rename to src/test/ui/issue-13641.rs diff --git a/src/test/ui/issue-13641.stderr b/src/test/ui/issue-13641.stderr new file mode 100644 index 0000000000000..0f96b5f66b1b8 --- /dev/null +++ b/src/test/ui/issue-13641.stderr @@ -0,0 +1,15 @@ +error[E0603]: struct `Foo` is private + --> $DIR/issue-13641.rs:19:5 + | +LL | a::Foo::new(); + | ^^^^^^^^^^^ + +error[E0603]: enum `Bar` is private + --> $DIR/issue-13641.rs:21:5 + | +LL | a::Bar::new(); + | ^^^^^^^^^^^ + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0603`. diff --git a/src/test/compile-fail/issue-13727.rs b/src/test/ui/issue-13727.rs similarity index 100% rename from src/test/compile-fail/issue-13727.rs rename to src/test/ui/issue-13727.rs diff --git a/src/test/ui/issue-13727.stderr b/src/test/ui/issue-13727.stderr new file mode 100644 index 0000000000000..47b9a0211a967 --- /dev/null +++ b/src/test/ui/issue-13727.stderr @@ -0,0 +1,14 @@ +error: unreachable pattern + --> $DIR/issue-13727.rs:17:5 + | +LL | 512 => print!("0b1111/n"), + | ^^^ + | +note: lint level defined here + --> $DIR/issue-13727.rs:12:9 + | +LL | #![deny(unreachable_patterns)] + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-13847.rs b/src/test/ui/issue-13847.rs similarity index 100% rename from src/test/compile-fail/issue-13847.rs rename to src/test/ui/issue-13847.rs diff --git a/src/test/ui/issue-13847.stderr b/src/test/ui/issue-13847.stderr new file mode 100644 index 0000000000000..fad3245034d06 --- /dev/null +++ b/src/test/ui/issue-13847.stderr @@ -0,0 +1,9 @@ +error[E0609]: no field `is_failure` on type `!` + --> $DIR/issue-13847.rs:12:12 + | +LL | return.is_failure //~ ERROR no field `is_failure` on type `!` + | ^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0609`. diff --git a/src/test/compile-fail/issue-13853-2.rs b/src/test/ui/issue-13853-2.rs similarity index 100% rename from src/test/compile-fail/issue-13853-2.rs rename to src/test/ui/issue-13853-2.rs diff --git a/src/test/ui/issue-13853-2.stderr b/src/test/ui/issue-13853-2.stderr new file mode 100644 index 0000000000000..c15290fb1d957 --- /dev/null +++ b/src/test/ui/issue-13853-2.stderr @@ -0,0 +1,11 @@ +error[E0615]: attempted to take value of method `get` on type `std::boxed::Box<(dyn ResponseHook + 'static)>` + --> $DIR/issue-13853-2.rs:15:39 + | +LL | fn foo(res : Box) { res.get } //~ ERROR attempted to take value of method + | ^^^ + | + = help: maybe a `()` to call it is missing? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0615`. diff --git a/src/test/compile-fail/issue-13853-5.rs b/src/test/ui/issue-13853-5.rs similarity index 100% rename from src/test/compile-fail/issue-13853-5.rs rename to src/test/ui/issue-13853-5.rs diff --git a/src/test/ui/issue-13853-5.stderr b/src/test/ui/issue-13853-5.stderr new file mode 100644 index 0000000000000..e93b03b43ee66 --- /dev/null +++ b/src/test/ui/issue-13853-5.stderr @@ -0,0 +1,9 @@ +error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates + --> $DIR/issue-13853-5.rs:17:10 + | +LL | impl<'a, T: Deserializable> Deserializable for &'a str { + | ^ unconstrained type parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0207`. diff --git a/src/test/compile-fail/issue-13853.rs b/src/test/ui/issue-13853.rs similarity index 100% rename from src/test/compile-fail/issue-13853.rs rename to src/test/ui/issue-13853.rs diff --git a/src/test/ui/issue-13853.stderr b/src/test/ui/issue-13853.stderr new file mode 100644 index 0000000000000..188bfd5930105 --- /dev/null +++ b/src/test/ui/issue-13853.stderr @@ -0,0 +1,34 @@ +error[E0308]: mismatched types + --> $DIR/issue-13853.rs:24:9 + | +LL | fn nodes<'a, I: Iterator>(&self) -> I + | - expected `I` because of return type +... +LL | self.iter() //~ ERROR mismatched types + | ^^^^^^^^^^^ expected type parameter, found struct `std::slice::Iter` + | + = note: expected type `I` + found type `std::slice::Iter<'_, N>` + +error[E0599]: no method named `iter` found for type `&G` in the current scope + --> $DIR/issue-13853.rs:37:23 + | +LL | for node in graph.iter() { //~ ERROR no method named `iter` found + | ^^^^ + +error[E0308]: mismatched types + --> $DIR/issue-13853.rs:47:13 + | +LL | iterate(graph); //~ ERROR mismatched types + | ^^^^^ + | | + | expected reference, found struct `std::vec::Vec` + | help: consider borrowing here: `&graph` + | + = note: expected type `&_` + found type `std::vec::Vec` + +error: aborting due to 3 previous errors + +Some errors occurred: E0308, E0599. +For more information about an error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-14091-2.rs b/src/test/ui/issue-14091-2.rs similarity index 90% rename from src/test/compile-fail/issue-14091-2.rs rename to src/test/ui/issue-14091-2.rs index d3823a8cc5520..a4351733a876e 100644 --- a/src/test/compile-fail/issue-14091-2.rs +++ b/src/test/ui/issue-14091-2.rs @@ -8,7 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern: cannot apply unary operator `!` to type `BytePos` +// // Very @@ -23,4 +23,5 @@ fn main() { let x = BytePos(1); assert!(x, x); + //~^ ERROR cannot apply unary operator `!` to type `BytePos` } diff --git a/src/test/ui/issue-14091-2.stderr b/src/test/ui/issue-14091-2.stderr new file mode 100644 index 0000000000000..ccabd801c85da --- /dev/null +++ b/src/test/ui/issue-14091-2.stderr @@ -0,0 +1,11 @@ +error[E0600]: cannot apply unary operator `!` to type `BytePos` + --> $DIR/issue-14091-2.rs:25:5 + | +LL | assert!(x, x); + | ^^^^^^^^^^^^^^ cannot apply unary operator `!` + | + = note: an implementation of `std::ops::Not` might be missing for `BytePos` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0600`. diff --git a/src/test/compile-fail/issue-14091.rs b/src/test/ui/issue-14091.rs similarity index 88% rename from src/test/compile-fail/issue-14091.rs rename to src/test/ui/issue-14091.rs index 9c594ef485fd7..9e436b8e629dd 100644 --- a/src/test/compile-fail/issue-14091.rs +++ b/src/test/ui/issue-14091.rs @@ -8,6 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern:mismatched types - -fn main(){assert!(1,1);} +fn main(){ + assert!(1,1); + //~^ ERROR mismatched types +} diff --git a/src/test/ui/issue-14091.stderr b/src/test/ui/issue-14091.stderr new file mode 100644 index 0000000000000..9db2a0e2a86f5 --- /dev/null +++ b/src/test/ui/issue-14091.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-14091.rs:12:5 + | +LL | assert!(1,1); + | ^^^^^^^^^^^^^ expected bool, found integral variable + | + = note: expected type `bool` + found type `{integer}` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-14221.rs b/src/test/ui/issue-14221.rs similarity index 100% rename from src/test/compile-fail/issue-14221.rs rename to src/test/ui/issue-14221.rs diff --git a/src/test/ui/issue-14221.stderr b/src/test/ui/issue-14221.stderr new file mode 100644 index 0000000000000..9252a4f304f25 --- /dev/null +++ b/src/test/ui/issue-14221.stderr @@ -0,0 +1,30 @@ +warning[E0170]: pattern binding `A` is named the same as one of the variants of the type `E` + --> $DIR/issue-14221.rs:23:13 + | +LL | A => "A", + | ^ help: to match on the variant, qualify the path: `E::A` + +warning[E0170]: pattern binding `B` is named the same as one of the variants of the type `E` + --> $DIR/issue-14221.rs:25:13 + | +LL | B => "B", //~ ERROR: unreachable pattern + | ^ help: to match on the variant, qualify the path: `E::B` + +error: unreachable pattern + --> $DIR/issue-14221.rs:25:13 + | +LL | A => "A", + | - matches any value +LL | //~^ WARN pattern binding `A` is named the same as one of the variants of the type `E` +LL | B => "B", //~ ERROR: unreachable pattern + | ^ unreachable pattern + | +note: lint level defined here + --> $DIR/issue-14221.rs:11:9 + | +LL | #![deny(unreachable_patterns)] + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0170`. diff --git a/src/test/compile-fail/issue-14227.rs b/src/test/ui/issue-14227.rs similarity index 100% rename from src/test/compile-fail/issue-14227.rs rename to src/test/ui/issue-14227.rs diff --git a/src/test/ui/issue-14227.stderr b/src/test/ui/issue-14227.stderr new file mode 100644 index 0000000000000..f5f39465b187b --- /dev/null +++ b/src/test/ui/issue-14227.stderr @@ -0,0 +1,9 @@ +error[E0080]: could not evaluate static initializer + --> $DIR/issue-14227.rs:16:20 + | +LL | static CRASH: () = symbol; + | ^^^^^^ tried to read from foreign (extern) static + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0080`. diff --git a/src/test/ui/issue-14285.nll.stderr b/src/test/ui/issue-14285.nll.stderr new file mode 100644 index 0000000000000..440365cae3e1c --- /dev/null +++ b/src/test/ui/issue-14285.nll.stderr @@ -0,0 +1,17 @@ +warning: not reporting region error due to nll + --> $DIR/issue-14285.rs:22:7 + | +LL | B(a) //~ ERROR 22:5: 22:9: explicit lifetime required in the type of `a` [E0621] + | ^ + +error[E0621]: explicit lifetime required in the type of `a` + --> $DIR/issue-14285.rs:22:7 + | +LL | fn foo<'a>(a: &Foo) -> B<'a> { + | - consider changing the type of `a` to `&'a (dyn Foo + 'a)` +LL | B(a) //~ ERROR 22:5: 22:9: explicit lifetime required in the type of `a` [E0621] + | ^ lifetime `'a` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-14285.rs b/src/test/ui/issue-14285.rs similarity index 100% rename from src/test/compile-fail/issue-14285.rs rename to src/test/ui/issue-14285.rs diff --git a/src/test/ui/issue-14285.stderr b/src/test/ui/issue-14285.stderr new file mode 100644 index 0000000000000..b5ab7bdb9d192 --- /dev/null +++ b/src/test/ui/issue-14285.stderr @@ -0,0 +1,11 @@ +error[E0621]: explicit lifetime required in the type of `a` + --> $DIR/issue-14285.rs:22:5 + | +LL | fn foo<'a>(a: &Foo) -> B<'a> { + | - consider changing the type of `a` to `&'a (dyn Foo + 'a)` +LL | B(a) //~ ERROR 22:5: 22:9: explicit lifetime required in the type of `a` [E0621] + | ^^^^ lifetime `'a` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-14309.rs b/src/test/ui/issue-14309.rs similarity index 100% rename from src/test/compile-fail/issue-14309.rs rename to src/test/ui/issue-14309.rs diff --git a/src/test/ui/issue-14309.stderr b/src/test/ui/issue-14309.stderr new file mode 100644 index 0000000000000..e062c633ee6f1 --- /dev/null +++ b/src/test/ui/issue-14309.stderr @@ -0,0 +1,82 @@ +error: `extern` block uses type `A` which is not FFI-safe: this struct has unspecified layout + --> $DIR/issue-14309.rs:40:15 + | +LL | fn foo(x: A); //~ ERROR type `A` which is not FFI-safe + | ^ + | +note: lint level defined here + --> $DIR/issue-14309.rs:11:9 + | +LL | #![deny(improper_ctypes)] + | ^^^^^^^^^^^^^^^ + = help: consider adding a #[repr(C)] or #[repr(transparent)] attribute to this struct +note: type defined here + --> $DIR/issue-14309.rs:14:1 + | +LL | / struct A { +LL | | x: i32 +LL | | } + | |_^ + +error: `extern` block uses type `A` which is not FFI-safe: this struct has unspecified layout + --> $DIR/issue-14309.rs:41:15 + | +LL | fn bar(x: B); //~ ERROR type `A` + | ^ + | + = help: consider adding a #[repr(C)] or #[repr(transparent)] attribute to this struct +note: type defined here + --> $DIR/issue-14309.rs:14:1 + | +LL | / struct A { +LL | | x: i32 +LL | | } + | |_^ + +error: `extern` block uses type `A` which is not FFI-safe: this struct has unspecified layout + --> $DIR/issue-14309.rs:43:15 + | +LL | fn qux(x: A2); //~ ERROR type `A` + | ^^ + | + = help: consider adding a #[repr(C)] or #[repr(transparent)] attribute to this struct +note: type defined here + --> $DIR/issue-14309.rs:14:1 + | +LL | / struct A { +LL | | x: i32 +LL | | } + | |_^ + +error: `extern` block uses type `A` which is not FFI-safe: this struct has unspecified layout + --> $DIR/issue-14309.rs:44:16 + | +LL | fn quux(x: B2); //~ ERROR type `A` + | ^^ + | + = help: consider adding a #[repr(C)] or #[repr(transparent)] attribute to this struct +note: type defined here + --> $DIR/issue-14309.rs:14:1 + | +LL | / struct A { +LL | | x: i32 +LL | | } + | |_^ + +error: `extern` block uses type `A` which is not FFI-safe: this struct has unspecified layout + --> $DIR/issue-14309.rs:46:16 + | +LL | fn fred(x: D); //~ ERROR type `A` + | ^ + | + = help: consider adding a #[repr(C)] or #[repr(transparent)] attribute to this struct +note: type defined here + --> $DIR/issue-14309.rs:14:1 + | +LL | / struct A { +LL | | x: i32 +LL | | } + | |_^ + +error: aborting due to 5 previous errors + diff --git a/src/test/compile-fail/issue-14366.rs b/src/test/ui/issue-14366.rs similarity index 100% rename from src/test/compile-fail/issue-14366.rs rename to src/test/ui/issue-14366.rs diff --git a/src/test/ui/issue-14366.stderr b/src/test/ui/issue-14366.stderr new file mode 100644 index 0000000000000..260ca44368965 --- /dev/null +++ b/src/test/ui/issue-14366.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `str` cannot be known at compilation time + --> $DIR/issue-14366.rs:12:14 + | +LL | let _x = "test" as &::std::any::Any; + | ^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `str` + = note: to learn more, visit + = note: required for the cast to the object type `dyn std::any::Any` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-1448-2.rs b/src/test/ui/issue-1448-2.rs similarity index 100% rename from src/test/compile-fail/issue-1448-2.rs rename to src/test/ui/issue-1448-2.rs diff --git a/src/test/ui/issue-1448-2.stderr b/src/test/ui/issue-1448-2.stderr new file mode 100644 index 0000000000000..5769b0c3b9fae --- /dev/null +++ b/src/test/ui/issue-1448-2.stderr @@ -0,0 +1,9 @@ +error[E0308]: mismatched types + --> $DIR/issue-1448-2.rs:16:24 + | +LL | println!("{}", foo(10i32)); //~ ERROR mismatched types + | ^^^^^ expected u32, found i32 + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-14541.rs b/src/test/ui/issue-14541.rs similarity index 100% rename from src/test/compile-fail/issue-14541.rs rename to src/test/ui/issue-14541.rs diff --git a/src/test/ui/issue-14541.stderr b/src/test/ui/issue-14541.stderr new file mode 100644 index 0000000000000..fcff500cfda8e --- /dev/null +++ b/src/test/ui/issue-14541.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-14541.rs:15:9 + | +LL | let vec3 { y: _, z: _ } = v; + | ^^^^^^^^^^^^^^^^^^^ expected struct `vec2`, found struct `vec3` + | + = note: expected type `vec2` + found type `vec3` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-14721.rs b/src/test/ui/issue-14721.rs similarity index 100% rename from src/test/compile-fail/issue-14721.rs rename to src/test/ui/issue-14721.rs diff --git a/src/test/ui/issue-14721.stderr b/src/test/ui/issue-14721.stderr new file mode 100644 index 0000000000000..93e51140caa0e --- /dev/null +++ b/src/test/ui/issue-14721.stderr @@ -0,0 +1,9 @@ +error[E0609]: no field `desc` on type `&str` + --> $DIR/issue-14721.rs:13:24 + | +LL | println!("{}", foo.desc); //~ no field `desc` on type `&str` + | ^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0609`. diff --git a/src/test/compile-fail/issue-1476.rs b/src/test/ui/issue-1476.rs similarity index 100% rename from src/test/compile-fail/issue-1476.rs rename to src/test/ui/issue-1476.rs diff --git a/src/test/ui/issue-1476.stderr b/src/test/ui/issue-1476.stderr new file mode 100644 index 0000000000000..afdda3e15dad0 --- /dev/null +++ b/src/test/ui/issue-1476.stderr @@ -0,0 +1,9 @@ +error[E0425]: cannot find value `x` in this scope + --> $DIR/issue-1476.rs:12:20 + | +LL | println!("{}", x); //~ ERROR cannot find value `x` in this scope + | ^ not found in this scope + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-14772.rs b/src/test/ui/issue-14772.rs similarity index 100% rename from src/test/compile-fail/issue-14772.rs rename to src/test/ui/issue-14772.rs diff --git a/src/test/ui/issue-14772.stderr b/src/test/ui/issue-14772.stderr new file mode 100644 index 0000000000000..1116cd38edf6a --- /dev/null +++ b/src/test/ui/issue-14772.stderr @@ -0,0 +1,8 @@ +error: only functions may be used as tests + --> $DIR/issue-14772.rs:14:1 + | +LL | mod foo {} //~ ERROR only functions may be used as tests + | ^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-14845.rs b/src/test/ui/issue-14845.rs similarity index 100% rename from src/test/compile-fail/issue-14845.rs rename to src/test/ui/issue-14845.rs diff --git a/src/test/ui/issue-14845.stderr b/src/test/ui/issue-14845.stderr new file mode 100644 index 0000000000000..a994026946eaf --- /dev/null +++ b/src/test/ui/issue-14845.stderr @@ -0,0 +1,15 @@ +error[E0606]: casting `&[u8; 1]` as `*mut u8` is invalid + --> $DIR/issue-14845.rs:18:14 + | +LL | let _f = &x.a as *mut u8; //~ ERROR casting + | ^^^^^^^^^^^^^^^ + +error[E0606]: casting `&[u8; 1]` as `*mut u8` is invalid + --> $DIR/issue-14845.rs:21:14 + | +LL | let _v = &local as *mut u8; //~ ERROR casting + | ^^^^^^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0606`. diff --git a/src/test/compile-fail/issue-14853.rs b/src/test/ui/issue-14853.rs similarity index 100% rename from src/test/compile-fail/issue-14853.rs rename to src/test/ui/issue-14853.rs diff --git a/src/test/ui/issue-14853.stderr b/src/test/ui/issue-14853.stderr new file mode 100644 index 0000000000000..6c2f6bb9c6978 --- /dev/null +++ b/src/test/ui/issue-14853.stderr @@ -0,0 +1,12 @@ +error[E0276]: impl has stricter requirements than trait + --> $DIR/issue-14853.rs:22:5 + | +LL | fn yay(_: Option, thing: &[T]); + | ----------------------------------------------- definition of `yay` from trait +... +LL | fn yay(_:Option, thing: &[T]) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl has extra requirement `T: Str` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0276`. diff --git a/src/test/compile-fail/issue-14915.rs b/src/test/ui/issue-14915.rs similarity index 100% rename from src/test/compile-fail/issue-14915.rs rename to src/test/ui/issue-14915.rs diff --git a/src/test/ui/issue-14915.stderr b/src/test/ui/issue-14915.stderr new file mode 100644 index 0000000000000..aa418f5df867a --- /dev/null +++ b/src/test/ui/issue-14915.stderr @@ -0,0 +1,11 @@ +error[E0369]: binary operation `+` cannot be applied to type `std::boxed::Box` + --> $DIR/issue-14915.rs:16:20 + | +LL | println!("{}", x + 1); + | ^^^^^ + | + = note: an implementation of `std::ops::Add` might be missing for `std::boxed::Box` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0369`. diff --git a/src/test/ui/issue-15034.nll.stderr b/src/test/ui/issue-15034.nll.stderr new file mode 100644 index 0000000000000..19fe83f8f6c86 --- /dev/null +++ b/src/test/ui/issue-15034.nll.stderr @@ -0,0 +1,17 @@ +warning: not reporting region error due to nll + --> $DIR/issue-15034.rs:27:9 + | +LL | Parser { lexer: lexer } + | ^^^^^^ + +error[E0621]: explicit lifetime required in the type of `lexer` + --> $DIR/issue-15034.rs:27:25 + | +LL | pub fn new(lexer: &'a mut Lexer) -> Parser<'a> { + | ----- consider changing the type of `lexer` to `&'a mut Lexer<'a>` +LL | Parser { lexer: lexer } + | ^^^^^ lifetime `'a` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-15034.rs b/src/test/ui/issue-15034.rs similarity index 100% rename from src/test/compile-fail/issue-15034.rs rename to src/test/ui/issue-15034.rs diff --git a/src/test/ui/issue-15034.stderr b/src/test/ui/issue-15034.stderr new file mode 100644 index 0000000000000..3bbf4235a2937 --- /dev/null +++ b/src/test/ui/issue-15034.stderr @@ -0,0 +1,11 @@ +error[E0621]: explicit lifetime required in the type of `lexer` + --> $DIR/issue-15034.rs:27:25 + | +LL | pub fn new(lexer: &'a mut Lexer) -> Parser<'a> { + | ----- consider changing the type of `lexer` to `&'a mut Lexer<'a>` +LL | Parser { lexer: lexer } + | ^^^^^ lifetime `'a` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-15094.rs b/src/test/ui/issue-15094.rs similarity index 100% rename from src/test/compile-fail/issue-15094.rs rename to src/test/ui/issue-15094.rs diff --git a/src/test/ui/issue-15094.stderr b/src/test/ui/issue-15094.stderr new file mode 100644 index 0000000000000..7928a6be35018 --- /dev/null +++ b/src/test/ui/issue-15094.stderr @@ -0,0 +1,12 @@ +error[E0053]: method `call_once` has an incompatible type for trait + --> $DIR/issue-15094.rs:21:5 + | +LL | fn call_once(self, _args: ()) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected "rust-call" fn, found "Rust" fn + | + = note: expected type `extern "rust-call" fn(Debuger, ())` + found type `fn(Debuger, ())` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0053`. diff --git a/src/test/compile-fail/issue-15129.rs b/src/test/ui/issue-15129.rs similarity index 100% rename from src/test/compile-fail/issue-15129.rs rename to src/test/ui/issue-15129.rs diff --git a/src/test/ui/issue-15129.stderr b/src/test/ui/issue-15129.stderr new file mode 100644 index 0000000000000..e65e651622244 --- /dev/null +++ b/src/test/ui/issue-15129.stderr @@ -0,0 +1,9 @@ +error[E0004]: non-exhaustive patterns: `(T1(()), V2(_))` not covered + --> $DIR/issue-15129.rs:22:11 + | +LL | match (T::T1(()), V::V2(true)) { + | ^^^^^^^^^^^^^^^^^^^^^^^^ pattern `(T1(()), V2(_))` not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/compile-fail/issue-15167.rs b/src/test/ui/issue-15167.rs similarity index 100% rename from src/test/compile-fail/issue-15167.rs rename to src/test/ui/issue-15167.rs diff --git a/src/test/ui/issue-15167.stderr b/src/test/ui/issue-15167.stderr new file mode 100644 index 0000000000000..b15c493ad69c5 --- /dev/null +++ b/src/test/ui/issue-15167.stderr @@ -0,0 +1,39 @@ +error[E0425]: cannot find value `n` in this scope + --> $DIR/issue-15167.rs:13:25 + | +LL | macro_rules! f { () => (n) } + | ^ not found in this scope +... +LL | println!("{}", f!()); + | ---- in this macro invocation + +error[E0425]: cannot find value `n` in this scope + --> $DIR/issue-15167.rs:13:25 + | +LL | macro_rules! f { () => (n) } + | ^ not found in this scope +... +LL | println!("{}", f!()); + | ---- in this macro invocation + +error[E0425]: cannot find value `n` in this scope + --> $DIR/issue-15167.rs:13:25 + | +LL | macro_rules! f { () => (n) } + | ^ not found in this scope +... +LL | println!("{}", f!()); + | ---- in this macro invocation + +error[E0425]: cannot find value `n` in this scope + --> $DIR/issue-15167.rs:13:25 + | +LL | macro_rules! f { () => (n) } + | ^ not found in this scope +... +LL | println!("{}", f!()); + | ---- in this macro invocation + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-15207.rs b/src/test/ui/issue-15207.rs similarity index 100% rename from src/test/compile-fail/issue-15207.rs rename to src/test/ui/issue-15207.rs diff --git a/src/test/ui/issue-15207.stderr b/src/test/ui/issue-15207.stderr new file mode 100644 index 0000000000000..77e520122777e --- /dev/null +++ b/src/test/ui/issue-15207.stderr @@ -0,0 +1,9 @@ +error[E0599]: no method named `push` found for type `!` in the current scope + --> $DIR/issue-15207.rs:13:15 + | +LL | break.push(1) //~ ERROR no method named `push` found for type `!` + | ^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-15381.rs b/src/test/ui/issue-15381.rs similarity index 100% rename from src/test/compile-fail/issue-15381.rs rename to src/test/ui/issue-15381.rs diff --git a/src/test/ui/issue-15381.stderr b/src/test/ui/issue-15381.stderr new file mode 100644 index 0000000000000..7a936a8210822 --- /dev/null +++ b/src/test/ui/issue-15381.stderr @@ -0,0 +1,9 @@ +error[E0005]: refutable pattern in `for` loop binding: `&[]` not covered + --> $DIR/issue-15381.rs:14:9 + | +LL | for &[x,y,z] in values.chunks(3).filter(|&xs| xs.len() == 3) { + | ^^^^^^^^ pattern `&[]` not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0005`. diff --git a/src/test/compile-fail/issue-15756.rs b/src/test/ui/issue-15756.rs similarity index 100% rename from src/test/compile-fail/issue-15756.rs rename to src/test/ui/issue-15756.rs diff --git a/src/test/ui/issue-15756.stderr b/src/test/ui/issue-15756.stderr new file mode 100644 index 0000000000000..af70f125302c7 --- /dev/null +++ b/src/test/ui/issue-15756.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `[T]` cannot be known at compilation time + --> $DIR/issue-15756.rs:17:10 + | +LL | &mut something + | ^^^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `[T]` + = note: to learn more, visit + = note: all local variables must have a statically known size + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-15783.rs b/src/test/ui/issue-15783.rs similarity index 100% rename from src/test/compile-fail/issue-15783.rs rename to src/test/ui/issue-15783.rs diff --git a/src/test/ui/issue-15783.stderr b/src/test/ui/issue-15783.stderr new file mode 100644 index 0000000000000..d565bad244810 --- /dev/null +++ b/src/test/ui/issue-15783.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-15783.rs:18:19 + | +LL | let msg = foo(x); + | ^ expected slice, found array of 1 elements + | + = note: expected type `std::option::Option<&[&str]>` + found type `std::option::Option<&[&str; 1]>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-15896.rs b/src/test/ui/issue-15896.rs similarity index 100% rename from src/test/compile-fail/issue-15896.rs rename to src/test/ui/issue-15896.rs diff --git a/src/test/ui/issue-15896.stderr b/src/test/ui/issue-15896.stderr new file mode 100644 index 0000000000000..b41848c8cdf28 --- /dev/null +++ b/src/test/ui/issue-15896.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-15896.rs:21:11 + | +LL | Tau{t: x}, + | ^^^^^^^^^ expected enum `main::R`, found struct `main::Tau` + | + = note: expected type `main::R` + found type `main::Tau` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-15965.rs b/src/test/ui/issue-15965.rs similarity index 100% rename from src/test/compile-fail/issue-15965.rs rename to src/test/ui/issue-15965.rs diff --git a/src/test/ui/issue-15965.stderr b/src/test/ui/issue-15965.stderr new file mode 100644 index 0000000000000..216c6460c77d1 --- /dev/null +++ b/src/test/ui/issue-15965.stderr @@ -0,0 +1,13 @@ +error[E0282]: type annotations needed + --> $DIR/issue-15965.rs:13:9 + | +LL | / { return () } +LL | | //~^ ERROR type annotations needed [E0282] +LL | | () + | |______^ cannot infer type for `_` + | + = note: type must be known at this point + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-16048.rs b/src/test/ui/issue-16048.rs similarity index 100% rename from src/test/compile-fail/issue-16048.rs rename to src/test/ui/issue-16048.rs diff --git a/src/test/ui/issue-16048.stderr b/src/test/ui/issue-16048.stderr new file mode 100644 index 0000000000000..97883fb2a9501 --- /dev/null +++ b/src/test/ui/issue-16048.stderr @@ -0,0 +1,12 @@ +error[E0195]: lifetime parameters or bounds on method `get` do not match the trait declaration + --> $DIR/issue-16048.rs:31:11 + | +LL | fn get<'p, T : Test<'p>>(&self) -> T; + | ------------------ lifetimes in impl do not match this method in trait +... +LL | fn get<'p, T : Test<'a>>(&self) -> T { + | ^^^^^^^^^^^^^^^^^^ lifetimes do not match method in trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0195`. diff --git a/src/test/compile-fail/issue-16098.rs b/src/test/ui/issue-16098.rs similarity index 100% rename from src/test/compile-fail/issue-16098.rs rename to src/test/ui/issue-16098.rs diff --git a/src/test/ui/issue-16098.stderr b/src/test/ui/issue-16098.stderr new file mode 100644 index 0000000000000..31162ca50cc89 --- /dev/null +++ b/src/test/ui/issue-16098.stderr @@ -0,0 +1,13 @@ +error: recursion limit reached while expanding the macro `prob1` + --> $DIR/issue-16098.rs:17:18 + | +LL | $n + prob1!($n - 1); //~ ERROR recursion limit reached while expanding the macro `prob1` + | ^^^^^^^^^^^^^^ +... +LL | println!("Problem 1: {}", prob1!(1000)); + | ------------ in this macro invocation + | + = help: consider adding a `#![recursion_limit="128"]` attribute to your crate + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-16149.rs b/src/test/ui/issue-16149.rs similarity index 100% rename from src/test/compile-fail/issue-16149.rs rename to src/test/ui/issue-16149.rs diff --git a/src/test/ui/issue-16149.stderr b/src/test/ui/issue-16149.stderr new file mode 100644 index 0000000000000..b0b6e9dfcd03d --- /dev/null +++ b/src/test/ui/issue-16149.stderr @@ -0,0 +1,12 @@ +error[E0530]: match bindings cannot shadow statics + --> $DIR/issue-16149.rs:17:9 + | +LL | static externalValue: isize; + | ---------------------------- a static `externalValue` is defined here +... +LL | externalValue => true, + | ^^^^^^^^^^^^^ cannot be named the same as a static + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0530`. diff --git a/src/test/compile-fail/issue-16250.rs b/src/test/ui/issue-16250.rs similarity index 100% rename from src/test/compile-fail/issue-16250.rs rename to src/test/ui/issue-16250.rs diff --git a/src/test/ui/issue-16250.stderr b/src/test/ui/issue-16250.stderr new file mode 100644 index 0000000000000..c826b20b65f29 --- /dev/null +++ b/src/test/ui/issue-16250.stderr @@ -0,0 +1,21 @@ +error: `extern` block uses type `Foo` which is not FFI-safe: this struct has unspecified layout + --> $DIR/issue-16250.rs:16:20 + | +LL | pub fn foo(x: (Foo)); //~ ERROR unspecified layout + | ^^^ + | +note: lint level defined here + --> $DIR/issue-16250.rs:11:9 + | +LL | #![deny(warnings)] + | ^^^^^^^^ + = note: #[deny(improper_ctypes)] implied by #[deny(warnings)] + = help: consider adding a #[repr(C)] or #[repr(transparent)] attribute to this struct +note: type defined here + --> $DIR/issue-16250.rs:13:1 + | +LL | pub struct Foo; + | ^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-16338.rs b/src/test/ui/issue-16338.rs similarity index 100% rename from src/test/compile-fail/issue-16338.rs rename to src/test/ui/issue-16338.rs diff --git a/src/test/ui/issue-16338.stderr b/src/test/ui/issue-16338.stderr new file mode 100644 index 0000000000000..c670f1e3e9ca1 --- /dev/null +++ b/src/test/ui/issue-16338.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-16338.rs:17:9 + | +LL | let Slice { data: data, len: len } = "foo"; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected str, found struct `Slice` + | + = note: expected type `str` + found type `Slice<_>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-16401.rs b/src/test/ui/issue-16401.rs similarity index 100% rename from src/test/compile-fail/issue-16401.rs rename to src/test/ui/issue-16401.rs diff --git a/src/test/ui/issue-16401.stderr b/src/test/ui/issue-16401.stderr new file mode 100644 index 0000000000000..179415c762163 --- /dev/null +++ b/src/test/ui/issue-16401.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-16401.rs:18:9 + | +LL | Slice { data: data, len: len } => (), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found struct `Slice` + | + = note: expected type `()` + found type `Slice<_>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-16538.rs b/src/test/ui/issue-16538.rs similarity index 100% rename from src/test/compile-fail/issue-16538.rs rename to src/test/ui/issue-16538.rs diff --git a/src/test/ui/issue-16538.stderr b/src/test/ui/issue-16538.stderr new file mode 100644 index 0000000000000..9bc3590ebab37 --- /dev/null +++ b/src/test/ui/issue-16538.stderr @@ -0,0 +1,19 @@ +error[E0015]: calls in statics are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-16538.rs:23:27 + | +LL | static foo: *const Y::X = Y::foo(Y::x as *const Y::X); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0277]: `*const usize` cannot be shared between threads safely + --> $DIR/issue-16538.rs:23:1 + | +LL | static foo: *const Y::X = Y::foo(Y::x as *const Y::X); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const usize` cannot be shared between threads safely + | + = help: the trait `std::marker::Sync` is not implemented for `*const usize` + = note: shared static variables must have a type that implements `Sync` + +error: aborting due to 2 previous errors + +Some errors occurred: E0015, E0277. +For more information about an error, try `rustc --explain E0015`. diff --git a/src/test/compile-fail/issue-16562.rs b/src/test/ui/issue-16562.rs similarity index 100% rename from src/test/compile-fail/issue-16562.rs rename to src/test/ui/issue-16562.rs diff --git a/src/test/ui/issue-16562.stderr b/src/test/ui/issue-16562.stderr new file mode 100644 index 0000000000000..a4525033e2556 --- /dev/null +++ b/src/test/ui/issue-16562.stderr @@ -0,0 +1,9 @@ +error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates + --> $DIR/issue-16562.rs:20:6 + | +LL | impl Collection for Col { + | ^ unconstrained type parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0207`. diff --git a/src/test/ui/issue-16683.nll.stderr b/src/test/ui/issue-16683.nll.stderr new file mode 100644 index 0000000000000..d789f580b2738 --- /dev/null +++ b/src/test/ui/issue-16683.nll.stderr @@ -0,0 +1,22 @@ +warning: not reporting region error due to nll + --> $DIR/issue-16683.rs:14:9 + | +LL | self.a(); //~ ERROR cannot infer + | ^^^^ + +warning: not reporting region error due to nll + --> $DIR/issue-16683.rs:14:14 + | +LL | self.a(); //~ ERROR cannot infer + | ^ + +error: unsatisfied lifetime constraints + --> $DIR/issue-16683.rs:14:9 + | +LL | fn b(&self) { + | - let's call the lifetime of this reference `'1` +LL | self.a(); //~ ERROR cannot infer + | ^^^^^^^^ argument requires that `'1` must outlive `'a` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-16683.rs b/src/test/ui/issue-16683.rs similarity index 100% rename from src/test/compile-fail/issue-16683.rs rename to src/test/ui/issue-16683.rs diff --git a/src/test/ui/issue-16683.stderr b/src/test/ui/issue-16683.stderr new file mode 100644 index 0000000000000..ceb5347ca8036 --- /dev/null +++ b/src/test/ui/issue-16683.stderr @@ -0,0 +1,30 @@ +error[E0495]: cannot infer an appropriate lifetime for autoref due to conflicting requirements + --> $DIR/issue-16683.rs:14:14 + | +LL | self.a(); //~ ERROR cannot infer + | ^ + | +note: first, the lifetime cannot outlive the anonymous lifetime #1 defined on the method body at 13:5... + --> $DIR/issue-16683.rs:13:5 + | +LL | / fn b(&self) { +LL | | self.a(); //~ ERROR cannot infer +LL | | } + | |_____^ +note: ...so that reference does not outlive borrowed content + --> $DIR/issue-16683.rs:14:9 + | +LL | self.a(); //~ ERROR cannot infer + | ^^^^ +note: but, the lifetime must be valid for the lifetime 'a as defined on the trait at 11:9... + --> $DIR/issue-16683.rs:11:9 + | +LL | trait T<'a> { + | ^^ + = note: ...so that the types are compatible: + expected &'a Self + found &Self + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0495`. diff --git a/src/test/ui/issue-16922.nll.stderr b/src/test/ui/issue-16922.nll.stderr new file mode 100644 index 0000000000000..902baaf579f7d --- /dev/null +++ b/src/test/ui/issue-16922.nll.stderr @@ -0,0 +1,17 @@ +warning: not reporting region error due to nll + --> $DIR/issue-16922.rs:14:14 + | +LL | Box::new(value) as Box + | ^^^^^ + +error[E0621]: explicit lifetime required in the type of `value` + --> $DIR/issue-16922.rs:14:5 + | +LL | fn foo(value: &T) -> Box { + | ----- consider changing the type of `value` to `&'static T` +LL | Box::new(value) as Box + | ^^^^^^^^^^^^^^^ lifetime `'static` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-16922.rs b/src/test/ui/issue-16922.rs similarity index 100% rename from src/test/compile-fail/issue-16922.rs rename to src/test/ui/issue-16922.rs diff --git a/src/test/ui/issue-16922.stderr b/src/test/ui/issue-16922.stderr new file mode 100644 index 0000000000000..cf81d4b4d08b7 --- /dev/null +++ b/src/test/ui/issue-16922.stderr @@ -0,0 +1,11 @@ +error[E0621]: explicit lifetime required in the type of `value` + --> $DIR/issue-16922.rs:14:5 + | +LL | fn foo(value: &T) -> Box { + | ----- consider changing the type of `value` to `&'static T` +LL | Box::new(value) as Box + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'static` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-16939.rs b/src/test/ui/issue-16939.rs similarity index 100% rename from src/test/compile-fail/issue-16939.rs rename to src/test/ui/issue-16939.rs diff --git a/src/test/ui/issue-16939.stderr b/src/test/ui/issue-16939.stderr new file mode 100644 index 0000000000000..238480493703d --- /dev/null +++ b/src/test/ui/issue-16939.stderr @@ -0,0 +1,9 @@ +error[E0057]: this function takes 0 parameters but 1 parameter was supplied + --> $DIR/issue-16939.rs:15:9 + | +LL | |t| f(t); //~ ERROR E0057 + | ^^^^ expected 0 parameters + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0057`. diff --git a/src/test/compile-fail/issue-16966.rs b/src/test/ui/issue-16966.rs similarity index 100% rename from src/test/compile-fail/issue-16966.rs rename to src/test/ui/issue-16966.rs diff --git a/src/test/ui/issue-16966.stderr b/src/test/ui/issue-16966.stderr new file mode 100644 index 0000000000000..f7129a6fe1b87 --- /dev/null +++ b/src/test/ui/issue-16966.stderr @@ -0,0 +1,13 @@ +error[E0282]: type annotations needed + --> $DIR/issue-16966.rs:13:5 + | +LL | / panic!( +LL | | std::default::Default::default() +LL | | ); + | |______^ cannot infer type for `M` + | + = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-1697.rs b/src/test/ui/issue-1697.rs similarity index 100% rename from src/test/compile-fail/issue-1697.rs rename to src/test/ui/issue-1697.rs diff --git a/src/test/ui/issue-1697.stderr b/src/test/ui/issue-1697.stderr new file mode 100644 index 0000000000000..28a7fbcaabee8 --- /dev/null +++ b/src/test/ui/issue-1697.stderr @@ -0,0 +1,9 @@ +error[E0432]: unresolved import `unresolved` + --> $DIR/issue-1697.rs:13:5 + | +LL | use unresolved::*; //~ ERROR unresolved import `unresolved` [E0432] + | ^^^^^^^^^^ Maybe a missing `extern crate unresolved;`? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-16994.rs b/src/test/ui/issue-16994.rs similarity index 100% rename from src/test/compile-fail/issue-16994.rs rename to src/test/ui/issue-16994.rs diff --git a/src/test/ui/issue-16994.stderr b/src/test/ui/issue-16994.stderr new file mode 100644 index 0000000000000..8392b9da4118b --- /dev/null +++ b/src/test/ui/issue-16994.stderr @@ -0,0 +1,10 @@ +error: compilation successful + --> $DIR/issue-16994.rs:18:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | cb(Box::new(|(k, &(ref v, b))| (*k, v.clone(), b))); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-17001.rs b/src/test/ui/issue-17001.rs similarity index 100% rename from src/test/compile-fail/issue-17001.rs rename to src/test/ui/issue-17001.rs diff --git a/src/test/ui/issue-17001.stderr b/src/test/ui/issue-17001.stderr new file mode 100644 index 0000000000000..a8e0cd8591bf8 --- /dev/null +++ b/src/test/ui/issue-17001.stderr @@ -0,0 +1,9 @@ +error[E0574]: expected struct, variant or union type, found module `foo` + --> $DIR/issue-17001.rs:14:13 + | +LL | let p = foo { x: () }; //~ ERROR expected struct, variant or union type, found module `foo` + | ^^^ not a struct, variant or union type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0574`. diff --git a/src/test/compile-fail/issue-17025.rs b/src/test/ui/issue-17025.rs similarity index 100% rename from src/test/compile-fail/issue-17025.rs rename to src/test/ui/issue-17025.rs diff --git a/src/test/compile-fail/issue-17033.rs b/src/test/ui/issue-17033.rs similarity index 100% rename from src/test/compile-fail/issue-17033.rs rename to src/test/ui/issue-17033.rs diff --git a/src/test/ui/issue-17033.stderr b/src/test/ui/issue-17033.stderr new file mode 100644 index 0000000000000..d6884f1888189 --- /dev/null +++ b/src/test/ui/issue-17033.stderr @@ -0,0 +1,15 @@ +error[E0308]: mismatched types + --> $DIR/issue-17033.rs:12:10 + | +LL | (*p)(()) //~ ERROR mismatched types + | ^^ + | | + | expected &mut (), found () + | help: consider mutably borrowing here: `&mut ()` + | + = note: expected type `&mut ()` + found type `()` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-17252.rs b/src/test/ui/issue-17252.rs similarity index 100% rename from src/test/compile-fail/issue-17252.rs rename to src/test/ui/issue-17252.rs diff --git a/src/test/ui/issue-17252.stderr b/src/test/ui/issue-17252.stderr new file mode 100644 index 0000000000000..8f97a841666ec --- /dev/null +++ b/src/test/ui/issue-17252.stderr @@ -0,0 +1,16 @@ +error[E0391]: cycle detected when processing `FOO` + --> $DIR/issue-17252.rs:11:20 + | +LL | const FOO: usize = FOO; //~ ERROR E0391 + | ^^^ + | + = note: ...which again requires processing `FOO`, completing the cycle +note: cycle used when processing `main::{{constant}}` + --> $DIR/issue-17252.rs:14:18 + | +LL | let _x: [u8; FOO]; // caused stack overflow prior to fix + | ^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0391`. diff --git a/src/test/compile-fail/issue-17337.rs b/src/test/ui/issue-17337.rs similarity index 100% rename from src/test/compile-fail/issue-17337.rs rename to src/test/ui/issue-17337.rs diff --git a/src/test/ui/issue-17337.stderr b/src/test/ui/issue-17337.stderr new file mode 100644 index 0000000000000..0321547374537 --- /dev/null +++ b/src/test/ui/issue-17337.stderr @@ -0,0 +1,14 @@ +error: use of deprecated item 'Foo::foo': text + --> $DIR/issue-17337.rs:26:6 + | +LL | .foo(); //~ ERROR use of deprecated item + | ^^^ + | +note: lint level defined here + --> $DIR/issue-17337.rs:12:9 + | +LL | #![deny(deprecated)] + | ^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-17373.rs b/src/test/ui/issue-17373.rs similarity index 100% rename from src/test/compile-fail/issue-17373.rs rename to src/test/ui/issue-17373.rs diff --git a/src/test/ui/issue-17373.stderr b/src/test/ui/issue-17373.stderr new file mode 100644 index 0000000000000..38e93e65bdc17 --- /dev/null +++ b/src/test/ui/issue-17373.stderr @@ -0,0 +1,9 @@ +error[E0614]: type `!` cannot be dereferenced + --> $DIR/issue-17373.rs:12:5 + | +LL | *return //~ ERROR type `!` cannot be dereferenced + | ^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0614`. diff --git a/src/test/ui/issue-17385.nll.stderr b/src/test/ui/issue-17385.nll.stderr new file mode 100644 index 0000000000000..c3387e58fcf64 --- /dev/null +++ b/src/test/ui/issue-17385.nll.stderr @@ -0,0 +1,77 @@ +error[E0382]: use of moved value: `foo` + --> $DIR/issue-17385.rs:28:5 + | +LL | drop(foo); + | --- value moved here +LL | / match foo { //~ ERROR use of moved value +LL | | X(1) => (), +LL | | _ => unreachable!() +LL | | } + | |_____^ value used here after move + | + = note: move occurs because `foo` has type `X`, which does not implement the `Copy` trait + +error[E0382]: borrow of moved value: `foo` + --> $DIR/issue-17385.rs:28:5 + | +LL | drop(foo); + | --- value moved here +LL | / match foo { //~ ERROR use of moved value +LL | | X(1) => (), +LL | | _ => unreachable!() +LL | | } + | |_____^ value borrowed here after move + | + = note: move occurs because `foo` has type `X`, which does not implement the `Copy` trait + +error[E0382]: use of moved value: `foo.0` + --> $DIR/issue-17385.rs:29:11 + | +LL | drop(foo); + | --- value moved here +LL | match foo { //~ ERROR use of moved value +LL | X(1) => (), + | ^ value used here after move + | + = note: move occurs because `foo` has type `X`, which does not implement the `Copy` trait + +error[E0382]: use of moved value: `e` + --> $DIR/issue-17385.rs:35:5 + | +LL | drop(e); + | - value moved here +LL | / match e { //~ ERROR use of moved value +LL | | Enum::Variant1 => unreachable!(), +LL | | Enum::Variant2 => () +LL | | } + | |_____^ value used here after move + | + = note: move occurs because `e` has type `Enum`, which does not implement the `Copy` trait + +error[E0382]: borrow of moved value: `e` + --> $DIR/issue-17385.rs:35:5 + | +LL | drop(e); + | - value moved here +LL | / match e { //~ ERROR use of moved value +LL | | Enum::Variant1 => unreachable!(), +LL | | Enum::Variant2 => () +LL | | } + | |_____^ value borrowed here after move + | + = note: move occurs because `e` has type `Enum`, which does not implement the `Copy` trait + +error[E0382]: use of moved value: `e` + --> $DIR/issue-17385.rs:36:9 + | +LL | drop(e); + | - value moved here +LL | match e { //~ ERROR use of moved value +LL | Enum::Variant1 => unreachable!(), + | ^^^^^^^^^^^^^^ value used here after move + | + = note: move occurs because `e` has type `Enum`, which does not implement the `Copy` trait + +error: aborting due to 6 previous errors + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-17385.rs b/src/test/ui/issue-17385.rs similarity index 100% rename from src/test/compile-fail/issue-17385.rs rename to src/test/ui/issue-17385.rs diff --git a/src/test/ui/issue-17385.stderr b/src/test/ui/issue-17385.stderr new file mode 100644 index 0000000000000..01d6d1a2720a3 --- /dev/null +++ b/src/test/ui/issue-17385.stderr @@ -0,0 +1,23 @@ +error[E0382]: use of moved value: `foo` + --> $DIR/issue-17385.rs:28:11 + | +LL | drop(foo); + | --- value moved here +LL | match foo { //~ ERROR use of moved value + | ^^^ value used here after move + | + = note: move occurs because `foo` has type `X`, which does not implement the `Copy` trait + +error[E0382]: use of moved value: `e` + --> $DIR/issue-17385.rs:35:11 + | +LL | drop(e); + | - value moved here +LL | match e { //~ ERROR use of moved value + | ^ value used here after move + | + = note: move occurs because `e` has type `Enum`, which does not implement the `Copy` trait + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-17405.rs b/src/test/ui/issue-17405.rs similarity index 100% rename from src/test/compile-fail/issue-17405.rs rename to src/test/ui/issue-17405.rs diff --git a/src/test/ui/issue-17405.stderr b/src/test/ui/issue-17405.stderr new file mode 100644 index 0000000000000..bcccfd301b786 --- /dev/null +++ b/src/test/ui/issue-17405.stderr @@ -0,0 +1,9 @@ +error[E0574]: expected struct, variant or union type, found enum `Foo` + --> $DIR/issue-17405.rs:17:9 + | +LL | Foo { i } => () //~ ERROR expected struct, variant or union type, found enum `Foo` + | ^^^ not a struct, variant or union type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0574`. diff --git a/src/test/compile-fail/issue-17431-1.rs b/src/test/ui/issue-17431-1.rs similarity index 100% rename from src/test/compile-fail/issue-17431-1.rs rename to src/test/ui/issue-17431-1.rs diff --git a/src/test/ui/issue-17431-1.stderr b/src/test/ui/issue-17431-1.stderr new file mode 100644 index 0000000000000..fb27693c85efd --- /dev/null +++ b/src/test/ui/issue-17431-1.stderr @@ -0,0 +1,13 @@ +error[E0072]: recursive type `Foo` has infinite size + --> $DIR/issue-17431-1.rs:11:1 + | +LL | struct Foo { foo: Option> } + | ^^^^^^^^^^ ------------------------ recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Foo` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-17431-2.rs b/src/test/ui/issue-17431-2.rs similarity index 100% rename from src/test/compile-fail/issue-17431-2.rs rename to src/test/ui/issue-17431-2.rs diff --git a/src/test/ui/issue-17431-2.stderr b/src/test/ui/issue-17431-2.stderr new file mode 100644 index 0000000000000..7e87babe93e85 --- /dev/null +++ b/src/test/ui/issue-17431-2.stderr @@ -0,0 +1,23 @@ +error[E0072]: recursive type `Baz` has infinite size + --> $DIR/issue-17431-2.rs:11:1 + | +LL | struct Baz { q: Option } + | ^^^^^^^^^^ -------------- recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Baz` representable + +error[E0072]: recursive type `Foo` has infinite size + --> $DIR/issue-17431-2.rs:14:1 + | +LL | struct Foo { q: Option } + | ^^^^^^^^^^ -------------- recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Foo` representable + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-17431-3.rs b/src/test/ui/issue-17431-3.rs similarity index 100% rename from src/test/compile-fail/issue-17431-3.rs rename to src/test/ui/issue-17431-3.rs diff --git a/src/test/ui/issue-17431-3.stderr b/src/test/ui/issue-17431-3.stderr new file mode 100644 index 0000000000000..c12a4c11c2cfb --- /dev/null +++ b/src/test/ui/issue-17431-3.stderr @@ -0,0 +1,13 @@ +error[E0072]: recursive type `Foo` has infinite size + --> $DIR/issue-17431-3.rs:13:1 + | +LL | struct Foo { foo: Mutex> } + | ^^^^^^^^^^ ----------------------- recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Foo` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-17431-4.rs b/src/test/ui/issue-17431-4.rs similarity index 100% rename from src/test/compile-fail/issue-17431-4.rs rename to src/test/ui/issue-17431-4.rs diff --git a/src/test/ui/issue-17431-4.stderr b/src/test/ui/issue-17431-4.stderr new file mode 100644 index 0000000000000..acfd688b62206 --- /dev/null +++ b/src/test/ui/issue-17431-4.stderr @@ -0,0 +1,13 @@ +error[E0072]: recursive type `Foo` has infinite size + --> $DIR/issue-17431-4.rs:13:1 + | +LL | struct Foo { foo: Option>>, marker: marker::PhantomData } + | ^^^^^^^^^^^^^ --------------------------- recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Foo` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-17431-5.rs b/src/test/ui/issue-17431-5.rs similarity index 100% rename from src/test/compile-fail/issue-17431-5.rs rename to src/test/ui/issue-17431-5.rs diff --git a/src/test/ui/issue-17431-5.stderr b/src/test/ui/issue-17431-5.stderr new file mode 100644 index 0000000000000..ddfea58a857ac --- /dev/null +++ b/src/test/ui/issue-17431-5.stderr @@ -0,0 +1,13 @@ +error[E0072]: recursive type `Bar` has infinite size + --> $DIR/issue-17431-5.rs:15:1 + | +LL | struct Bar { x: Bar , marker: marker::PhantomData } + | ^^^^^^^^^^^^^ ----------- recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Bar` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-17431-6.rs b/src/test/ui/issue-17431-6.rs similarity index 100% rename from src/test/compile-fail/issue-17431-6.rs rename to src/test/ui/issue-17431-6.rs diff --git a/src/test/ui/issue-17431-6.stderr b/src/test/ui/issue-17431-6.stderr new file mode 100644 index 0000000000000..ab2cc439f17a9 --- /dev/null +++ b/src/test/ui/issue-17431-6.stderr @@ -0,0 +1,13 @@ +error[E0072]: recursive type `Foo` has infinite size + --> $DIR/issue-17431-6.rs:13:1 + | +LL | enum Foo { X(Mutex>) } + | ^^^^^^^^ ------------------ recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Foo` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-17431-7.rs b/src/test/ui/issue-17431-7.rs similarity index 100% rename from src/test/compile-fail/issue-17431-7.rs rename to src/test/ui/issue-17431-7.rs diff --git a/src/test/ui/issue-17431-7.stderr b/src/test/ui/issue-17431-7.stderr new file mode 100644 index 0000000000000..7f9118860b9b1 --- /dev/null +++ b/src/test/ui/issue-17431-7.stderr @@ -0,0 +1,13 @@ +error[E0072]: recursive type `Foo` has infinite size + --> $DIR/issue-17431-7.rs:11:1 + | +LL | enum Foo { Voo(Option>) } + | ^^^^^^^^ ------------------- recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `Foo` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-17444.rs b/src/test/ui/issue-17444.rs similarity index 100% rename from src/test/compile-fail/issue-17444.rs rename to src/test/ui/issue-17444.rs diff --git a/src/test/ui/issue-17444.stderr b/src/test/ui/issue-17444.stderr new file mode 100644 index 0000000000000..3f87d806e7e87 --- /dev/null +++ b/src/test/ui/issue-17444.stderr @@ -0,0 +1,9 @@ +error[E0606]: casting `Test` as `*const isize` is invalid + --> $DIR/issue-17444.rs:16:14 + | +LL | let _x = Test::Foo as *const isize; + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0606`. diff --git a/src/test/compile-fail/issue-17458.rs b/src/test/ui/issue-17458.rs similarity index 100% rename from src/test/compile-fail/issue-17458.rs rename to src/test/ui/issue-17458.rs diff --git a/src/test/ui/issue-17458.stderr b/src/test/ui/issue-17458.stderr new file mode 100644 index 0000000000000..7a43813fa6d38 --- /dev/null +++ b/src/test/ui/issue-17458.stderr @@ -0,0 +1,9 @@ +error[E0018]: raw pointers cannot be cast to integers in statics + --> $DIR/issue-17458.rs:11:19 + | +LL | static X: usize = 0 as *const usize as usize; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0018`. diff --git a/src/test/ui/issue-17545.nll.stderr b/src/test/ui/issue-17545.nll.stderr new file mode 100644 index 0000000000000..50a4b3f7f3e82 --- /dev/null +++ b/src/test/ui/issue-17545.nll.stderr @@ -0,0 +1,17 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-17545.rs:17:10 + | +LL | &id(()), //~ ERROR borrowed value does not live long enough + | ^^^^^^ temporary value does not live long enough +LL | )); + | - temporary value only lives until here + | +note: borrowed value must be valid for the lifetime 'a as defined on the function body at 15:12... + --> $DIR/issue-17545.rs:15:12 + | +LL | pub fn foo<'a, F: Fn(&'a ())>(bar: F) { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-17545.rs b/src/test/ui/issue-17545.rs similarity index 100% rename from src/test/compile-fail/issue-17545.rs rename to src/test/ui/issue-17545.rs diff --git a/src/test/ui/issue-17545.stderr b/src/test/ui/issue-17545.stderr new file mode 100644 index 0000000000000..ce69866558335 --- /dev/null +++ b/src/test/ui/issue-17545.stderr @@ -0,0 +1,18 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-17545.rs:17:10 + | +LL | &id(()), //~ ERROR borrowed value does not live long enough + | ^^^^^^ temporary value does not live long enough +LL | )); + | - temporary value only lives until here + | +note: borrowed value must be valid for the lifetime 'a as defined on the function body at 15:12... + --> $DIR/issue-17545.rs:15:12 + | +LL | pub fn foo<'a, F: Fn(&'a ())>(bar: F) { + | ^^ + = note: consider using a `let` binding to increase its lifetime + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-17546.rs b/src/test/ui/issue-17546.rs similarity index 100% rename from src/test/compile-fail/issue-17546.rs rename to src/test/ui/issue-17546.rs diff --git a/src/test/ui/issue-17546.stderr b/src/test/ui/issue-17546.stderr new file mode 100644 index 0000000000000..39f7d5fcc04bc --- /dev/null +++ b/src/test/ui/issue-17546.stderr @@ -0,0 +1,55 @@ +error[E0573]: expected type, found variant `NoResult` + --> $DIR/issue-17546.rs:22:17 + | +LL | fn new() -> NoResult { + | --------^^^^^^^^^^^^^^^^ + | | + | did you mean `Result`? + | help: you can try using the variant's enum: `foo::MyEnum` + +error[E0573]: expected type, found variant `Result` + --> $DIR/issue-17546.rs:32:17 + | +LL | fn new() -> Result { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a type +help: possible better candidates are found in other modules, you can import them into scope + | +LL | use std::fmt::Result; + | +LL | use std::io::Result; + | +LL | use std::prelude::v1::Result; + | +LL | use std::result::Result; + | +and 1 other candidates + +error[E0573]: expected type, found variant `Result` + --> $DIR/issue-17546.rs:38:13 + | +LL | fn new() -> Result { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a type +help: possible better candidates are found in other modules, you can import them into scope + | +LL | use std::fmt::Result; + | +LL | use std::io::Result; + | +LL | use std::prelude::v1::Result; + | +LL | use std::result::Result; + | +and 1 other candidates + +error[E0573]: expected type, found variant `NoResult` + --> $DIR/issue-17546.rs:43:15 + | +LL | fn newer() -> NoResult { + | --------^^^^^^^^^^^^^^^^^^^^^ + | | + | did you mean `Result`? + | help: you can try using the variant's enum: `foo::MyEnum` + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0573`. diff --git a/src/test/compile-fail/issue-17551.rs b/src/test/ui/issue-17551.rs similarity index 100% rename from src/test/compile-fail/issue-17551.rs rename to src/test/ui/issue-17551.rs diff --git a/src/test/ui/issue-17551.stderr b/src/test/ui/issue-17551.stderr new file mode 100644 index 0000000000000..0cdee0337d848 --- /dev/null +++ b/src/test/ui/issue-17551.stderr @@ -0,0 +1,11 @@ +error[E0282]: type annotations needed + --> $DIR/issue-17551.rs:16:15 + | +LL | let foo = B(marker::PhantomData); //~ ERROR type annotations needed + | --- ^ cannot infer type for `T` + | | + | consider giving `foo` a type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-17651.rs b/src/test/ui/issue-17651.rs similarity index 100% rename from src/test/compile-fail/issue-17651.rs rename to src/test/ui/issue-17651.rs diff --git a/src/test/ui/issue-17651.stderr b/src/test/ui/issue-17651.stderr new file mode 100644 index 0000000000000..d21b306031506 --- /dev/null +++ b/src/test/ui/issue-17651.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `[{integer}]` cannot be known at compilation time + --> $DIR/issue-17651.rs:15:9 + | +LL | (|| Box::new(*(&[0][..])))(); + | ^^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `[{integer}]` + = note: to learn more, visit + = note: required by `>::new` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-17718-const-bad-values.rs b/src/test/ui/issue-17718-const-bad-values.rs similarity index 100% rename from src/test/compile-fail/issue-17718-const-bad-values.rs rename to src/test/ui/issue-17718-const-bad-values.rs diff --git a/src/test/ui/issue-17718-const-bad-values.stderr b/src/test/ui/issue-17718-const-bad-values.stderr new file mode 100644 index 0000000000000..0ab7f965b63eb --- /dev/null +++ b/src/test/ui/issue-17718-const-bad-values.stderr @@ -0,0 +1,28 @@ +error[E0017]: references in constants may only refer to immutable values + --> $DIR/issue-17718-const-bad-values.rs:11:34 + | +LL | const C1: &'static mut [usize] = &mut []; + | ^^^^^^^ constants require immutable values + +error[E0013]: constants cannot refer to statics, use a constant instead + --> $DIR/issue-17718-const-bad-values.rs:15:41 + | +LL | const C2: &'static mut usize = unsafe { &mut S }; + | ^^^^^^ + +error[E0017]: references in constants may only refer to immutable values + --> $DIR/issue-17718-const-bad-values.rs:15:41 + | +LL | const C2: &'static mut usize = unsafe { &mut S }; + | ^^^^^^ constants require immutable values + +error[E0017]: references in constants may only refer to immutable values + --> $DIR/issue-17718-const-bad-values.rs:15:32 + | +LL | const C2: &'static mut usize = unsafe { &mut S }; + | ^^^^^^^^^^^^^^^^^ constants require immutable values + +error: aborting due to 4 previous errors + +Some errors occurred: E0013, E0017. +For more information about an error, try `rustc --explain E0013`. diff --git a/src/test/compile-fail/issue-17718-const-borrow.rs b/src/test/ui/issue-17718-const-borrow.rs similarity index 100% rename from src/test/compile-fail/issue-17718-const-borrow.rs rename to src/test/ui/issue-17718-const-borrow.rs diff --git a/src/test/ui/issue-17718-const-borrow.stderr b/src/test/ui/issue-17718-const-borrow.stderr new file mode 100644 index 0000000000000..3b0217060f782 --- /dev/null +++ b/src/test/ui/issue-17718-const-borrow.stderr @@ -0,0 +1,21 @@ +error[E0492]: cannot borrow a constant which may contain interior mutability, create a static instead + --> $DIR/issue-17718-const-borrow.rs:14:39 + | +LL | const B: &'static UnsafeCell = &A; + | ^^ + +error[E0492]: cannot borrow a constant which may contain interior mutability, create a static instead + --> $DIR/issue-17718-const-borrow.rs:19:39 + | +LL | const E: &'static UnsafeCell = &D.a; + | ^^^^ + +error[E0492]: cannot borrow a constant which may contain interior mutability, create a static instead + --> $DIR/issue-17718-const-borrow.rs:21:23 + | +LL | const F: &'static C = &D; + | ^^ + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0492`. diff --git a/src/test/compile-fail/issue-17718-const-naming.rs b/src/test/ui/issue-17718-const-naming.rs similarity index 100% rename from src/test/compile-fail/issue-17718-const-naming.rs rename to src/test/ui/issue-17718-const-naming.rs diff --git a/src/test/ui/issue-17718-const-naming.stderr b/src/test/ui/issue-17718-const-naming.stderr new file mode 100644 index 0000000000000..9636db31390d9 --- /dev/null +++ b/src/test/ui/issue-17718-const-naming.stderr @@ -0,0 +1,28 @@ +error: constant item is never used: `foo` + --> $DIR/issue-17718-const-naming.rs:14:1 + | +LL | const foo: isize = 3; + | ^^^^^^^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-17718-const-naming.rs:12:8 + | +LL | #[deny(warnings)] + | ^^^^^^^^ + = note: #[deny(dead_code)] implied by #[deny(warnings)] + +error: constant `foo` should have an upper case name such as `FOO` + --> $DIR/issue-17718-const-naming.rs:14:1 + | +LL | const foo: isize = 3; + | ^^^^^^^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-17718-const-naming.rs:12:8 + | +LL | #[deny(warnings)] + | ^^^^^^^^ + = note: #[deny(non_upper_case_globals)] implied by #[deny(warnings)] + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-17718-constants-not-static.rs b/src/test/ui/issue-17718-constants-not-static.rs similarity index 100% rename from src/test/compile-fail/issue-17718-constants-not-static.rs rename to src/test/ui/issue-17718-constants-not-static.rs diff --git a/src/test/ui/issue-17718-constants-not-static.stderr b/src/test/ui/issue-17718-constants-not-static.stderr new file mode 100644 index 0000000000000..61d8399aba9b1 --- /dev/null +++ b/src/test/ui/issue-17718-constants-not-static.stderr @@ -0,0 +1,13 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-17718-constants-not-static.rs:15:31 + | +LL | fn foo() -> &'static usize { &id(FOO) } + | ^^^^^^^ - temporary value only lives until here + | | + | temporary value does not live long enough + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-17718-patterns.rs b/src/test/ui/issue-17718-patterns.rs similarity index 100% rename from src/test/compile-fail/issue-17718-patterns.rs rename to src/test/ui/issue-17718-patterns.rs diff --git a/src/test/ui/issue-17718-patterns.stderr b/src/test/ui/issue-17718-patterns.stderr new file mode 100644 index 0000000000000..13cab9a08b1de --- /dev/null +++ b/src/test/ui/issue-17718-patterns.stderr @@ -0,0 +1,21 @@ +error[E0530]: match bindings cannot shadow statics + --> $DIR/issue-17718-patterns.rs:17:9 + | +LL | static A1: usize = 1; + | --------------------- a static `A1` is defined here +... +LL | A1 => {} //~ ERROR: match bindings cannot shadow statics + | ^^ cannot be named the same as a static + +error[E0530]: match bindings cannot shadow statics + --> $DIR/issue-17718-patterns.rs:18:9 + | +LL | static mut A2: usize = 1; + | ------------------------- a static `A2` is defined here +... +LL | A2 => {} //~ ERROR: match bindings cannot shadow statics + | ^^ cannot be named the same as a static + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0530`. diff --git a/src/test/compile-fail/issue-17718-references.rs b/src/test/ui/issue-17718-references.rs similarity index 100% rename from src/test/compile-fail/issue-17718-references.rs rename to src/test/ui/issue-17718-references.rs diff --git a/src/test/ui/issue-17718-references.stderr b/src/test/ui/issue-17718-references.stderr new file mode 100644 index 0000000000000..6e89a83b30872 --- /dev/null +++ b/src/test/ui/issue-17718-references.stderr @@ -0,0 +1,21 @@ +error[E0013]: constants cannot refer to statics, use a constant instead + --> $DIR/issue-17718-references.rs:19:28 + | +LL | const T2: &'static usize = &S; //~ ERROR: constants cannot refer to statics + | ^^ + +error[E0013]: constants cannot refer to statics, use a constant instead + --> $DIR/issue-17718-references.rs:24:19 + | +LL | const T6: usize = S; //~ ERROR: constants cannot refer to statics + | ^ + +error[E0013]: constants cannot refer to statics, use a constant instead + --> $DIR/issue-17718-references.rs:29:33 + | +LL | const T10: Struct = Struct { a: S }; + | ^ + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0013`. diff --git a/src/test/compile-fail/issue-17718-static-move.rs b/src/test/ui/issue-17718-static-move.rs similarity index 100% rename from src/test/compile-fail/issue-17718-static-move.rs rename to src/test/ui/issue-17718-static-move.rs diff --git a/src/test/ui/issue-17718-static-move.stderr b/src/test/ui/issue-17718-static-move.stderr new file mode 100644 index 0000000000000..a6384cfce8fd4 --- /dev/null +++ b/src/test/ui/issue-17718-static-move.stderr @@ -0,0 +1,12 @@ +error[E0507]: cannot move out of static item + --> $DIR/issue-17718-static-move.rs:16:14 + | +LL | let _a = FOO; //~ ERROR: cannot move out of static item + | ^^^ + | | + | cannot move out of static item + | help: consider using a reference instead: `&FOO` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0507`. diff --git a/src/test/compile-fail/issue-17718-static-sync.rs b/src/test/ui/issue-17718-static-sync.rs similarity index 100% rename from src/test/compile-fail/issue-17718-static-sync.rs rename to src/test/ui/issue-17718-static-sync.rs diff --git a/src/test/ui/issue-17718-static-sync.stderr b/src/test/ui/issue-17718-static-sync.stderr new file mode 100644 index 0000000000000..d6816826a00b3 --- /dev/null +++ b/src/test/ui/issue-17718-static-sync.stderr @@ -0,0 +1,12 @@ +error[E0277]: `Foo` cannot be shared between threads safely + --> $DIR/issue-17718-static-sync.rs:19:1 + | +LL | static BAR: Foo = Foo; + | ^^^^^^^^^^^^^^^^^^^^^^ `Foo` cannot be shared between threads safely + | + = help: the trait `std::marker::Sync` is not implemented for `Foo` + = note: shared static variables must have a type that implements `Sync` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/ui/issue-17728.nll.stderr b/src/test/ui/issue-17728.nll.stderr new file mode 100644 index 0000000000000..b9931e45bd238 --- /dev/null +++ b/src/test/ui/issue-17728.nll.stderr @@ -0,0 +1,25 @@ +warning: not reporting region error due to nll + --> $DIR/issue-17728.rs:23:49 + | +LL | let maybe_room = room.direction_to_room.get(&direction); + | ^^^ + +error[E0308]: match arms have incompatible types + --> $DIR/issue-17728.rs:110:5 + | +LL | / match to_parse { //~ ERROR match arms have incompatible types +LL | | "w" | "west" => RoomDirection::West, +LL | | "e" | "east" => RoomDirection::East, +LL | | "n" | "north" => RoomDirection::North, +... | +LL | | _ => None + | | ---- match arm with an incompatible type +LL | | } + | |_____^ expected enum `RoomDirection`, found enum `std::option::Option` + | + = note: expected type `RoomDirection` + found type `std::option::Option<_>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-17728.rs b/src/test/ui/issue-17728.rs similarity index 100% rename from src/test/compile-fail/issue-17728.rs rename to src/test/ui/issue-17728.rs diff --git a/src/test/ui/issue-17728.stderr b/src/test/ui/issue-17728.stderr new file mode 100644 index 0000000000000..e46c48c4c39b5 --- /dev/null +++ b/src/test/ui/issue-17728.stderr @@ -0,0 +1,31 @@ +error[E0623]: lifetime mismatch + --> $DIR/issue-17728.rs:25:28 + | +LL | fn attemptTraverse(&self, room: &Room, directionStr: &str) -> Result<&Room, &str> { + | ----- ------------------- + | | + | this parameter and the return type are declared with different lifetimes... +... +LL | Some(entry) => Ok(entry), + | ^^^^^^^^^ ...but data from `room` is returned here + +error[E0308]: match arms have incompatible types + --> $DIR/issue-17728.rs:110:5 + | +LL | / match to_parse { //~ ERROR match arms have incompatible types +LL | | "w" | "west" => RoomDirection::West, +LL | | "e" | "east" => RoomDirection::East, +LL | | "n" | "north" => RoomDirection::North, +... | +LL | | _ => None + | | ---- match arm with an incompatible type +LL | | } + | |_____^ expected enum `RoomDirection`, found enum `std::option::Option` + | + = note: expected type `RoomDirection` + found type `std::option::Option<_>` + +error: aborting due to 2 previous errors + +Some errors occurred: E0308, E0623. +For more information about an error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-17740.rs b/src/test/ui/issue-17740.rs similarity index 100% rename from src/test/compile-fail/issue-17740.rs rename to src/test/ui/issue-17740.rs diff --git a/src/test/ui/issue-17740.stderr b/src/test/ui/issue-17740.stderr new file mode 100644 index 0000000000000..e4f5485953c68 --- /dev/null +++ b/src/test/ui/issue-17740.stderr @@ -0,0 +1,53 @@ +error[E0308]: mismatched method receiver + --> $DIR/issue-17740.rs:16:18 + | +LL | fn bar(self: &mut Foo) { + | ^^^^^^^^ lifetime mismatch + | + = note: expected type `Foo<'a>` + found type `Foo<'_>` +note: the anonymous lifetime #2 defined on the method body at 16:5... + --> $DIR/issue-17740.rs:16:5 + | +LL | / fn bar(self: &mut Foo) { +LL | | //~^ mismatched method receiver +LL | | //~| expected type `Foo<'a>` +LL | | //~| found type `Foo<'_>` +... | +LL | | //~| lifetime mismatch +LL | | } + | |_____^ +note: ...does not necessarily outlive the lifetime 'a as defined on the impl at 15:7 + --> $DIR/issue-17740.rs:15:7 + | +LL | impl <'a> Foo<'a>{ + | ^^ + +error[E0308]: mismatched method receiver + --> $DIR/issue-17740.rs:16:18 + | +LL | fn bar(self: &mut Foo) { + | ^^^^^^^^ lifetime mismatch + | + = note: expected type `Foo<'a>` + found type `Foo<'_>` +note: the lifetime 'a as defined on the impl at 15:7... + --> $DIR/issue-17740.rs:15:7 + | +LL | impl <'a> Foo<'a>{ + | ^^ +note: ...does not necessarily outlive the anonymous lifetime #2 defined on the method body at 16:5 + --> $DIR/issue-17740.rs:16:5 + | +LL | / fn bar(self: &mut Foo) { +LL | | //~^ mismatched method receiver +LL | | //~| expected type `Foo<'a>` +LL | | //~| found type `Foo<'_>` +... | +LL | | //~| lifetime mismatch +LL | | } + | |_____^ + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/issue-17758.nll.stderr b/src/test/ui/issue-17758.nll.stderr new file mode 100644 index 0000000000000..124fc6f0b3998 --- /dev/null +++ b/src/test/ui/issue-17758.nll.stderr @@ -0,0 +1,22 @@ +warning: not reporting region error due to nll + --> $DIR/issue-17758.rs:17:9 + | +LL | self.foo(); + | ^^^^ + +warning: not reporting region error due to nll + --> $DIR/issue-17758.rs:17:14 + | +LL | self.foo(); + | ^^^ + +error: unsatisfied lifetime constraints + --> $DIR/issue-17758.rs:17:9 + | +LL | fn bar(&self) { + | - let's call the lifetime of this reference `'1` +LL | self.foo(); + | ^^^^^^^^^^ argument requires that `'1` must outlive `'a` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-17758.rs b/src/test/ui/issue-17758.rs similarity index 100% rename from src/test/compile-fail/issue-17758.rs rename to src/test/ui/issue-17758.rs diff --git a/src/test/ui/issue-17758.stderr b/src/test/ui/issue-17758.stderr new file mode 100644 index 0000000000000..3d78b2e2d7f9d --- /dev/null +++ b/src/test/ui/issue-17758.stderr @@ -0,0 +1,31 @@ +error[E0495]: cannot infer an appropriate lifetime for autoref due to conflicting requirements + --> $DIR/issue-17758.rs:17:14 + | +LL | self.foo(); + | ^^^ + | +note: first, the lifetime cannot outlive the anonymous lifetime #1 defined on the method body at 16:5... + --> $DIR/issue-17758.rs:16:5 + | +LL | / fn bar(&self) { +LL | | self.foo(); +LL | | //~^ ERROR cannot infer +LL | | } + | |_____^ +note: ...so that reference does not outlive borrowed content + --> $DIR/issue-17758.rs:17:9 + | +LL | self.foo(); + | ^^^^ +note: but, the lifetime must be valid for the lifetime 'a as defined on the trait at 14:11... + --> $DIR/issue-17758.rs:14:11 + | +LL | trait Foo<'a> { + | ^^ + = note: ...so that the types are compatible: + expected &'a Self + found &Self + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0495`. diff --git a/src/test/compile-fail/issue-17800.rs b/src/test/ui/issue-17800.rs similarity index 100% rename from src/test/compile-fail/issue-17800.rs rename to src/test/ui/issue-17800.rs diff --git a/src/test/ui/issue-17800.stderr b/src/test/ui/issue-17800.stderr new file mode 100644 index 0000000000000..2cc562fbd7a1a --- /dev/null +++ b/src/test/ui/issue-17800.stderr @@ -0,0 +1,18 @@ +error[E0026]: variant `MyOption::MySome` does not have a field named `x` + --> $DIR/issue-17800.rs:18:28 + | +LL | MyOption::MySome { x: 42 } => (), + | ^^^^^ variant `MyOption::MySome` does not have this field + +error[E0027]: pattern does not mention field `0` + --> $DIR/issue-17800.rs:18:9 + | +LL | MyOption::MySome { x: 42 } => (), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `0` + | + = note: trying to match a tuple variant with a struct variant pattern + +error: aborting due to 2 previous errors + +Some errors occurred: E0026, E0027. +For more information about an error, try `rustc --explain E0026`. diff --git a/src/test/compile-fail/issue-17904-2.rs b/src/test/ui/issue-17904-2.rs similarity index 100% rename from src/test/compile-fail/issue-17904-2.rs rename to src/test/ui/issue-17904-2.rs diff --git a/src/test/ui/issue-17904-2.stderr b/src/test/ui/issue-17904-2.stderr new file mode 100644 index 0000000000000..00013d4d52bec --- /dev/null +++ b/src/test/ui/issue-17904-2.stderr @@ -0,0 +1,11 @@ +error[E0392]: parameter `T` is never used + --> $DIR/issue-17904-2.rs:14:12 + | +LL | struct Foo where T: Copy; //~ ERROR parameter `T` is never used + | ^ unused type parameter + | + = help: consider removing `T` or using a marker such as `std::marker::PhantomData` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0392`. diff --git a/src/test/compile-fail/issue-17905.rs b/src/test/ui/issue-17905.rs similarity index 100% rename from src/test/compile-fail/issue-17905.rs rename to src/test/ui/issue-17905.rs diff --git a/src/test/ui/issue-17905.stderr b/src/test/ui/issue-17905.stderr new file mode 100644 index 0000000000000..1a7aba1748015 --- /dev/null +++ b/src/test/ui/issue-17905.stderr @@ -0,0 +1,9 @@ +error[E0106]: missing lifetime specifier + --> $DIR/issue-17905.rs:15:5 + | +LL | &str, //~ ERROR missing lifetime specifier + | ^ expected lifetime parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0106`. diff --git a/src/test/compile-fail/issue-17933.rs b/src/test/ui/issue-17933.rs similarity index 100% rename from src/test/compile-fail/issue-17933.rs rename to src/test/ui/issue-17933.rs diff --git a/src/test/ui/issue-17933.stderr b/src/test/ui/issue-17933.stderr new file mode 100644 index 0000000000000..ec0f4785c8fa8 --- /dev/null +++ b/src/test/ui/issue-17933.stderr @@ -0,0 +1,9 @@ +error[E0532]: expected unit struct/variant or constant, found static `self::X` + --> $DIR/issue-17933.rs:15:9 + | +LL | self::X => { }, + | ^^^^^^^ not a unit struct/variant or constant + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0532`. diff --git a/src/test/ui/issue-17954.ast.nll.stderr b/src/test/ui/issue-17954.ast.nll.stderr new file mode 100644 index 0000000000000..f731e8eeae67f --- /dev/null +++ b/src/test/ui/issue-17954.ast.nll.stderr @@ -0,0 +1,14 @@ +error[E0597]: `FOO` does not live long enough + --> $DIR/issue-17954.rs:20:13 + | +LL | let a = &FOO; + | ^^^^ borrowed value does not live long enough +... +LL | } + | - borrowed value only lives until here + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/ui/issue-17954.ast.stderr b/src/test/ui/issue-17954.ast.stderr new file mode 100644 index 0000000000000..677d2cbfffc47 --- /dev/null +++ b/src/test/ui/issue-17954.ast.stderr @@ -0,0 +1,14 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-17954.rs:20:14 + | +LL | let a = &FOO; + | ^^^ temporary value does not live long enough +... +LL | } + | - temporary value only lives until here + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/ui/issue-17954.mir.stderr b/src/test/ui/issue-17954.mir.stderr new file mode 100644 index 0000000000000..f731e8eeae67f --- /dev/null +++ b/src/test/ui/issue-17954.mir.stderr @@ -0,0 +1,14 @@ +error[E0597]: `FOO` does not live long enough + --> $DIR/issue-17954.rs:20:13 + | +LL | let a = &FOO; + | ^^^^ borrowed value does not live long enough +... +LL | } + | - borrowed value only lives until here + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-17954.rs b/src/test/ui/issue-17954.rs similarity index 100% rename from src/test/compile-fail/issue-17954.rs rename to src/test/ui/issue-17954.rs diff --git a/src/test/compile-fail/issue-17959.rs b/src/test/ui/issue-17959.rs similarity index 100% rename from src/test/compile-fail/issue-17959.rs rename to src/test/ui/issue-17959.rs diff --git a/src/test/ui/issue-17959.stderr b/src/test/ui/issue-17959.stderr new file mode 100644 index 0000000000000..626b670ae3555 --- /dev/null +++ b/src/test/ui/issue-17959.stderr @@ -0,0 +1,23 @@ +error[E0367]: The requirement `T: std::marker::Sized` is added only by the Drop impl. + --> $DIR/issue-17959.rs:21:1 + | +LL | / impl Drop for G { +LL | | //~^ ERROR: The requirement `T: std::marker::Sized` is added only by the Drop impl. [E0367] +LL | | fn drop(&mut self) { +LL | | if !self._ptr.is_null() { +LL | | } +LL | | } +LL | | } + | |_^ + | +note: The same requirement must be part of the struct/enum definition + --> $DIR/issue-17959.rs:17:1 + | +LL | / struct G { +LL | | _ptr: *const T +LL | | } + | |_^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0367`. diff --git a/src/test/compile-fail/issue-17994.rs b/src/test/ui/issue-17994.rs similarity index 100% rename from src/test/compile-fail/issue-17994.rs rename to src/test/ui/issue-17994.rs diff --git a/src/test/ui/issue-17994.stderr b/src/test/ui/issue-17994.stderr new file mode 100644 index 0000000000000..77bcc4695389f --- /dev/null +++ b/src/test/ui/issue-17994.stderr @@ -0,0 +1,9 @@ +error[E0091]: type parameter `T` is unused + --> $DIR/issue-17994.rs:12:10 + | +LL | type Huh where T: Tr = isize; //~ ERROR type parameter `T` is unused + | ^ unused type parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0091`. diff --git a/src/test/compile-fail/issue-17999.rs b/src/test/ui/issue-17999.rs similarity index 100% rename from src/test/compile-fail/issue-17999.rs rename to src/test/ui/issue-17999.rs diff --git a/src/test/ui/issue-17999.stderr b/src/test/ui/issue-17999.stderr new file mode 100644 index 0000000000000..1a24015da541a --- /dev/null +++ b/src/test/ui/issue-17999.stderr @@ -0,0 +1,20 @@ +error: unused variable: `x` + --> $DIR/issue-17999.rs:15:13 + | +LL | let x = (); //~ ERROR: unused variable: `x` + | ^ help: consider using `_x` instead + | +note: lint level defined here + --> $DIR/issue-17999.rs:11:9 + | +LL | #![deny(unused_variables)] + | ^^^^^^^^^^^^^^^^ + +error: unused variable: `a` + --> $DIR/issue-17999.rs:17:13 + | +LL | a => {} //~ ERROR: unused variable: `a` + | ^ help: consider using `_a` instead + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-18058.rs b/src/test/ui/issue-18058.rs similarity index 100% rename from src/test/compile-fail/issue-18058.rs rename to src/test/ui/issue-18058.rs diff --git a/src/test/ui/issue-18058.stderr b/src/test/ui/issue-18058.stderr new file mode 100644 index 0000000000000..ded375a9332ef --- /dev/null +++ b/src/test/ui/issue-18058.stderr @@ -0,0 +1,9 @@ +error[E0412]: cannot find type `Undefined` in this scope + --> $DIR/issue-18058.rs:11:6 + | +LL | impl Undefined {} + | ^^^^^^^^^ not found in this scope + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0412`. diff --git a/src/test/compile-fail/issue-18107.rs b/src/test/ui/issue-18107.rs similarity index 100% rename from src/test/compile-fail/issue-18107.rs rename to src/test/ui/issue-18107.rs diff --git a/src/test/ui/issue-18107.stderr b/src/test/ui/issue-18107.stderr new file mode 100644 index 0000000000000..4a273ab6735eb --- /dev/null +++ b/src/test/ui/issue-18107.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `(dyn AbstractRenderer + 'static)` cannot be known at compilation time + --> $DIR/issue-18107.rs:14:5 + | +LL | AbstractRenderer + | ^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `(dyn AbstractRenderer + 'static)` + = note: to learn more, visit + = note: the return type of a function must have a statically known size + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-18118-2.rs b/src/test/ui/issue-18118-2.rs similarity index 100% rename from src/test/compile-fail/issue-18118-2.rs rename to src/test/ui/issue-18118-2.rs diff --git a/src/test/ui/issue-18118-2.stderr b/src/test/ui/issue-18118-2.stderr new file mode 100644 index 0000000000000..c0b306140c57a --- /dev/null +++ b/src/test/ui/issue-18118-2.stderr @@ -0,0 +1,9 @@ +error[E0013]: constants cannot refer to statics, use a constant instead + --> $DIR/issue-18118-2.rs:14:9 + | +LL | &p + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0013`. diff --git a/src/test/ui/issue-18118.nll.stderr b/src/test/ui/issue-18118.nll.stderr new file mode 100644 index 0000000000000..7acab8426f62b --- /dev/null +++ b/src/test/ui/issue-18118.nll.stderr @@ -0,0 +1,67 @@ +error[E0658]: let bindings in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:15:17 + | +LL | let p = 3; + | ^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: statements in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:15:17 + | +LL | let p = 3; + | ^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: let bindings in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:18:9 + | +LL | &p //~ ERROR `p` does not live long enough + | ^^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: let bindings in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:12:5 + | +LL | / const z: &'static isize = { +LL | | //~^ ERROR let bindings in constants are unstable +LL | | //~| ERROR statements in constants are unstable +LL | | let p = 3; +... | +LL | | //~^ ERROR let bindings in constants are unstable +LL | | }; + | |______^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: statements in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:12:5 + | +LL | / const z: &'static isize = { +LL | | //~^ ERROR let bindings in constants are unstable +LL | | //~| ERROR statements in constants are unstable +LL | | let p = 3; +... | +LL | | //~^ ERROR let bindings in constants are unstable +LL | | }; + | |______^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0597]: `p` does not live long enough + --> $DIR/issue-18118.rs:18:9 + | +LL | &p //~ ERROR `p` does not live long enough + | ^^ borrowed value does not live long enough +LL | //~^ ERROR let bindings in constants are unstable +LL | }; + | - borrowed value only lives until here + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to 6 previous errors + +Some errors occurred: E0597, E0658. +For more information about an error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-18118.rs b/src/test/ui/issue-18118.rs similarity index 100% rename from src/test/compile-fail/issue-18118.rs rename to src/test/ui/issue-18118.rs diff --git a/src/test/ui/issue-18118.stderr b/src/test/ui/issue-18118.stderr new file mode 100644 index 0000000000000..2d83b86e5f40b --- /dev/null +++ b/src/test/ui/issue-18118.stderr @@ -0,0 +1,67 @@ +error[E0658]: let bindings in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:15:17 + | +LL | let p = 3; + | ^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: statements in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:15:17 + | +LL | let p = 3; + | ^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: let bindings in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:18:9 + | +LL | &p //~ ERROR `p` does not live long enough + | ^^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: let bindings in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:12:5 + | +LL | / const z: &'static isize = { +LL | | //~^ ERROR let bindings in constants are unstable +LL | | //~| ERROR statements in constants are unstable +LL | | let p = 3; +... | +LL | | //~^ ERROR let bindings in constants are unstable +LL | | }; + | |______^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: statements in constants are unstable (see issue #48821) + --> $DIR/issue-18118.rs:12:5 + | +LL | / const z: &'static isize = { +LL | | //~^ ERROR let bindings in constants are unstable +LL | | //~| ERROR statements in constants are unstable +LL | | let p = 3; +... | +LL | | //~^ ERROR let bindings in constants are unstable +LL | | }; + | |______^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0597]: `p` does not live long enough + --> $DIR/issue-18118.rs:18:10 + | +LL | &p //~ ERROR `p` does not live long enough + | ^ borrowed value does not live long enough +LL | //~^ ERROR let bindings in constants are unstable +LL | }; + | - borrowed value only lives until here + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to 6 previous errors + +Some errors occurred: E0597, E0658. +For more information about an error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-18119.rs b/src/test/ui/issue-18119.rs similarity index 100% rename from src/test/compile-fail/issue-18119.rs rename to src/test/ui/issue-18119.rs diff --git a/src/test/ui/issue-18119.stderr b/src/test/ui/issue-18119.stderr new file mode 100644 index 0000000000000..e0e2d089b7b1f --- /dev/null +++ b/src/test/ui/issue-18119.stderr @@ -0,0 +1,21 @@ +error[E0573]: expected type, found constant `X` + --> $DIR/issue-18119.rs:15:6 + | +LL | impl X {} + | ^ not a type + +error[E0573]: expected type, found static `Y` + --> $DIR/issue-18119.rs:17:6 + | +LL | impl Y {} + | ^ not a type + +error[E0573]: expected type, found function `foo` + --> $DIR/issue-18119.rs:19:6 + | +LL | impl foo {} + | ^^^ not a type + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0573`. diff --git a/src/test/compile-fail/issue-18159.rs b/src/test/ui/issue-18159.rs similarity index 100% rename from src/test/compile-fail/issue-18159.rs rename to src/test/ui/issue-18159.rs diff --git a/src/test/ui/issue-18159.stderr b/src/test/ui/issue-18159.stderr new file mode 100644 index 0000000000000..894660f1ebfbd --- /dev/null +++ b/src/test/ui/issue-18159.stderr @@ -0,0 +1,12 @@ +error[E0282]: type annotations needed + --> $DIR/issue-18159.rs:12:9 + | +LL | let x; //~ ERROR type annotations needed + | ^ + | | + | cannot infer type for `_` + | consider giving `x` a type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-18294.rs b/src/test/ui/issue-18294.rs similarity index 100% rename from src/test/compile-fail/issue-18294.rs rename to src/test/ui/issue-18294.rs diff --git a/src/test/ui/issue-18294.stderr b/src/test/ui/issue-18294.stderr new file mode 100644 index 0000000000000..151deefb2b7c3 --- /dev/null +++ b/src/test/ui/issue-18294.stderr @@ -0,0 +1,9 @@ +error[E0018]: raw pointers cannot be cast to integers in constants + --> $DIR/issue-18294.rs:13:22 + | +LL | const Y: usize = &X as *const u32 as usize; //~ ERROR E0018 + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0018`. diff --git a/src/test/compile-fail/issue-18389.rs b/src/test/ui/issue-18389.rs similarity index 100% rename from src/test/compile-fail/issue-18389.rs rename to src/test/ui/issue-18389.rs diff --git a/src/test/ui/issue-18389.stderr b/src/test/ui/issue-18389.stderr new file mode 100644 index 0000000000000..6f067301d042e --- /dev/null +++ b/src/test/ui/issue-18389.stderr @@ -0,0 +1,15 @@ +error[E0445]: private trait `Private<::P, ::R>` in public interface + --> $DIR/issue-18389.rs:17:1 + | +LL | / pub trait Public: Private< +LL | | //~^ ERROR private trait `Private<::P, ::R>` in public interface +LL | | ::P, +LL | | ::R +... | +LL | | fn call_inner(&self); +LL | | } + | |_^ can't leak private trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0445`. diff --git a/src/test/compile-fail/issue-18400.rs b/src/test/ui/issue-18400.rs similarity index 100% rename from src/test/compile-fail/issue-18400.rs rename to src/test/ui/issue-18400.rs diff --git a/src/test/ui/issue-18400.stderr b/src/test/ui/issue-18400.stderr new file mode 100644 index 0000000000000..2426d429ca153 --- /dev/null +++ b/src/test/ui/issue-18400.stderr @@ -0,0 +1,75 @@ +error[E0275]: overflow evaluating the requirement `_: std::marker::Sized` + --> $DIR/issue-18400.rs:34:7 + | +LL | 0.contains(bits); + | ^^^^^^^^ + | + = help: consider adding a `#![recursion_limit="128"]` attribute to your crate + = note: required because of the requirements on the impl of `Set<&[_]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[_]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[_]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[_]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[_]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[_]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[_]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[_]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[_]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + = note: required because of the requirements on the impl of `Set<&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[&[_]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]>` for `{integer}` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0275`. diff --git a/src/test/compile-fail/issue-18423.rs b/src/test/ui/issue-18423.rs similarity index 100% rename from src/test/compile-fail/issue-18423.rs rename to src/test/ui/issue-18423.rs diff --git a/src/test/ui/issue-18423.stderr b/src/test/ui/issue-18423.stderr new file mode 100644 index 0000000000000..25406198193a4 --- /dev/null +++ b/src/test/ui/issue-18423.stderr @@ -0,0 +1,9 @@ +error[E0107]: wrong number of lifetime parameters: expected 0, found 1 + --> $DIR/issue-18423.rs:14:8 + | +LL | x: Box<'a, isize> //~ ERROR wrong number of lifetime parameters + | ^^^^^^^^^^^^^^ unexpected lifetime parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0107`. diff --git a/src/test/compile-fail/issue-18446.rs b/src/test/ui/issue-18446.rs similarity index 100% rename from src/test/compile-fail/issue-18446.rs rename to src/test/ui/issue-18446.rs diff --git a/src/test/ui/issue-18446.stderr b/src/test/ui/issue-18446.stderr new file mode 100644 index 0000000000000..d1914fc14f832 --- /dev/null +++ b/src/test/ui/issue-18446.stderr @@ -0,0 +1,21 @@ +error[E0034]: multiple applicable items in scope + --> $DIR/issue-18446.rs:28:7 + | +LL | x.foo(); //~ ERROR multiple applicable items in scope [E0034] + | ^^^ multiple `foo` found + | +note: candidate #1 is defined in an impl for the type `dyn T` + --> $DIR/issue-18446.rs:19:5 + | +LL | fn foo(&self) {} + | ^^^^^^^^^^^^^ +note: candidate #2 is defined in the trait `T` + --> $DIR/issue-18446.rs:15:5 + | +LL | fn foo(&self); + | ^^^^^^^^^^^^^^ + = help: to disambiguate the method call, write `T::foo(&x)` instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0034`. diff --git a/src/test/compile-fail/issue-18532.rs b/src/test/ui/issue-18532.rs similarity index 100% rename from src/test/compile-fail/issue-18532.rs rename to src/test/ui/issue-18532.rs diff --git a/src/test/ui/issue-18532.stderr b/src/test/ui/issue-18532.stderr new file mode 100644 index 0000000000000..8f10cb0f7b03d --- /dev/null +++ b/src/test/ui/issue-18532.stderr @@ -0,0 +1,9 @@ +error[E0618]: expected function, found `!` + --> $DIR/issue-18532.rs:16:5 + | +LL | (return)((),()); //~ ERROR expected function, found `!` + | ^^^^^^^^^^^^^^^ not a function + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0618`. diff --git a/src/test/ui/issue-18566.nll.stderr b/src/test/ui/issue-18566.nll.stderr new file mode 100644 index 0000000000000..b5ed33d07c5a5 --- /dev/null +++ b/src/test/ui/issue-18566.nll.stderr @@ -0,0 +1,13 @@ +error[E0499]: cannot borrow `*s` as mutable more than once at a time + --> $DIR/issue-18566.rs:33:19 + | +LL | MyPtr(s).poke(s); + | --------------^- + | | | | + | | | second mutable borrow occurs here + | | first mutable borrow occurs here + | borrow later used here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0499`. diff --git a/src/test/compile-fail/issue-18566.rs b/src/test/ui/issue-18566.rs similarity index 100% rename from src/test/compile-fail/issue-18566.rs rename to src/test/ui/issue-18566.rs diff --git a/src/test/ui/issue-18566.stderr b/src/test/ui/issue-18566.stderr new file mode 100644 index 0000000000000..e07fde114f253 --- /dev/null +++ b/src/test/ui/issue-18566.stderr @@ -0,0 +1,12 @@ +error[E0499]: cannot borrow `*s` as mutable more than once at a time + --> $DIR/issue-18566.rs:33:19 + | +LL | MyPtr(s).poke(s); + | - ^- first borrow ends here + | | | + | | second mutable borrow occurs here + | first mutable borrow occurs here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0499`. diff --git a/src/test/compile-fail/issue-18611.rs b/src/test/ui/issue-18611.rs similarity index 100% rename from src/test/compile-fail/issue-18611.rs rename to src/test/ui/issue-18611.rs diff --git a/src/test/ui/issue-18611.stderr b/src/test/ui/issue-18611.stderr new file mode 100644 index 0000000000000..d890a322f0c98 --- /dev/null +++ b/src/test/ui/issue-18611.stderr @@ -0,0 +1,11 @@ +error[E0277]: the trait bound `isize: HasState` is not satisfied + --> $DIR/issue-18611.rs:11:1 + | +LL | / fn add_state(op: ::State) { +LL | | //~^ ERROR `isize: HasState` is not satisfied +LL | | } + | |_^ the trait `HasState` is not implemented for `isize` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-1871.rs b/src/test/ui/issue-1871.rs similarity index 100% rename from src/test/compile-fail/issue-1871.rs rename to src/test/ui/issue-1871.rs diff --git a/src/test/ui/issue-1871.stderr b/src/test/ui/issue-1871.stderr new file mode 100644 index 0000000000000..0546848df9b66 --- /dev/null +++ b/src/test/ui/issue-1871.stderr @@ -0,0 +1,9 @@ +error[E0599]: no method named `honk` found for type `{integer}` in the current scope + --> $DIR/issue-1871.rs:17:9 + | +LL | f.honk() //~ ERROR no method named `honk` found + | ^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/ui/issue-18783.nll.stderr b/src/test/ui/issue-18783.nll.stderr new file mode 100644 index 0000000000000..6bb7b4229d747 --- /dev/null +++ b/src/test/ui/issue-18783.nll.stderr @@ -0,0 +1,33 @@ +error[E0499]: cannot borrow `y` as mutable more than once at a time + --> $DIR/issue-18783.rs:17:21 + | +LL | c.push(Box::new(|| y = 0)); + | -- - previous borrow occurs due to use of `y` in closure + | | + | first mutable borrow occurs here +LL | c.push(Box::new(|| y = 0)); + | ^^ - borrow occurs due to use of `y` in closure + | | + | second mutable borrow occurs here +LL | //~^ ERROR cannot borrow `y` as mutable more than once at a time +LL | } + | - borrow later used here, when `c` is dropped + +error[E0499]: cannot borrow `y` as mutable more than once at a time + --> $DIR/issue-18783.rs:26:29 + | +LL | Push::push(&c, Box::new(|| y = 0)); + | -- - previous borrow occurs due to use of `y` in closure + | | + | first mutable borrow occurs here +LL | Push::push(&c, Box::new(|| y = 0)); + | ^^ - borrow occurs due to use of `y` in closure + | | + | second mutable borrow occurs here +LL | //~^ ERROR cannot borrow `y` as mutable more than once at a time +LL | } + | - borrow later used here, when `c` is dropped + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0499`. diff --git a/src/test/compile-fail/issue-18783.rs b/src/test/ui/issue-18783.rs similarity index 100% rename from src/test/compile-fail/issue-18783.rs rename to src/test/ui/issue-18783.rs diff --git a/src/test/ui/issue-18783.stderr b/src/test/ui/issue-18783.stderr new file mode 100644 index 0000000000000..64d2809a36ae1 --- /dev/null +++ b/src/test/ui/issue-18783.stderr @@ -0,0 +1,33 @@ +error[E0499]: cannot borrow `y` as mutable more than once at a time + --> $DIR/issue-18783.rs:17:21 + | +LL | c.push(Box::new(|| y = 0)); + | -- - previous borrow occurs due to use of `y` in closure + | | + | first mutable borrow occurs here +LL | c.push(Box::new(|| y = 0)); + | ^^ - borrow occurs due to use of `y` in closure + | | + | second mutable borrow occurs here +LL | //~^ ERROR cannot borrow `y` as mutable more than once at a time +LL | } + | - first borrow ends here + +error[E0499]: cannot borrow `y` as mutable more than once at a time + --> $DIR/issue-18783.rs:26:29 + | +LL | Push::push(&c, Box::new(|| y = 0)); + | -- - previous borrow occurs due to use of `y` in closure + | | + | first mutable borrow occurs here +LL | Push::push(&c, Box::new(|| y = 0)); + | ^^ - borrow occurs due to use of `y` in closure + | | + | second mutable borrow occurs here +LL | //~^ ERROR cannot borrow `y` as mutable more than once at a time +LL | } + | - first borrow ends here + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0499`. diff --git a/src/test/compile-fail/issue-18919.rs b/src/test/ui/issue-18919.rs similarity index 100% rename from src/test/compile-fail/issue-18919.rs rename to src/test/ui/issue-18919.rs diff --git a/src/test/ui/issue-18919.stderr b/src/test/ui/issue-18919.stderr new file mode 100644 index 0000000000000..012a1eb4d2136 --- /dev/null +++ b/src/test/ui/issue-18919.stderr @@ -0,0 +1,15 @@ +error[E0277]: the size for values of type `dyn for<'r> std::ops::Fn(&'r isize) -> isize` cannot be known at compilation time + --> $DIR/issue-18919.rs:13:1 + | +LL | / fn ho_func(f: Option) { +LL | | //~^ ERROR the size for values of type +LL | | } + | |_^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `dyn for<'r> std::ops::Fn(&'r isize) -> isize` + = note: to learn more, visit + = note: required by `std::option::Option` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-18937.rs b/src/test/ui/issue-18937.rs similarity index 100% rename from src/test/compile-fail/issue-18937.rs rename to src/test/ui/issue-18937.rs diff --git a/src/test/ui/issue-18937.stderr b/src/test/ui/issue-18937.stderr new file mode 100644 index 0000000000000..7b4c35e0dbe35 --- /dev/null +++ b/src/test/ui/issue-18937.stderr @@ -0,0 +1,18 @@ +error[E0276]: impl has stricter requirements than trait + --> $DIR/issue-18937.rs:29:5 + | +LL | / fn foo(&mut self, f: F) +LL | | where F: fmt::Debug + 'a, +LL | | Self: Sized; + | |__________________________- definition of `foo` from trait +... +LL | / fn foo(&mut self, f: F) //~ ERROR impl has stricter +LL | | where F: fmt::Debug + 'static, +LL | | { +LL | | self.list.push(Box::new(f)); +LL | | } + | |_____^ impl has extra requirement `F: 'static` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0276`. diff --git a/src/test/compile-fail/issue-18959.rs b/src/test/ui/issue-18959.rs similarity index 100% rename from src/test/compile-fail/issue-18959.rs rename to src/test/ui/issue-18959.rs diff --git a/src/test/ui/issue-18959.stderr b/src/test/ui/issue-18959.stderr new file mode 100644 index 0000000000000..42a1c2d4d0314 --- /dev/null +++ b/src/test/ui/issue-18959.stderr @@ -0,0 +1,11 @@ +error[E0038]: the trait `Bar` cannot be made into an object + --> $DIR/issue-18959.rs:21:1 + | +LL | fn foo(b: &Bar) { + | ^^^^^^^^^^^^^^^ the trait `Bar` cannot be made into an object + | + = note: method `foo` has generic type parameters + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0038`. diff --git a/src/test/compile-fail/issue-1900.rs b/src/test/ui/issue-1900.rs similarity index 86% rename from src/test/compile-fail/issue-1900.rs rename to src/test/ui/issue-1900.rs index ccdd9db25c40a..e41bb0030aeac 100644 --- a/src/test/compile-fail/issue-1900.rs +++ b/src/test/ui/issue-1900.rs @@ -8,5 +8,5 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern: `main` function is not allowed to have generic parameters fn main() { } +//~^ ERROR `main` function is not allowed to have generic parameters diff --git a/src/test/ui/issue-1900.stderr b/src/test/ui/issue-1900.stderr new file mode 100644 index 0000000000000..512a923fadd22 --- /dev/null +++ b/src/test/ui/issue-1900.stderr @@ -0,0 +1,9 @@ +error[E0131]: `main` function is not allowed to have generic parameters + --> $DIR/issue-1900.rs:11:8 + | +LL | fn main() { } + | ^^^ `main` cannot have generic parameters + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0131`. diff --git a/src/test/compile-fail/issue-19086.rs b/src/test/ui/issue-19086.rs similarity index 100% rename from src/test/compile-fail/issue-19086.rs rename to src/test/ui/issue-19086.rs diff --git a/src/test/ui/issue-19086.stderr b/src/test/ui/issue-19086.stderr new file mode 100644 index 0000000000000..b71d40065c3f7 --- /dev/null +++ b/src/test/ui/issue-19086.stderr @@ -0,0 +1,9 @@ +error[E0532]: expected tuple struct/variant, found struct variant `FooB` + --> $DIR/issue-19086.rs:20:9 + | +LL | FooB(a, b) => println!("{} {}", a, b), + | ^^^^ did you mean `FooB { /* fields */ }`? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0532`. diff --git a/src/test/compile-fail/issue-19244-1.rs b/src/test/ui/issue-19244-1.rs similarity index 100% rename from src/test/compile-fail/issue-19244-1.rs rename to src/test/ui/issue-19244-1.rs diff --git a/src/test/ui/issue-19244-1.stderr b/src/test/ui/issue-19244-1.stderr new file mode 100644 index 0000000000000..28e66b2d974da --- /dev/null +++ b/src/test/ui/issue-19244-1.stderr @@ -0,0 +1,9 @@ +error[E0609]: no field `1` on type `(usize,)` + --> $DIR/issue-19244-1.rs:14:24 + | +LL | let a: [isize; TUP.1]; + | ^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0609`. diff --git a/src/test/compile-fail/issue-19244-2.rs b/src/test/ui/issue-19244-2.rs similarity index 100% rename from src/test/compile-fail/issue-19244-2.rs rename to src/test/ui/issue-19244-2.rs diff --git a/src/test/ui/issue-19244-2.stderr b/src/test/ui/issue-19244-2.stderr new file mode 100644 index 0000000000000..3969c77f24d71 --- /dev/null +++ b/src/test/ui/issue-19244-2.stderr @@ -0,0 +1,11 @@ +error[E0609]: no field `nonexistent_field` on type `MyStruct` + --> $DIR/issue-19244-2.rs:15:27 + | +LL | let a: [isize; STRUCT.nonexistent_field]; + | ^^^^^^^^^^^^^^^^^ unknown field + | + = note: available fields are: `field` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0609`. diff --git a/src/test/compile-fail/issue-19380.rs b/src/test/ui/issue-19380.rs similarity index 100% rename from src/test/compile-fail/issue-19380.rs rename to src/test/ui/issue-19380.rs diff --git a/src/test/ui/issue-19380.stderr b/src/test/ui/issue-19380.stderr new file mode 100644 index 0000000000000..a251d3b29904d --- /dev/null +++ b/src/test/ui/issue-19380.stderr @@ -0,0 +1,11 @@ +error[E0038]: the trait `Qiz` cannot be made into an object + --> $DIR/issue-19380.rs:21:3 + | +LL | foos: &'static [&'static (Qiz + 'static)] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Qiz` cannot be made into an object + | + = note: method `qiz` has no receiver + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0038`. diff --git a/src/test/compile-fail/issue-19482.rs b/src/test/ui/issue-19482.rs similarity index 100% rename from src/test/compile-fail/issue-19482.rs rename to src/test/ui/issue-19482.rs diff --git a/src/test/ui/issue-19482.stderr b/src/test/ui/issue-19482.stderr new file mode 100644 index 0000000000000..5e2d427ab7258 --- /dev/null +++ b/src/test/ui/issue-19482.stderr @@ -0,0 +1,9 @@ +error[E0191]: the value of the associated type `A` (from the trait `Foo`) must be specified + --> $DIR/issue-19482.rs:20:12 + | +LL | fn bar(x: &Foo) {} + | ^^^ missing associated type `A` value + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0191`. diff --git a/src/test/compile-fail/issue-19521.rs b/src/test/ui/issue-19521.rs similarity index 100% rename from src/test/compile-fail/issue-19521.rs rename to src/test/ui/issue-19521.rs diff --git a/src/test/ui/issue-19521.stderr b/src/test/ui/issue-19521.stderr new file mode 100644 index 0000000000000..8f81bcbd4c417 --- /dev/null +++ b/src/test/ui/issue-19521.stderr @@ -0,0 +1,9 @@ +error[E0599]: no method named `homura` found for type `&'static str` in the current scope + --> $DIR/issue-19521.rs:12:8 + | +LL | "".homura()(); //~ ERROR no method named `homura` found + | ^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-19538.rs b/src/test/ui/issue-19538.rs similarity index 100% rename from src/test/compile-fail/issue-19538.rs rename to src/test/ui/issue-19538.rs diff --git a/src/test/ui/issue-19538.stderr b/src/test/ui/issue-19538.stderr new file mode 100644 index 0000000000000..3cd73ad9d450e --- /dev/null +++ b/src/test/ui/issue-19538.stderr @@ -0,0 +1,20 @@ +error[E0038]: the trait `Bar` cannot be made into an object + --> $DIR/issue-19538.rs:27:15 + | +LL | let test: &mut Bar = &mut thing; + | ^^^^^^^^ the trait `Bar` cannot be made into an object + | + = note: method `foo` has generic type parameters + +error[E0038]: the trait `Bar` cannot be made into an object + --> $DIR/issue-19538.rs:27:26 + | +LL | let test: &mut Bar = &mut thing; + | ^^^^^^^^^^ the trait `Bar` cannot be made into an object + | + = note: method `foo` has generic type parameters + = note: required because of the requirements on the impl of `std::ops::CoerceUnsized<&mut dyn Bar>` for `&mut Thing` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0038`. diff --git a/src/test/compile-fail/issue-19601.rs b/src/test/ui/issue-19601.rs similarity index 100% rename from src/test/compile-fail/issue-19601.rs rename to src/test/ui/issue-19601.rs diff --git a/src/test/ui/issue-19601.stderr b/src/test/ui/issue-19601.stderr new file mode 100644 index 0000000000000..594d76605fe90 --- /dev/null +++ b/src/test/ui/issue-19601.stderr @@ -0,0 +1,9 @@ +error: compilation successful + --> $DIR/issue-19601.rs:18:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-19660.rs b/src/test/ui/issue-19660.rs similarity index 100% rename from src/test/compile-fail/issue-19660.rs rename to src/test/ui/issue-19660.rs diff --git a/src/test/ui/issue-19660.stderr b/src/test/ui/issue-19660.stderr new file mode 100644 index 0000000000000..f5d903f38eb99 --- /dev/null +++ b/src/test/ui/issue-19660.stderr @@ -0,0 +1,4 @@ +error: requires `copy` lang_item + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-19692.rs b/src/test/ui/issue-19692.rs similarity index 100% rename from src/test/compile-fail/issue-19692.rs rename to src/test/ui/issue-19692.rs diff --git a/src/test/ui/issue-19692.stderr b/src/test/ui/issue-19692.stderr new file mode 100644 index 0000000000000..33361ff84880a --- /dev/null +++ b/src/test/ui/issue-19692.stderr @@ -0,0 +1,12 @@ +error[E0599]: no method named `kaname` found for type `Homura` in the current scope + --> $DIR/issue-19692.rs:14:40 + | +LL | struct Homura; + | -------------- method `kaname` not found for this +... +LL | let Some(ref madoka) = Some(homura.kaname()); //~ ERROR no method named `kaname` found + | ^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-19734.rs b/src/test/ui/issue-19734.rs similarity index 100% rename from src/test/compile-fail/issue-19734.rs rename to src/test/ui/issue-19734.rs diff --git a/src/test/ui/issue-19734.stderr b/src/test/ui/issue-19734.stderr new file mode 100644 index 0000000000000..1d07f4dedc3fa --- /dev/null +++ b/src/test/ui/issue-19734.stderr @@ -0,0 +1,8 @@ +error: cannot find macro `undef!` in this scope + --> $DIR/issue-19734.rs:16:5 + | +LL | undef!(); + | ^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-19883.rs b/src/test/ui/issue-19883.rs similarity index 100% rename from src/test/compile-fail/issue-19883.rs rename to src/test/ui/issue-19883.rs diff --git a/src/test/ui/issue-19883.stderr b/src/test/ui/issue-19883.stderr new file mode 100644 index 0000000000000..b4262b4cdb3a1 --- /dev/null +++ b/src/test/ui/issue-19883.stderr @@ -0,0 +1,9 @@ +error[E0576]: cannot find associated type `Dst` in trait `From` + --> $DIR/issue-19883.rs:19:30 + | +LL | >::Dst + | ^^^ not found in `From` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0576`. diff --git a/src/test/compile-fail/issue-19982.rs b/src/test/ui/issue-19982.rs similarity index 100% rename from src/test/compile-fail/issue-19982.rs rename to src/test/ui/issue-19982.rs diff --git a/src/test/ui/issue-19982.stderr b/src/test/ui/issue-19982.stderr new file mode 100644 index 0000000000000..9f13ba640a950 --- /dev/null +++ b/src/test/ui/issue-19982.stderr @@ -0,0 +1,9 @@ +error[E0106]: missing lifetime specifier + --> $DIR/issue-19982.rs:15:10 + | +LL | impl Fn<(&(),)> for Foo { } //~ ERROR missing lifetime specifier + | ^ expected lifetime parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0106`. diff --git a/src/test/compile-fail/issue-19991.rs b/src/test/ui/issue-19991.rs similarity index 100% rename from src/test/compile-fail/issue-19991.rs rename to src/test/ui/issue-19991.rs diff --git a/src/test/ui/issue-19991.stderr b/src/test/ui/issue-19991.stderr new file mode 100644 index 0000000000000..45b2ef8b2806e --- /dev/null +++ b/src/test/ui/issue-19991.stderr @@ -0,0 +1,17 @@ +error[E0317]: if may be missing an else clause + --> $DIR/issue-19991.rs:15:5 + | +LL | / if let Some(homura) = Some("madoka") { //~ ERROR missing an else clause +LL | | //~| expected type `()` +LL | | //~| found type `{integer}` +LL | | //~| expected (), found integral variable +LL | | 765 +LL | | }; + | |_____^ expected (), found integral variable + | + = note: expected type `()` + found type `{integer}` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0317`. diff --git a/src/test/compile-fail/issue-20005.rs b/src/test/ui/issue-20005.rs similarity index 100% rename from src/test/compile-fail/issue-20005.rs rename to src/test/ui/issue-20005.rs diff --git a/src/test/ui/issue-20005.stderr b/src/test/ui/issue-20005.stderr new file mode 100644 index 0000000000000..2fdfa4ba6f862 --- /dev/null +++ b/src/test/ui/issue-20005.stderr @@ -0,0 +1,22 @@ +error[E0277]: the size for values of type `Self` cannot be known at compilation time + --> $DIR/issue-20005.rs:18:5 + | +LL | / fn to( //~ ERROR the size for values of type +LL | | self +LL | | ) -> >::Result where Dst: From { +LL | | From::from(self) +LL | | } + | |_____^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `Self` + = note: to learn more, visit + = help: consider adding a `where Self: std::marker::Sized` bound +note: required by `From` + --> $DIR/issue-20005.rs:11:1 + | +LL | trait From { + | ^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-20162.rs b/src/test/ui/issue-20162.rs similarity index 100% rename from src/test/compile-fail/issue-20162.rs rename to src/test/ui/issue-20162.rs diff --git a/src/test/ui/issue-20162.stderr b/src/test/ui/issue-20162.stderr new file mode 100644 index 0000000000000..0fb7009d574fd --- /dev/null +++ b/src/test/ui/issue-20162.stderr @@ -0,0 +1,9 @@ +error[E0277]: the trait bound `X: std::cmp::Ord` is not satisfied + --> $DIR/issue-20162.rs:15:7 + | +LL | b.sort(); + | ^^^^ the trait `std::cmp::Ord` is not implemented for `X` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-20225.rs b/src/test/ui/issue-20225.rs similarity index 100% rename from src/test/compile-fail/issue-20225.rs rename to src/test/ui/issue-20225.rs diff --git a/src/test/ui/issue-20225.stderr b/src/test/ui/issue-20225.stderr new file mode 100644 index 0000000000000..7813dc5c11dba --- /dev/null +++ b/src/test/ui/issue-20225.stderr @@ -0,0 +1,30 @@ +error[E0053]: method `call` has an incompatible type for trait + --> $DIR/issue-20225.rs:16:3 + | +LL | extern "rust-call" fn call(&self, (_,): (T,)) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected reference, found type parameter + | + = note: expected type `extern "rust-call" fn(&Foo, (&'a T,))` + found type `extern "rust-call" fn(&Foo, (T,))` + +error[E0053]: method `call_mut` has an incompatible type for trait + --> $DIR/issue-20225.rs:22:3 + | +LL | extern "rust-call" fn call_mut(&mut self, (_,): (T,)) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected reference, found type parameter + | + = note: expected type `extern "rust-call" fn(&mut Foo, (&'a T,))` + found type `extern "rust-call" fn(&mut Foo, (T,))` + +error[E0053]: method `call_once` has an incompatible type for trait + --> $DIR/issue-20225.rs:30:3 + | +LL | extern "rust-call" fn call_once(self, (_,): (T,)) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected reference, found type parameter + | + = note: expected type `extern "rust-call" fn(Foo, (&'a T,))` + found type `extern "rust-call" fn(Foo, (T,))` + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0053`. diff --git a/src/test/compile-fail/issue-20261.rs b/src/test/ui/issue-20261.rs similarity index 100% rename from src/test/compile-fail/issue-20261.rs rename to src/test/ui/issue-20261.rs diff --git a/src/test/ui/issue-20261.stderr b/src/test/ui/issue-20261.stderr new file mode 100644 index 0000000000000..a4a2aec8969ae --- /dev/null +++ b/src/test/ui/issue-20261.stderr @@ -0,0 +1,13 @@ +error[E0282]: type annotations needed + --> $DIR/issue-20261.rs:14:11 + | +LL | for (ref i,) in [].iter() { + | -------- consider giving `__next` a type +LL | i.clone(); + | ^^^^^ cannot infer type for `_` + | + = note: type must be known at this point + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-20313.rs b/src/test/ui/issue-20313.rs similarity index 100% rename from src/test/compile-fail/issue-20313.rs rename to src/test/ui/issue-20313.rs diff --git a/src/test/ui/issue-20313.stderr b/src/test/ui/issue-20313.stderr new file mode 100644 index 0000000000000..95afda1b514d4 --- /dev/null +++ b/src/test/ui/issue-20313.stderr @@ -0,0 +1,11 @@ +error[E0658]: linking to LLVM intrinsics is experimental (see issue #29602) + --> $DIR/issue-20313.rs:13:5 + | +LL | fn sqrt(x: f32) -> f32; //~ ERROR linking to LLVM intrinsics is experimental + | ^^^^^^^^^^^^^^^^^^^^^^^ + | + = help: add #![feature(link_llvm_intrinsics)] to the crate attributes to enable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0658`. diff --git a/src/test/compile-fail/issue-20413.rs b/src/test/ui/issue-20413.rs similarity index 100% rename from src/test/compile-fail/issue-20413.rs rename to src/test/ui/issue-20413.rs diff --git a/src/test/ui/issue-20413.stderr b/src/test/ui/issue-20413.stderr new file mode 100644 index 0000000000000..bfb2665e867fa --- /dev/null +++ b/src/test/ui/issue-20413.stderr @@ -0,0 +1,94 @@ +error[E0392]: parameter `T` is never used + --> $DIR/issue-20413.rs:15:15 + | +LL | struct NoData; + | ^ unused type parameter + | + = help: consider removing `T` or using a marker such as `std::marker::PhantomData` + +error[E0275]: overflow evaluating the requirement `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>: std::marker::Sized` + --> $DIR/issue-20413.rs:18:1 + | +LL | / impl Foo for T where NoData: Foo { +LL | | //~^ ERROR: overflow evaluating the requirement +LL | | fn answer(self) { +LL | | let val: NoData = NoData; +LL | | } +LL | | } + | |_^ + | + = help: consider adding a `#![recursion_limit="128"]` attribute to your crate + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>>` + = note: required because of the requirements on the impl of `Foo` for `NoData>` + = note: required because of the requirements on the impl of `Foo` for `NoData` +note: required by `Foo` + --> $DIR/issue-20413.rs:11:1 + | +LL | trait Foo { + | ^^^^^^^^^ + +error: aborting due to 2 previous errors + +Some errors occurred: E0275, E0392. +For more information about an error, try `rustc --explain E0275`. diff --git a/src/test/compile-fail/issue-20433.rs b/src/test/ui/issue-20433.rs similarity index 100% rename from src/test/compile-fail/issue-20433.rs rename to src/test/ui/issue-20433.rs diff --git a/src/test/ui/issue-20433.stderr b/src/test/ui/issue-20433.stderr new file mode 100644 index 0000000000000..38dd4e5e7fe3c --- /dev/null +++ b/src/test/ui/issue-20433.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `[i32]` cannot be known at compilation time + --> $DIR/issue-20433.rs:16:5 + | +LL | fn iceman(c: Vec<[i32]>) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `[i32]` + = note: to learn more, visit + = note: required by `std::vec::Vec` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-20605.rs b/src/test/ui/issue-20605.rs similarity index 100% rename from src/test/compile-fail/issue-20605.rs rename to src/test/ui/issue-20605.rs diff --git a/src/test/ui/issue-20605.stderr b/src/test/ui/issue-20605.stderr new file mode 100644 index 0000000000000..10e90faf2df34 --- /dev/null +++ b/src/test/ui/issue-20605.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `dyn std::iter::Iterator` cannot be known at compilation time + --> $DIR/issue-20605.rs:12:17 + | +LL | for item in *things { *item = 0 } + | ^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `dyn std::iter::Iterator` + = note: to learn more, visit + = note: required by `std::iter::IntoIterator::into_iter` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-20616-1.rs b/src/test/ui/issue-20616-1.rs similarity index 100% rename from src/test/compile-fail/issue-20616-1.rs rename to src/test/ui/issue-20616-1.rs diff --git a/src/test/ui/issue-20616-1.stderr b/src/test/ui/issue-20616-1.stderr new file mode 100644 index 0000000000000..1ee965d2186e0 --- /dev/null +++ b/src/test/ui/issue-20616-1.stderr @@ -0,0 +1,8 @@ +error: expected one of `,`, `:`, or `>`, found `T` + --> $DIR/issue-20616-1.rs:19:16 + | +LL | type Type_1<'a T> = &'a T; //~ error: expected one of `,`, `:`, or `>`, found `T` + | ^ expected one of `,`, `:`, or `>` here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-2.rs b/src/test/ui/issue-20616-2.rs similarity index 100% rename from src/test/compile-fail/issue-20616-2.rs rename to src/test/ui/issue-20616-2.rs diff --git a/src/test/ui/issue-20616-2.stderr b/src/test/ui/issue-20616-2.stderr new file mode 100644 index 0000000000000..1c103b21a181e --- /dev/null +++ b/src/test/ui/issue-20616-2.stderr @@ -0,0 +1,8 @@ +error: expected one of `,` or `>`, found `(` + --> $DIR/issue-20616-2.rs:22:31 + | +LL | type Type_2 = Type_1_<'static ()>; //~ error: expected one of `,` or `>`, found `(` + | ^ expected one of `,` or `>` here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-3.rs b/src/test/ui/issue-20616-3.rs similarity index 100% rename from src/test/compile-fail/issue-20616-3.rs rename to src/test/ui/issue-20616-3.rs diff --git a/src/test/ui/issue-20616-3.stderr b/src/test/ui/issue-20616-3.stderr new file mode 100644 index 0000000000000..b4b40b3637db7 --- /dev/null +++ b/src/test/ui/issue-20616-3.stderr @@ -0,0 +1,8 @@ +error: expected one of `>`, identifier, lifetime, or type, found `,` + --> $DIR/issue-20616-3.rs:25:24 + | +LL | type Type_3 = Box; //~ error: expected one of `>`, identifier, lifetime, or type, found `,` + | ^ expected one of `>`, identifier, lifetime, or type here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-4.rs b/src/test/ui/issue-20616-4.rs similarity index 100% rename from src/test/compile-fail/issue-20616-4.rs rename to src/test/ui/issue-20616-4.rs diff --git a/src/test/ui/issue-20616-4.stderr b/src/test/ui/issue-20616-4.stderr new file mode 100644 index 0000000000000..0a734e4fdcdbe --- /dev/null +++ b/src/test/ui/issue-20616-4.stderr @@ -0,0 +1,8 @@ +error: expected one of `>`, identifier, lifetime, or type, found `,` + --> $DIR/issue-20616-4.rs:28:34 + | +LL | type Type_4 = Type_1_<'static,, T>; + | ^ expected one of `>`, identifier, lifetime, or type here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-5.rs b/src/test/ui/issue-20616-5.rs similarity index 100% rename from src/test/compile-fail/issue-20616-5.rs rename to src/test/ui/issue-20616-5.rs diff --git a/src/test/ui/issue-20616-5.stderr b/src/test/ui/issue-20616-5.stderr new file mode 100644 index 0000000000000..504be1632ba5b --- /dev/null +++ b/src/test/ui/issue-20616-5.stderr @@ -0,0 +1,8 @@ +error: expected one of `>`, identifier, lifetime, or type, found `,` + --> $DIR/issue-20616-5.rs:34:34 + | +LL | type Type_5<'a> = Type_1_<'a, (),,>; + | ^ expected one of `>`, identifier, lifetime, or type here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-6.rs b/src/test/ui/issue-20616-6.rs similarity index 100% rename from src/test/compile-fail/issue-20616-6.rs rename to src/test/ui/issue-20616-6.rs diff --git a/src/test/ui/issue-20616-6.stderr b/src/test/ui/issue-20616-6.stderr new file mode 100644 index 0000000000000..41dea4137afd8 --- /dev/null +++ b/src/test/ui/issue-20616-6.stderr @@ -0,0 +1,8 @@ +error: expected one of `>`, identifier, lifetime, or type, found `,` + --> $DIR/issue-20616-6.rs:37:26 + | +LL | type Type_6 = Type_5_<'a,,>; + | ^ expected one of `>`, identifier, lifetime, or type here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-7.rs b/src/test/ui/issue-20616-7.rs similarity index 100% rename from src/test/compile-fail/issue-20616-7.rs rename to src/test/ui/issue-20616-7.rs diff --git a/src/test/ui/issue-20616-7.stderr b/src/test/ui/issue-20616-7.stderr new file mode 100644 index 0000000000000..caf66895fabbf --- /dev/null +++ b/src/test/ui/issue-20616-7.stderr @@ -0,0 +1,8 @@ +error: expected one of `>`, identifier, lifetime, or type, found `,` + --> $DIR/issue-20616-7.rs:40:22 + | +LL | type Type_7 = Box<(),,>; //~ error: expected one of `>`, identifier, lifetime, or type, found `,` + | ^ expected one of `>`, identifier, lifetime, or type here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-8.rs b/src/test/ui/issue-20616-8.rs similarity index 100% rename from src/test/compile-fail/issue-20616-8.rs rename to src/test/ui/issue-20616-8.rs diff --git a/src/test/ui/issue-20616-8.stderr b/src/test/ui/issue-20616-8.stderr new file mode 100644 index 0000000000000..6d840fc562b42 --- /dev/null +++ b/src/test/ui/issue-20616-8.stderr @@ -0,0 +1,8 @@ +error: expected one of `>`, identifier, or lifetime, found `,` + --> $DIR/issue-20616-8.rs:43:16 + | +LL | type Type_8<'a,,> = &'a (); //~ error: expected one of `>`, identifier, or lifetime, found `,` + | ^ expected one of `>`, identifier, or lifetime here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20616-9.rs b/src/test/ui/issue-20616-9.rs similarity index 100% rename from src/test/compile-fail/issue-20616-9.rs rename to src/test/ui/issue-20616-9.rs diff --git a/src/test/ui/issue-20616-9.stderr b/src/test/ui/issue-20616-9.stderr new file mode 100644 index 0000000000000..f9cc4e0b48093 --- /dev/null +++ b/src/test/ui/issue-20616-9.stderr @@ -0,0 +1,8 @@ +error: expected one of `>`, identifier, or lifetime, found `,` + --> $DIR/issue-20616-9.rs:46:15 + | +LL | type Type_9 = Box; //~ error: expected one of `>`, identifier, or lifetime, found `,` + | ^ expected one of `>`, identifier, or lifetime here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20714.rs b/src/test/ui/issue-20714.rs similarity index 100% rename from src/test/compile-fail/issue-20714.rs rename to src/test/ui/issue-20714.rs diff --git a/src/test/ui/issue-20714.stderr b/src/test/ui/issue-20714.stderr new file mode 100644 index 0000000000000..1ea85ee440e21 --- /dev/null +++ b/src/test/ui/issue-20714.stderr @@ -0,0 +1,12 @@ +error[E0618]: expected function, found `G` + --> $DIR/issue-20714.rs:14:13 + | +LL | struct G; + | --------- `G` defined here +... +LL | let g = G(); //~ ERROR: expected function, found `G` + | ^^^ not a function + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0618`. diff --git a/src/test/compile-fail/issue-20772.rs b/src/test/ui/issue-20772.rs similarity index 100% rename from src/test/compile-fail/issue-20772.rs rename to src/test/ui/issue-20772.rs diff --git a/src/test/ui/issue-20772.stderr b/src/test/ui/issue-20772.stderr new file mode 100644 index 0000000000000..b898962c9cca3 --- /dev/null +++ b/src/test/ui/issue-20772.stderr @@ -0,0 +1,21 @@ +error[E0391]: cycle detected when computing the supertraits of `T` + --> $DIR/issue-20772.rs:11:1 + | +LL | / trait T : Iterator +LL | | //~^ ERROR cycle detected +LL | | //~| ERROR associated type `Item` not found for `Self` +LL | | {} + | |__^ + | + = note: ...which again requires computing the supertraits of `T`, completing the cycle + +error[E0220]: associated type `Item` not found for `Self` + --> $DIR/issue-20772.rs:11:25 + | +LL | trait T : Iterator + | ^^^^^^^^^^ associated type `Item` not found + +error: aborting due to 2 previous errors + +Some errors occurred: E0220, E0391. +For more information about an error, try `rustc --explain E0220`. diff --git a/src/test/ui/issue-20801.nll.stderr b/src/test/ui/issue-20801.nll.stderr new file mode 100644 index 0000000000000..39b1405991a31 --- /dev/null +++ b/src/test/ui/issue-20801.nll.stderr @@ -0,0 +1,8 @@ +error: internal compiler error: Accessing `(*_8)` with the kind `Write(Move)` shouldn't be possible + --> $DIR/issue-20801.rs:45:22 + | +LL | let d = unsafe { *const_ptr() }; + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-20801.rs b/src/test/ui/issue-20801.rs similarity index 100% rename from src/test/compile-fail/issue-20801.rs rename to src/test/ui/issue-20801.rs diff --git a/src/test/ui/issue-20801.stderr b/src/test/ui/issue-20801.stderr new file mode 100644 index 0000000000000..3989957b7b45a --- /dev/null +++ b/src/test/ui/issue-20801.stderr @@ -0,0 +1,27 @@ +error[E0507]: cannot move out of borrowed content + --> $DIR/issue-20801.rs:36:22 + | +LL | let a = unsafe { *mut_ref() }; + | ^^^^^^^^^^ cannot move out of borrowed content + +error[E0507]: cannot move out of borrowed content + --> $DIR/issue-20801.rs:39:22 + | +LL | let b = unsafe { *imm_ref() }; + | ^^^^^^^^^^ cannot move out of borrowed content + +error[E0507]: cannot move out of dereference of raw pointer + --> $DIR/issue-20801.rs:42:22 + | +LL | let c = unsafe { *mut_ptr() }; + | ^^^^^^^^^^ cannot move out of dereference of raw pointer + +error[E0507]: cannot move out of dereference of raw pointer + --> $DIR/issue-20801.rs:45:22 + | +LL | let d = unsafe { *const_ptr() }; + | ^^^^^^^^^^^^ cannot move out of dereference of raw pointer + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0507`. diff --git a/src/test/compile-fail/issue-20825.rs b/src/test/ui/issue-20825.rs similarity index 100% rename from src/test/compile-fail/issue-20825.rs rename to src/test/ui/issue-20825.rs diff --git a/src/test/ui/issue-20825.stderr b/src/test/ui/issue-20825.stderr new file mode 100644 index 0000000000000..e49e3668536cc --- /dev/null +++ b/src/test/ui/issue-20825.stderr @@ -0,0 +1,11 @@ +error[E0391]: cycle detected when computing the supertraits of `Processor` + --> $DIR/issue-20825.rs:15:1 + | +LL | pub trait Processor: Subscriber { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = note: ...which again requires computing the supertraits of `Processor`, completing the cycle + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0391`. diff --git a/src/test/compile-fail/issue-20831-debruijn.rs b/src/test/ui/issue-20831-debruijn.rs similarity index 100% rename from src/test/compile-fail/issue-20831-debruijn.rs rename to src/test/ui/issue-20831-debruijn.rs diff --git a/src/test/ui/issue-20831-debruijn.stderr b/src/test/ui/issue-20831-debruijn.stderr new file mode 100644 index 0000000000000..fc9a0fdbe5438 --- /dev/null +++ b/src/test/ui/issue-20831-debruijn.stderr @@ -0,0 +1,35 @@ +error[E0495]: cannot infer an appropriate lifetime for lifetime parameter `'a` due to conflicting requirements + --> $DIR/issue-20831-debruijn.rs:38:5 + | +LL | / fn subscribe(&mut self, t : Box::Output> + 'a>) { +LL | | // Not obvious, but there is an implicit lifetime here -------^ +LL | | //~^^ ERROR cannot infer +LL | | // +... | +LL | | self.sub = t; +LL | | } + | |_____^ + | +note: first, the lifetime cannot outlive the anonymous lifetime #2 defined on the method body at 38:5... + --> $DIR/issue-20831-debruijn.rs:38:5 + | +LL | / fn subscribe(&mut self, t : Box::Output> + 'a>) { +LL | | // Not obvious, but there is an implicit lifetime here -------^ +LL | | //~^^ ERROR cannot infer +LL | | // +... | +LL | | self.sub = t; +LL | | } + | |_____^ +note: ...but the lifetime must also be valid for the lifetime 'a as defined on the impl at 36:6... + --> $DIR/issue-20831-debruijn.rs:36:6 + | +LL | impl<'a> Publisher<'a> for MyStruct<'a> { + | ^^ + = note: ...so that the types are compatible: + expected Publisher<'_> + found Publisher<'_> + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0495`. diff --git a/src/test/compile-fail/issue-20939.rs b/src/test/ui/issue-20939.rs similarity index 100% rename from src/test/compile-fail/issue-20939.rs rename to src/test/ui/issue-20939.rs diff --git a/src/test/ui/issue-20939.stderr b/src/test/ui/issue-20939.stderr new file mode 100644 index 0000000000000..c8f7e58540b39 --- /dev/null +++ b/src/test/ui/issue-20939.stderr @@ -0,0 +1,9 @@ +error[E0371]: the object type `(dyn Foo + 'a)` automatically implements the trait `Foo` + --> $DIR/issue-20939.rs:13:1 + | +LL | impl<'a> Foo for Foo+'a {} + | ^^^^^^^^^^^^^^^^^^^^^^^ `(dyn Foo + 'a)` automatically implements trait `Foo` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0371`. diff --git a/src/test/compile-fail/issue-2111.rs b/src/test/ui/issue-2111.rs similarity index 100% rename from src/test/compile-fail/issue-2111.rs rename to src/test/ui/issue-2111.rs diff --git a/src/test/ui/issue-2111.stderr b/src/test/ui/issue-2111.stderr new file mode 100644 index 0000000000000..5aa1b02779b7d --- /dev/null +++ b/src/test/ui/issue-2111.stderr @@ -0,0 +1,9 @@ +error[E0004]: non-exhaustive patterns: `(None, None)` not covered + --> $DIR/issue-2111.rs:12:9 + | +LL | match (a,b) { + | ^^^^^ pattern `(None, None)` not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/compile-fail/issue-21160.rs b/src/test/ui/issue-21160.rs similarity index 100% rename from src/test/compile-fail/issue-21160.rs rename to src/test/ui/issue-21160.rs diff --git a/src/test/ui/issue-21160.stderr b/src/test/ui/issue-21160.stderr new file mode 100644 index 0000000000000..75ed9988b895b --- /dev/null +++ b/src/test/ui/issue-21160.stderr @@ -0,0 +1,11 @@ +error[E0277]: the trait bound `Bar: std::hash::Hash` is not satisfied + --> $DIR/issue-21160.rs:18:12 + | +LL | struct Foo(Bar); + | ^^^ the trait `std::hash::Hash` is not implemented for `Bar` + | + = note: required by `std::hash::Hash::hash` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-21174.rs b/src/test/ui/issue-21174.rs similarity index 100% rename from src/test/compile-fail/issue-21174.rs rename to src/test/ui/issue-21174.rs diff --git a/src/test/ui/issue-21174.stderr b/src/test/ui/issue-21174.stderr new file mode 100644 index 0000000000000..391ed1e7698bf --- /dev/null +++ b/src/test/ui/issue-21174.stderr @@ -0,0 +1,12 @@ +error[E0512]: transmute called with types of different sizes + --> $DIR/issue-21174.rs:17:30 + | +LL | let new: T::B = unsafe { std::mem::transmute(value) }; + | ^^^^^^^^^^^^^^^^^^^ + | + = note: source type: >::A (size can vary because of ::A) + = note: target type: >::B (size can vary because of ::B) + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0512`. diff --git a/src/test/compile-fail/issue-21177.rs b/src/test/ui/issue-21177.rs similarity index 100% rename from src/test/compile-fail/issue-21177.rs rename to src/test/ui/issue-21177.rs diff --git a/src/test/ui/issue-21177.stderr b/src/test/ui/issue-21177.stderr new file mode 100644 index 0000000000000..c924fb2ee9498 --- /dev/null +++ b/src/test/ui/issue-21177.stderr @@ -0,0 +1,23 @@ +error[E0391]: cycle detected when computing the bounds for type parameter `T` + --> $DIR/issue-21177.rs:16:21 + | +LL | fn foo>() { } + | ^^^^ + | + = note: ...which again requires computing the bounds for type parameter `T`, completing the cycle +note: cycle used when processing `foo` + --> $DIR/issue-21177.rs:16:21 + | +LL | fn foo>() { } + | ^^^^ + +error[E0220]: associated type `B` not found for `T` + --> $DIR/issue-21177.rs:16:21 + | +LL | fn foo>() { } + | ^^^^ associated type `B` not found + +error: aborting due to 2 previous errors + +Some errors occurred: E0220, E0391. +For more information about an error, try `rustc --explain E0220`. diff --git a/src/test/compile-fail/issue-21332.rs b/src/test/ui/issue-21332.rs similarity index 100% rename from src/test/compile-fail/issue-21332.rs rename to src/test/ui/issue-21332.rs diff --git a/src/test/ui/issue-21332.stderr b/src/test/ui/issue-21332.stderr new file mode 100644 index 0000000000000..b5fbb71f8ca04 --- /dev/null +++ b/src/test/ui/issue-21332.stderr @@ -0,0 +1,12 @@ +error[E0053]: method `next` has an incompatible type for trait + --> $DIR/issue-21332.rs:15:5 + | +LL | fn next(&mut self) -> Result { Ok(7) } + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `std::option::Option`, found enum `std::result::Result` + | + = note: expected type `fn(&mut S) -> std::option::Option` + found type `fn(&mut S) -> std::result::Result` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0053`. diff --git a/src/test/compile-fail/issue-21356.rs b/src/test/ui/issue-21356.rs similarity index 100% rename from src/test/compile-fail/issue-21356.rs rename to src/test/ui/issue-21356.rs diff --git a/src/test/ui/issue-21356.stderr b/src/test/ui/issue-21356.stderr new file mode 100644 index 0000000000000..5787476c2f235 --- /dev/null +++ b/src/test/ui/issue-21356.stderr @@ -0,0 +1,10 @@ +error: invalid fragment specifier `t_ty` + --> $DIR/issue-21356.rs:13:22 + | +LL | macro_rules! test { ($wrong:t_ty ..) => () } + | ^^^^^^^^^^^ + | + = help: valid fragment specifiers are `ident`, `block`, `stmt`, `expr`, `pat`, `ty`, `literal`, `path`, `meta`, `tt`, `item` and `vis` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-21449.rs b/src/test/ui/issue-21449.rs similarity index 100% rename from src/test/compile-fail/issue-21449.rs rename to src/test/ui/issue-21449.rs diff --git a/src/test/ui/issue-21449.stderr b/src/test/ui/issue-21449.stderr new file mode 100644 index 0000000000000..d84b3b99c1f57 --- /dev/null +++ b/src/test/ui/issue-21449.stderr @@ -0,0 +1,9 @@ +error[E0574]: expected struct, variant or union type, found module `MyMod` + --> $DIR/issue-21449.rs:14:17 + | +LL | let myVar = MyMod { T: 0 }; + | ^^^^^ not a struct, variant or union type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0574`. diff --git a/src/test/compile-fail/issue-2149.rs b/src/test/ui/issue-2149.rs similarity index 100% rename from src/test/compile-fail/issue-2149.rs rename to src/test/ui/issue-2149.rs diff --git a/src/test/ui/issue-2149.stderr b/src/test/ui/issue-2149.stderr new file mode 100644 index 0000000000000..4ae9032cd1aa8 --- /dev/null +++ b/src/test/ui/issue-2149.stderr @@ -0,0 +1,22 @@ +error[E0277]: cannot add `std::vec::Vec` to `()` + --> $DIR/issue-2149.rs:18:33 + | +LL | for elt in self { r = r + f(*elt); } + | ^ no implementation for `() + std::vec::Vec` + | + = help: the trait `std::ops::Add>` is not implemented for `()` + +error[E0599]: no method named `bind` found for type `[&str; 1]` in the current scope + --> $DIR/issue-2149.rs:23:12 + | +LL | ["hi"].bind(|x| [x] ); + | ^^^^ + | + = help: items from traits can only be used if the trait is implemented and in scope + = note: the following trait defines an item `bind`, perhaps you need to implement it: + candidate #1: `vec_monad` + +error: aborting due to 2 previous errors + +Some errors occurred: E0277, E0599. +For more information about an error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-2150.rs b/src/test/ui/issue-2150.rs similarity index 100% rename from src/test/compile-fail/issue-2150.rs rename to src/test/ui/issue-2150.rs diff --git a/src/test/ui/issue-2150.stderr b/src/test/ui/issue-2150.stderr new file mode 100644 index 0000000000000..c1944efab8bea --- /dev/null +++ b/src/test/ui/issue-2150.stderr @@ -0,0 +1,14 @@ +error: unreachable statement + --> $DIR/issue-2150.rs:18:5 + | +LL | for x in &v { i += 1; } + | ^^^^^^^^^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-2150.rs:11:9 + | +LL | #![deny(unreachable_code)] + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-2151.rs b/src/test/ui/issue-2151.rs similarity index 100% rename from src/test/compile-fail/issue-2151.rs rename to src/test/ui/issue-2151.rs diff --git a/src/test/ui/issue-2151.stderr b/src/test/ui/issue-2151.stderr new file mode 100644 index 0000000000000..592c4f424b048 --- /dev/null +++ b/src/test/ui/issue-2151.stderr @@ -0,0 +1,13 @@ +error[E0282]: type annotations needed + --> $DIR/issue-2151.rs:13:5 + | +LL | let x = panic!(); + | - consider giving `x` a type +LL | x.clone(); //~ ERROR type annotations needed + | ^ cannot infer type for `_` + | + = note: type must be known at this point + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-21554.rs b/src/test/ui/issue-21554.rs similarity index 100% rename from src/test/compile-fail/issue-21554.rs rename to src/test/ui/issue-21554.rs diff --git a/src/test/ui/issue-21554.stderr b/src/test/ui/issue-21554.stderr new file mode 100644 index 0000000000000..be7762f1aa245 --- /dev/null +++ b/src/test/ui/issue-21554.stderr @@ -0,0 +1,9 @@ +error[E0606]: casting `fn(i32) -> Inches {Inches::{{constructor}}}` as `f32` is invalid + --> $DIR/issue-21554.rs:14:5 + | +LL | Inches as f32; + | ^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0606`. diff --git a/src/test/compile-fail/issue-21701.rs b/src/test/ui/issue-21701.rs similarity index 100% rename from src/test/compile-fail/issue-21701.rs rename to src/test/ui/issue-21701.rs diff --git a/src/test/ui/issue-21701.stderr b/src/test/ui/issue-21701.stderr new file mode 100644 index 0000000000000..9fb9a7b51f280 --- /dev/null +++ b/src/test/ui/issue-21701.stderr @@ -0,0 +1,20 @@ +error[E0618]: expected function, found `U` + --> $DIR/issue-21701.rs:12:13 + | +LL | fn foo(t: U) { + | - `U` defined here +LL | let y = t(); + | ^^^ not a function + +error[E0618]: expected function, found `Bar` + --> $DIR/issue-21701.rs:19:13 + | +LL | struct Bar; + | ----------- `Bar` defined here +... +LL | let f = Bar(); + | ^^^^^ not a function + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0618`. diff --git a/src/test/compile-fail/issue-21763.rs b/src/test/ui/issue-21763.rs similarity index 100% rename from src/test/compile-fail/issue-21763.rs rename to src/test/ui/issue-21763.rs diff --git a/src/test/ui/issue-21763.stderr b/src/test/ui/issue-21763.stderr new file mode 100644 index 0000000000000..91db16e0f6d27 --- /dev/null +++ b/src/test/ui/issue-21763.stderr @@ -0,0 +1,20 @@ +error[E0277]: `std::rc::Rc<()>` cannot be sent between threads safely + --> $DIR/issue-21763.rs:19:5 + | +LL | foo::, Rc<()>>>(); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<()>` cannot be sent between threads safely + | + = help: within `std::collections::HashMap, std::rc::Rc<()>>`, the trait `std::marker::Send` is not implemented for `std::rc::Rc<()>` + = note: required because it appears within the type `(std::rc::Rc<()>, std::rc::Rc<()>)` + = note: required because it appears within the type `std::marker::PhantomData<(std::rc::Rc<()>, std::rc::Rc<()>)>` + = note: required because it appears within the type `std::collections::hash::table::RawTable, std::rc::Rc<()>>` + = note: required because it appears within the type `std::collections::HashMap, std::rc::Rc<()>>` +note: required by `foo` + --> $DIR/issue-21763.rs:16:1 + | +LL | fn foo() {} + | ^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-21837.rs b/src/test/ui/issue-21837.rs similarity index 100% rename from src/test/compile-fail/issue-21837.rs rename to src/test/ui/issue-21837.rs diff --git a/src/test/ui/issue-21837.stderr b/src/test/ui/issue-21837.stderr new file mode 100644 index 0000000000000..bbdebeefdd68e --- /dev/null +++ b/src/test/ui/issue-21837.stderr @@ -0,0 +1,16 @@ +error[E0277]: the trait bound `T: Bound` is not satisfied + --> $DIR/issue-21837.rs:18:9 + | +LL | impl Trait2 for Foo {} //~ ERROR the trait bound `T: Bound` is not satisfied + | ^^^^^^ the trait `Bound` is not implemented for `T` + | + = help: consider adding a `where T: Bound` bound +note: required by `Foo` + --> $DIR/issue-21837.rs:12:1 + | +LL | pub struct Foo(T); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-21946.rs b/src/test/ui/issue-21946.rs similarity index 100% rename from src/test/compile-fail/issue-21946.rs rename to src/test/ui/issue-21946.rs diff --git a/src/test/ui/issue-21946.stderr b/src/test/ui/issue-21946.stderr new file mode 100644 index 0000000000000..ebb0c0c9ce000 --- /dev/null +++ b/src/test/ui/issue-21946.stderr @@ -0,0 +1,9 @@ +error[E0275]: overflow evaluating the requirement `::A` + --> $DIR/issue-21946.rs:17:6 + | +LL | impl Foo for FooStruct { + | ^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0275`. diff --git a/src/test/compile-fail/issue-21974.rs b/src/test/ui/issue-21974.rs similarity index 100% rename from src/test/compile-fail/issue-21974.rs rename to src/test/ui/issue-21974.rs diff --git a/src/test/ui/issue-21974.stderr b/src/test/ui/issue-21974.stderr new file mode 100644 index 0000000000000..4cc28c9ceb508 --- /dev/null +++ b/src/test/ui/issue-21974.stderr @@ -0,0 +1,21 @@ +error[E0283]: type annotations required: cannot resolve `&'a T: Foo` + --> $DIR/issue-21974.rs:20:1 + | +LL | / fn foo<'a,'b,T>(x: &'a T, y: &'b T) //~ ERROR type annotations required +LL | | where &'a T : Foo, +LL | | &'b T : Foo +LL | | { +LL | | x.foo(); +LL | | y.foo(); +LL | | } + | |_^ + | +note: required by `Foo` + --> $DIR/issue-21974.rs:16:1 + | +LL | trait Foo { + | ^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0283`. diff --git a/src/test/compile-fail/issue-22034.rs b/src/test/ui/issue-22034.rs similarity index 100% rename from src/test/compile-fail/issue-22034.rs rename to src/test/ui/issue-22034.rs diff --git a/src/test/ui/issue-22034.stderr b/src/test/ui/issue-22034.stderr new file mode 100644 index 0000000000000..bac62a1301aad --- /dev/null +++ b/src/test/ui/issue-22034.stderr @@ -0,0 +1,11 @@ +error[E0277]: the trait bound `(): std::ops::Fn<()>` is not satisfied + --> $DIR/issue-22034.rs:18:16 + | +LL | &mut *(ptr as *mut Fn()) + | ^^^ the trait `std::ops::Fn<()>` is not implemented for `()` + | + = note: required for the cast to the object type `dyn std::ops::Fn()` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-22037.rs b/src/test/ui/issue-22037.rs similarity index 100% rename from src/test/compile-fail/issue-22037.rs rename to src/test/ui/issue-22037.rs diff --git a/src/test/ui/issue-22037.stderr b/src/test/ui/issue-22037.stderr new file mode 100644 index 0000000000000..ae739afc70453 --- /dev/null +++ b/src/test/ui/issue-22037.stderr @@ -0,0 +1,9 @@ +error[E0576]: cannot find associated type `X` in trait `A` + --> $DIR/issue-22037.rs:13:33 + | +LL | fn a(&self) -> ::X; + | ^ not found in `A` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0576`. diff --git a/src/test/compile-fail/issue-22289.rs b/src/test/ui/issue-22289.rs similarity index 100% rename from src/test/compile-fail/issue-22289.rs rename to src/test/ui/issue-22289.rs diff --git a/src/test/ui/issue-22289.stderr b/src/test/ui/issue-22289.stderr new file mode 100644 index 0000000000000..202b25f1a5b9a --- /dev/null +++ b/src/test/ui/issue-22289.stderr @@ -0,0 +1,11 @@ +error[E0605]: non-primitive cast: `i32` as `&(dyn std::any::Any + 'static)` + --> $DIR/issue-22289.rs:12:5 + | +LL | 0 as &std::any::Any; //~ ERROR non-primitive cast + | ^^^^^^^^^^^^^^^^^^^ + | + = note: an `as` expression can only be used to convert between primitive types. Consider using the `From` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0605`. diff --git a/src/test/compile-fail/issue-22312.rs b/src/test/ui/issue-22312.rs similarity index 100% rename from src/test/compile-fail/issue-22312.rs rename to src/test/ui/issue-22312.rs diff --git a/src/test/ui/issue-22312.stderr b/src/test/ui/issue-22312.stderr new file mode 100644 index 0000000000000..abd712e5c2957 --- /dev/null +++ b/src/test/ui/issue-22312.stderr @@ -0,0 +1,11 @@ +error[E0605]: non-primitive cast: `Self` as `&dyn std::ops::Index>::Output>` + --> $DIR/issue-22312.rs:21:24 + | +LL | let indexer = &(*self as &Index>::Output>); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = note: an `as` expression can only be used to convert between primitive types. Consider using the `From` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0605`. diff --git a/src/test/compile-fail/issue-22384.rs b/src/test/ui/issue-22384.rs similarity index 100% rename from src/test/compile-fail/issue-22384.rs rename to src/test/ui/issue-22384.rs diff --git a/src/test/ui/issue-22384.stderr b/src/test/ui/issue-22384.stderr new file mode 100644 index 0000000000000..b8cc1e643e53d --- /dev/null +++ b/src/test/ui/issue-22384.stderr @@ -0,0 +1,9 @@ +error[E0576]: cannot find associated type `foobar` in trait `Copy` + --> $DIR/issue-22384.rs:16:21 + | +LL | <::foobar as Trait>::foo(); + | ^^^^^^ not found in `Copy` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0576`. diff --git a/src/test/compile-fail/issue-22434.rs b/src/test/ui/issue-22434.rs similarity index 100% rename from src/test/compile-fail/issue-22434.rs rename to src/test/ui/issue-22434.rs diff --git a/src/test/ui/issue-22434.stderr b/src/test/ui/issue-22434.stderr new file mode 100644 index 0000000000000..914da801ad4e7 --- /dev/null +++ b/src/test/ui/issue-22434.stderr @@ -0,0 +1,9 @@ +error[E0191]: the value of the associated type `A` (from the trait `Foo`) must be specified + --> $DIR/issue-22434.rs:15:19 + | +LL | type I<'a> = &'a (Foo + 'a); + | ^^^^^^^^ missing associated type `A` value + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0191`. diff --git a/src/test/compile-fail/issue-22468.rs b/src/test/ui/issue-22468.rs similarity index 100% rename from src/test/compile-fail/issue-22468.rs rename to src/test/ui/issue-22468.rs diff --git a/src/test/ui/issue-22468.stderr b/src/test/ui/issue-22468.stderr new file mode 100644 index 0000000000000..034a076fbfe83 --- /dev/null +++ b/src/test/ui/issue-22468.stderr @@ -0,0 +1,11 @@ +error[E0618]: expected function, found `&str` + --> $DIR/issue-22468.rs:13:13 + | +LL | let foo = "bar"; + | --- `&str` defined here +LL | let x = foo("baz"); + | ^^^^^^^^^^ not a function + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0618`. diff --git a/src/test/compile-fail/issue-22599.rs b/src/test/ui/issue-22599.rs similarity index 100% rename from src/test/compile-fail/issue-22599.rs rename to src/test/ui/issue-22599.rs diff --git a/src/test/ui/issue-22599.stderr b/src/test/ui/issue-22599.stderr new file mode 100644 index 0000000000000..19c9b94a430a8 --- /dev/null +++ b/src/test/ui/issue-22599.stderr @@ -0,0 +1,14 @@ +error: unused variable: `a` + --> $DIR/issue-22599.rs:18:19 + | +LL | v = match 0 { a => 0 }; //~ ERROR: unused variable: `a` + | ^ help: consider using `_a` instead + | +note: lint level defined here + --> $DIR/issue-22599.rs:11:9 + | +LL | #![deny(unused_variables)] + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-22603.rs b/src/test/ui/issue-22603.rs similarity index 100% rename from src/test/compile-fail/issue-22603.rs rename to src/test/ui/issue-22603.rs diff --git a/src/test/ui/issue-22603.stderr b/src/test/ui/issue-22603.stderr new file mode 100644 index 0000000000000..b50a5a25a7a46 --- /dev/null +++ b/src/test/ui/issue-22603.stderr @@ -0,0 +1,10 @@ +error: compilation successful + --> $DIR/issue-22603.rs:21:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | println!("{:?}", Foo("bar")); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-22673.rs b/src/test/ui/issue-22673.rs similarity index 100% rename from src/test/compile-fail/issue-22673.rs rename to src/test/ui/issue-22673.rs diff --git a/src/test/ui/issue-22673.stderr b/src/test/ui/issue-22673.stderr new file mode 100644 index 0000000000000..7e5b80c371153 --- /dev/null +++ b/src/test/ui/issue-22673.stderr @@ -0,0 +1,11 @@ +error[E0391]: cycle detected when computing the supertraits of `Expr` + --> $DIR/issue-22673.rs:11:1 + | +LL | trait Expr : PartialEq { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = note: ...which again requires computing the supertraits of `Expr`, completing the cycle + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0391`. diff --git a/src/test/compile-fail/issue-22684.rs b/src/test/ui/issue-22684.rs similarity index 100% rename from src/test/compile-fail/issue-22684.rs rename to src/test/ui/issue-22684.rs diff --git a/src/test/ui/issue-22684.stderr b/src/test/ui/issue-22684.stderr new file mode 100644 index 0000000000000..2c868bc877849 --- /dev/null +++ b/src/test/ui/issue-22684.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-22684.rs:27:17 + | +LL | let _: () = foo::Foo.bar(); //~ ERROR mismatched types + | ^^^^^^^^^^^^^^ expected (), found bool + | + = note: expected type `()` + found type `bool` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-22706.rs b/src/test/ui/issue-22706.rs similarity index 100% rename from src/test/compile-fail/issue-22706.rs rename to src/test/ui/issue-22706.rs diff --git a/src/test/ui/issue-22706.stderr b/src/test/ui/issue-22706.stderr new file mode 100644 index 0000000000000..2bbb3e5acad6f --- /dev/null +++ b/src/test/ui/issue-22706.stderr @@ -0,0 +1,9 @@ +error[E0109]: type parameters are not allowed on this type + --> $DIR/issue-22706.rs:11:29 + | +LL | fn is_copy::Copy>() {} + | ^^^ type parameter not allowed + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0109`. diff --git a/src/test/compile-fail/issue-22789.rs b/src/test/ui/issue-22789.rs similarity index 100% rename from src/test/compile-fail/issue-22789.rs rename to src/test/ui/issue-22789.rs diff --git a/src/test/ui/issue-22789.stderr b/src/test/ui/issue-22789.stderr new file mode 100644 index 0000000000000..afeae9c78efb8 --- /dev/null +++ b/src/test/ui/issue-22789.stderr @@ -0,0 +1,11 @@ +error: compilation successful + --> $DIR/issue-22789.rs:14:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let k = |x: i32| { x + 1 }; +LL | | Fn::call(&k, (0,)); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-2281-part1.rs b/src/test/ui/issue-2281-part1.rs similarity index 100% rename from src/test/compile-fail/issue-2281-part1.rs rename to src/test/ui/issue-2281-part1.rs diff --git a/src/test/ui/issue-2281-part1.stderr b/src/test/ui/issue-2281-part1.stderr new file mode 100644 index 0000000000000..e88cfe2b2ac72 --- /dev/null +++ b/src/test/ui/issue-2281-part1.stderr @@ -0,0 +1,9 @@ +error[E0425]: cannot find value `foobar` in this scope + --> $DIR/issue-2281-part1.rs:11:28 + | +LL | fn main() { println!("{}", foobar); } //~ ERROR cannot find value `foobar` in this scope + | ^^^^^^ not found in this scope + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-22874.rs b/src/test/ui/issue-22874.rs similarity index 100% rename from src/test/compile-fail/issue-22874.rs rename to src/test/ui/issue-22874.rs diff --git a/src/test/ui/issue-22874.stderr b/src/test/ui/issue-22874.stderr new file mode 100644 index 0000000000000..64c77a6a666d6 --- /dev/null +++ b/src/test/ui/issue-22874.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `[std::string::String]` cannot be known at compilation time + --> $DIR/issue-22874.rs:12:5 + | +LL | rows: [[String]], + | ^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `[std::string::String]` + = note: to learn more, visit + = note: slice and array elements must have `Sized` type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-22933-1.rs b/src/test/ui/issue-22933-1.rs similarity index 100% rename from src/test/compile-fail/issue-22933-1.rs rename to src/test/ui/issue-22933-1.rs diff --git a/src/test/ui/issue-22933-1.stderr b/src/test/ui/issue-22933-1.stderr new file mode 100644 index 0000000000000..eaebebe3b111a --- /dev/null +++ b/src/test/ui/issue-22933-1.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-22933-1.rs:35:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-22933-3.rs b/src/test/ui/issue-22933-3.rs similarity index 100% rename from src/test/compile-fail/issue-22933-3.rs rename to src/test/ui/issue-22933-3.rs diff --git a/src/test/ui/issue-22933-3.stderr b/src/test/ui/issue-22933-3.stderr new file mode 100644 index 0000000000000..3d4d2df4d322a --- /dev/null +++ b/src/test/ui/issue-22933-3.stderr @@ -0,0 +1,9 @@ +error[E0599]: no associated item named `MIN` found for type `u8` in the current scope + --> $DIR/issue-22933-3.rs:11:18 + | +LL | const FOO: [u32; u8::MIN as usize] = []; + | ^^^^^^^ associated item not found in `u8` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-23024.rs b/src/test/ui/issue-23024.rs similarity index 100% rename from src/test/compile-fail/issue-23024.rs rename to src/test/ui/issue-23024.rs diff --git a/src/test/ui/issue-23024.stderr b/src/test/ui/issue-23024.stderr new file mode 100644 index 0000000000000..39c79d8f14e8a --- /dev/null +++ b/src/test/ui/issue-23024.stderr @@ -0,0 +1,24 @@ +error[E0658]: the precise format of `Fn`-family traits' type parameters is subject to change. Use parenthetical notation (Fn(Foo, Bar) -> Baz) instead (see issue #29625) + --> $DIR/issue-23024.rs:19:35 + | +LL | println!("{:?}",(vfnfer[0] as Fn)(3)); + | ^^ + | + = help: add #![feature(unboxed_closures)] to the crate attributes to enable + +error[E0243]: wrong number of type arguments: expected 1, found 0 + --> $DIR/issue-23024.rs:19:35 + | +LL | println!("{:?}",(vfnfer[0] as Fn)(3)); + | ^^ expected 1 type argument + +error[E0191]: the value of the associated type `Output` (from the trait `std::ops::FnOnce`) must be specified + --> $DIR/issue-23024.rs:19:35 + | +LL | println!("{:?}",(vfnfer[0] as Fn)(3)); + | ^^ missing associated type `Output` value + +error: aborting due to 3 previous errors + +Some errors occurred: E0191, E0243, E0658. +For more information about an error, try `rustc --explain E0191`. diff --git a/src/test/compile-fail/issue-23046.rs b/src/test/ui/issue-23046.rs similarity index 100% rename from src/test/compile-fail/issue-23046.rs rename to src/test/ui/issue-23046.rs diff --git a/src/test/ui/issue-23046.stderr b/src/test/ui/issue-23046.stderr new file mode 100644 index 0000000000000..3e5b4ec91d782 --- /dev/null +++ b/src/test/ui/issue-23046.stderr @@ -0,0 +1,9 @@ +error[E0282]: type annotations needed + --> $DIR/issue-23046.rs:27:15 + | +LL | let ex = |x| { //~ ERROR type annotations needed + | ^ consider giving this closure parameter a type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-23073.rs b/src/test/ui/issue-23073.rs similarity index 100% rename from src/test/compile-fail/issue-23073.rs rename to src/test/ui/issue-23073.rs diff --git a/src/test/ui/issue-23073.stderr b/src/test/ui/issue-23073.stderr new file mode 100644 index 0000000000000..44b2128af0aa1 --- /dev/null +++ b/src/test/ui/issue-23073.stderr @@ -0,0 +1,11 @@ +error[E0223]: ambiguous associated type + --> $DIR/issue-23073.rs:16:17 + | +LL | type FooT = <::Foo>::T; //~ ERROR ambiguous associated type + | ^^^^^^^^^^^^^^^^^^^^^^^ ambiguous associated type + | + = note: specify the type using the syntax `<::Foo as Trait>::T` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0223`. diff --git a/src/test/compile-fail/issue-23080-2.rs b/src/test/ui/issue-23080-2.rs similarity index 100% rename from src/test/compile-fail/issue-23080-2.rs rename to src/test/ui/issue-23080-2.rs diff --git a/src/test/ui/issue-23080-2.stderr b/src/test/ui/issue-23080-2.stderr new file mode 100644 index 0000000000000..dda7fbd69cf41 --- /dev/null +++ b/src/test/ui/issue-23080-2.stderr @@ -0,0 +1,18 @@ +error[E0380]: auto traits cannot have methods or associated items + --> $DIR/issue-23080-2.rs:17:1 + | +LL | / unsafe auto trait Trait { +LL | | //~^ ERROR E0380 +LL | | type Output; +LL | | } + | |_^ + +error[E0275]: overflow evaluating the requirement `<() as Trait>::Output` + | + = note: required because of the requirements on the impl of `Trait` for `()` + = note: required because of the requirements on the impl of `Trait` for `()` + +error: aborting due to 2 previous errors + +Some errors occurred: E0275, E0380. +For more information about an error, try `rustc --explain E0275`. diff --git a/src/test/compile-fail/issue-23080.rs b/src/test/ui/issue-23080.rs similarity index 100% rename from src/test/compile-fail/issue-23080.rs rename to src/test/ui/issue-23080.rs diff --git a/src/test/ui/issue-23080.stderr b/src/test/ui/issue-23080.stderr new file mode 100644 index 0000000000000..43e6f29603385 --- /dev/null +++ b/src/test/ui/issue-23080.stderr @@ -0,0 +1,14 @@ +error[E0380]: auto traits cannot have methods or associated items + --> $DIR/issue-23080.rs:15:1 + | +LL | / unsafe auto trait Trait { +LL | | //~^ ERROR E0380 +LL | | fn method(&self) { +LL | | println!("Hello"); +LL | | } +LL | | } + | |_^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0380`. diff --git a/src/test/compile-fail/issue-23122-1.rs b/src/test/ui/issue-23122-1.rs similarity index 100% rename from src/test/compile-fail/issue-23122-1.rs rename to src/test/ui/issue-23122-1.rs diff --git a/src/test/ui/issue-23122-1.stderr b/src/test/ui/issue-23122-1.stderr new file mode 100644 index 0000000000000..a0e5386c111c1 --- /dev/null +++ b/src/test/ui/issue-23122-1.stderr @@ -0,0 +1,9 @@ +error[E0275]: overflow evaluating the requirement ` as Next>::Next` + --> $DIR/issue-23122-1.rs:17:15 + | +LL | impl Next for GetNext { + | ^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0275`. diff --git a/src/test/compile-fail/issue-23122-2.rs b/src/test/ui/issue-23122-2.rs similarity index 100% rename from src/test/compile-fail/issue-23122-2.rs rename to src/test/ui/issue-23122-2.rs diff --git a/src/test/ui/issue-23122-2.stderr b/src/test/ui/issue-23122-2.stderr new file mode 100644 index 0000000000000..c43f8d7782397 --- /dev/null +++ b/src/test/ui/issue-23122-2.stderr @@ -0,0 +1,11 @@ +error[E0275]: overflow evaluating the requirement `<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next as Next>::Next` + --> $DIR/issue-23122-2.rs:17:15 + | +LL | impl Next for GetNext { + | ^^^^ + | + = help: consider adding a `#![recursion_limit="128"]` attribute to your crate + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0275`. diff --git a/src/test/compile-fail/issue-23253.rs b/src/test/ui/issue-23253.rs similarity index 100% rename from src/test/compile-fail/issue-23253.rs rename to src/test/ui/issue-23253.rs diff --git a/src/test/ui/issue-23253.stderr b/src/test/ui/issue-23253.stderr new file mode 100644 index 0000000000000..f14ee510bd876 --- /dev/null +++ b/src/test/ui/issue-23253.stderr @@ -0,0 +1,9 @@ +error[E0609]: no field `a` on type `Foo` + --> $DIR/issue-23253.rs:14:14 + | +LL | Foo::Bar.a; + | ^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0609`. diff --git a/src/test/compile-fail/issue-23281.rs b/src/test/ui/issue-23281.rs similarity index 100% rename from src/test/compile-fail/issue-23281.rs rename to src/test/ui/issue-23281.rs diff --git a/src/test/ui/issue-23281.stderr b/src/test/ui/issue-23281.stderr new file mode 100644 index 0000000000000..ee5a9930df2ec --- /dev/null +++ b/src/test/ui/issue-23281.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `(dyn std::ops::Fn() + 'static)` cannot be known at compilation time + --> $DIR/issue-23281.rs:16:5 + | +LL | pub fn function(funs: Vec ()>) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `(dyn std::ops::Fn() + 'static)` + = note: to learn more, visit + = note: required by `std::vec::Vec` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-2330.rs b/src/test/ui/issue-2330.rs similarity index 100% rename from src/test/compile-fail/issue-2330.rs rename to src/test/ui/issue-2330.rs diff --git a/src/test/ui/issue-2330.stderr b/src/test/ui/issue-2330.stderr new file mode 100644 index 0000000000000..6b1d5e3b21948 --- /dev/null +++ b/src/test/ui/issue-2330.stderr @@ -0,0 +1,9 @@ +error[E0404]: expected trait, found enum `chan` + --> $DIR/issue-2330.rs:18:6 + | +LL | impl chan for isize { //~ ERROR expected trait, found enum `chan` + | ^^^^ not a trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0404`. diff --git a/src/test/compile-fail/issue-23589.rs b/src/test/ui/issue-23589.rs similarity index 100% rename from src/test/compile-fail/issue-23589.rs rename to src/test/ui/issue-23589.rs diff --git a/src/test/ui/issue-23589.stderr b/src/test/ui/issue-23589.stderr new file mode 100644 index 0000000000000..f0c07b380b457 --- /dev/null +++ b/src/test/ui/issue-23589.stderr @@ -0,0 +1,9 @@ +error[E0214]: parenthesized parameters may only be used with a trait + --> $DIR/issue-23589.rs:12:15 + | +LL | let v: Vec(&str) = vec!['1', '2']; + | ^^^^^^ only traits may use parentheses + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0214`. diff --git a/src/test/compile-fail/issue-23595-2.rs b/src/test/ui/issue-23595-2.rs similarity index 100% rename from src/test/compile-fail/issue-23595-2.rs rename to src/test/ui/issue-23595-2.rs diff --git a/src/test/ui/issue-23595-2.stderr b/src/test/ui/issue-23595-2.stderr new file mode 100644 index 0000000000000..5ddaab6abfe6c --- /dev/null +++ b/src/test/ui/issue-23595-2.stderr @@ -0,0 +1,9 @@ +error[E0220]: associated type `anything_here_kills_it` not found for `Self` + --> $DIR/issue-23595-2.rs:16:16 + | +LL | type B = C; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated type `anything_here_kills_it` not found + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0220`. diff --git a/src/test/compile-fail/issue-23966.rs b/src/test/ui/issue-23966.rs similarity index 100% rename from src/test/compile-fail/issue-23966.rs rename to src/test/ui/issue-23966.rs diff --git a/src/test/ui/issue-23966.stderr b/src/test/ui/issue-23966.stderr new file mode 100644 index 0000000000000..07d2cfbf55f10 --- /dev/null +++ b/src/test/ui/issue-23966.stderr @@ -0,0 +1,9 @@ +error[E0277]: the trait bound `(): std::ops::FnMut<(_, char)>` is not satisfied + --> $DIR/issue-23966.rs:12:16 + | +LL | "".chars().fold(|_, _| (), ()); + | ^^^^ the trait `std::ops::FnMut<(_, char)>` is not implemented for `()` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-24013.rs b/src/test/ui/issue-24013.rs similarity index 100% rename from src/test/compile-fail/issue-24013.rs rename to src/test/ui/issue-24013.rs diff --git a/src/test/ui/issue-24013.stderr b/src/test/ui/issue-24013.stderr new file mode 100644 index 0000000000000..324e705e5a1dd --- /dev/null +++ b/src/test/ui/issue-24013.stderr @@ -0,0 +1,9 @@ +error[E0282]: type annotations needed + --> $DIR/issue-24013.rs:15:20 + | +LL | unsafe {swap::<&mut _>(transmute(&a), transmute(&b))}; + | ^^^^^^ cannot infer type for `_` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-24204.rs b/src/test/ui/issue-24204.rs similarity index 100% rename from src/test/compile-fail/issue-24204.rs rename to src/test/ui/issue-24204.rs diff --git a/src/test/ui/issue-24204.stderr b/src/test/ui/issue-24204.stderr new file mode 100644 index 0000000000000..809db28403208 --- /dev/null +++ b/src/test/ui/issue-24204.stderr @@ -0,0 +1,17 @@ +error[E0271]: type mismatch resolving `<::A as MultiDispatch>::O == T` + --> $DIR/issue-24204.rs:24:1 + | +LL | fn test>(b: i32) -> T where T::A: MultiDispatch { T::new(b) } + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected associated type, found type parameter + | + = note: expected type `<::A as MultiDispatch>::O` + found type `T` +note: required by `Trait` + --> $DIR/issue-24204.rs:17:1 + | +LL | trait Trait: Sized { + | ^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0271`. diff --git a/src/test/ui/issue-24267-flow-exit.nll.stderr b/src/test/ui/issue-24267-flow-exit.nll.stderr new file mode 100644 index 0000000000000..cf3553c6b0dd6 --- /dev/null +++ b/src/test/ui/issue-24267-flow-exit.nll.stderr @@ -0,0 +1,15 @@ +error[E0381]: borrow of possibly uninitialized variable: `x` + --> $DIR/issue-24267-flow-exit.rs:22:20 + | +LL | println!("{}", x); //~ ERROR use of possibly uninitialized variable: `x` + | ^ use of possibly uninitialized `x` + +error[E0381]: borrow of possibly uninitialized variable: `x` + --> $DIR/issue-24267-flow-exit.rs:28:20 + | +LL | println!("{}", x); //~ ERROR use of possibly uninitialized variable: `x` + | ^ use of possibly uninitialized `x` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0381`. diff --git a/src/test/compile-fail/issue-24267-flow-exit.rs b/src/test/ui/issue-24267-flow-exit.rs similarity index 100% rename from src/test/compile-fail/issue-24267-flow-exit.rs rename to src/test/ui/issue-24267-flow-exit.rs diff --git a/src/test/ui/issue-24267-flow-exit.stderr b/src/test/ui/issue-24267-flow-exit.stderr new file mode 100644 index 0000000000000..7d1d5ac7df65e --- /dev/null +++ b/src/test/ui/issue-24267-flow-exit.stderr @@ -0,0 +1,15 @@ +error[E0381]: use of possibly uninitialized variable: `x` + --> $DIR/issue-24267-flow-exit.rs:22:20 + | +LL | println!("{}", x); //~ ERROR use of possibly uninitialized variable: `x` + | ^ use of possibly uninitialized `x` + +error[E0381]: use of possibly uninitialized variable: `x` + --> $DIR/issue-24267-flow-exit.rs:28:20 + | +LL | println!("{}", x); //~ ERROR use of possibly uninitialized variable: `x` + | ^ use of possibly uninitialized `x` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0381`. diff --git a/src/test/compile-fail/issue-24322.rs b/src/test/ui/issue-24322.rs similarity index 100% rename from src/test/compile-fail/issue-24322.rs rename to src/test/ui/issue-24322.rs diff --git a/src/test/ui/issue-24322.stderr b/src/test/ui/issue-24322.stderr new file mode 100644 index 0000000000000..d2cad8d34646e --- /dev/null +++ b/src/test/ui/issue-24322.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-24322.rs:18:29 + | +LL | let x: &fn(&B) -> u32 = &B::func; //~ ERROR mismatched types + | ^^^^^^^^ expected fn pointer, found fn item + | + = note: expected type `&for<'r> fn(&'r B) -> u32` + found type `&for<'r> fn(&'r B) -> u32 {B::func}` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-24352.rs b/src/test/ui/issue-24352.rs similarity index 100% rename from src/test/compile-fail/issue-24352.rs rename to src/test/ui/issue-24352.rs diff --git a/src/test/ui/issue-24352.stderr b/src/test/ui/issue-24352.stderr new file mode 100644 index 0000000000000..8a4169055e7d7 --- /dev/null +++ b/src/test/ui/issue-24352.stderr @@ -0,0 +1,11 @@ +error[E0277]: cannot subtract `{integer}` from `f64` + --> $DIR/issue-24352.rs:13:12 + | +LL | 1.0f64 - 1 //~ ERROR E0277 + | ^ no implementation for `f64 - {integer}` + | + = help: the trait `std::ops::Sub<{integer}>` is not implemented for `f64` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/ui/issue-24357.nll.stderr b/src/test/ui/issue-24357.nll.stderr new file mode 100644 index 0000000000000..f601a6fbc8850 --- /dev/null +++ b/src/test/ui/issue-24357.nll.stderr @@ -0,0 +1,14 @@ +error[E0382]: use of moved value: `x` + --> $DIR/issue-24357.rs:16:12 + | +LL | let f = move || { let y = x; }; + | ---------------------- value moved here +LL | //~^ NOTE value moved (into closure) here +LL | let z = x; + | ^ value used here after move + | + = note: move occurs because `x` has type `NoCopy`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-24357.rs b/src/test/ui/issue-24357.rs similarity index 100% rename from src/test/compile-fail/issue-24357.rs rename to src/test/ui/issue-24357.rs diff --git a/src/test/ui/issue-24357.stderr b/src/test/ui/issue-24357.stderr new file mode 100644 index 0000000000000..be531ec85676c --- /dev/null +++ b/src/test/ui/issue-24357.stderr @@ -0,0 +1,14 @@ +error[E0382]: use of moved value: `x` + --> $DIR/issue-24357.rs:16:8 + | +LL | let f = move || { let y = x; }; + | ------- value moved (into closure) here +LL | //~^ NOTE value moved (into closure) here +LL | let z = x; + | ^ value used here after move + | + = note: move occurs because `x` has type `NoCopy`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-24363.rs b/src/test/ui/issue-24363.rs similarity index 100% rename from src/test/compile-fail/issue-24363.rs rename to src/test/ui/issue-24363.rs diff --git a/src/test/ui/issue-24363.stderr b/src/test/ui/issue-24363.stderr new file mode 100644 index 0000000000000..2695d6acea840 --- /dev/null +++ b/src/test/ui/issue-24363.stderr @@ -0,0 +1,18 @@ +error[E0610]: `{integer}` is a primitive type and therefore doesn't have fields + --> $DIR/issue-24363.rs:12:7 + | +LL | 1.create_a_type_error[ //~ `{integer}` is a primitive type and therefore doesn't have fields + | ^^^^^^^^^^^^^^^^^^^ + +error[E0369]: binary operation `+` cannot be applied to type `()` + --> $DIR/issue-24363.rs:13:9 + | +LL | ()+() //~ ERROR binary operation `+` cannot be applied + | ^^^^^ + | + = note: an implementation of `std::ops::Add` might be missing for `()` + +error: aborting due to 2 previous errors + +Some errors occurred: E0369, E0610. +For more information about an error, try `rustc --explain E0369`. diff --git a/src/test/compile-fail/issue-24365.rs b/src/test/ui/issue-24365.rs similarity index 100% rename from src/test/compile-fail/issue-24365.rs rename to src/test/ui/issue-24365.rs diff --git a/src/test/ui/issue-24365.stderr b/src/test/ui/issue-24365.stderr new file mode 100644 index 0000000000000..0ad4674ca8677 --- /dev/null +++ b/src/test/ui/issue-24365.stderr @@ -0,0 +1,21 @@ +error[E0609]: no field `b` on type `Foo` + --> $DIR/issue-24365.rs:20:22 + | +LL | println!("{}", a.b); //~ no field `b` on type `Foo` + | ^ + +error[E0609]: no field `attr_name_idx` on type `&Attribute` + --> $DIR/issue-24365.rs:27:18 + | +LL | let z = (&x).attr_name_idx; //~ no field `attr_name_idx` on type `&Attribute` + | ^^^^^^^^^^^^^ + +error[E0609]: no field `attr_name_idx` on type `Attribute` + --> $DIR/issue-24365.rs:28:15 + | +LL | let y = x.attr_name_idx; //~ no field `attr_name_idx` on type `Attribute` + | ^^^^^^^^^^^^^ + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0609`. diff --git a/src/test/compile-fail/issue-24446.rs b/src/test/ui/issue-24446.rs similarity index 100% rename from src/test/compile-fail/issue-24446.rs rename to src/test/ui/issue-24446.rs diff --git a/src/test/ui/issue-24446.stderr b/src/test/ui/issue-24446.stderr new file mode 100644 index 0000000000000..2c13dd36558be --- /dev/null +++ b/src/test/ui/issue-24446.stderr @@ -0,0 +1,33 @@ +error[E0308]: mismatched types + --> $DIR/issue-24446.rs:12:31 + | +LL | static foo: Fn() -> u32 = || -> u32 { + | _______________________________^ +LL | | //~^ ERROR mismatched types +LL | | //~| ERROR the size for values of type +LL | | 0 +LL | | }; + | |_____^ expected trait std::ops::Fn, found closure + | + = note: expected type `(dyn std::ops::Fn() -> u32 + 'static)` + found type `[closure@$DIR/issue-24446.rs:12:31: 16:6]` + +error[E0277]: the size for values of type `(dyn std::ops::Fn() -> u32 + 'static)` cannot be known at compilation time + --> $DIR/issue-24446.rs:12:31 + | +LL | static foo: Fn() -> u32 = || -> u32 { + | _______________________________^ +LL | | //~^ ERROR mismatched types +LL | | //~| ERROR the size for values of type +LL | | 0 +LL | | }; + | |_____^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `(dyn std::ops::Fn() -> u32 + 'static)` + = note: to learn more, visit + = note: constant expressions must have a statically known size + +error: aborting due to 2 previous errors + +Some errors occurred: E0277, E0308. +For more information about an error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-24682.rs b/src/test/ui/issue-24682.rs similarity index 100% rename from src/test/compile-fail/issue-24682.rs rename to src/test/ui/issue-24682.rs diff --git a/src/test/ui/issue-24682.stderr b/src/test/ui/issue-24682.stderr new file mode 100644 index 0000000000000..1e16cb72a0964 --- /dev/null +++ b/src/test/ui/issue-24682.stderr @@ -0,0 +1,22 @@ +error[E0229]: associated type bindings are not allowed here + --> $DIR/issue-24682.rs:15:11 + | +LL | / N= //~ ERROR associated type bindings are not allowed here +LL | | Self::N> { + | |_________________^ associated type not allowed here + +error[E0229]: associated type bindings are not allowed here + --> $DIR/issue-24682.rs:21:13 + | +LL | //~ ERROR associated type bindings are not allowed here + | ^^^^ associated type not allowed here + +error[E0229]: associated type bindings are not allowed here + --> $DIR/issue-24682.rs:25:13 + | +LL | u32 //~ ERROR associated type bindings are not allowed here + | ^^^^ associated type not allowed here + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0229`. diff --git a/src/test/compile-fail/issue-24819.rs b/src/test/ui/issue-24819.rs similarity index 100% rename from src/test/compile-fail/issue-24819.rs rename to src/test/ui/issue-24819.rs diff --git a/src/test/ui/issue-24819.stderr b/src/test/ui/issue-24819.stderr new file mode 100644 index 0000000000000..33034b7072bcc --- /dev/null +++ b/src/test/ui/issue-24819.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-24819.rs:15:9 + | +LL | foo(&mut v); + | ^^^^^^ expected struct `std::collections::HashSet`, found struct `std::vec::Vec` + | + = note: expected type `&mut std::collections::HashSet` + found type `&mut std::vec::Vec<_>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-24883.rs b/src/test/ui/issue-24883.rs similarity index 100% rename from src/test/compile-fail/issue-24883.rs rename to src/test/ui/issue-24883.rs diff --git a/src/test/ui/issue-24883.stderr b/src/test/ui/issue-24883.stderr new file mode 100644 index 0000000000000..4b17747f10908 --- /dev/null +++ b/src/test/ui/issue-24883.stderr @@ -0,0 +1,11 @@ +error: compilation successful + --> $DIR/issue-24883.rs:25:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let _ = a::c::Bar(a::b::Foo); +LL | | let _ = a::Bar(a::b::Foo); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-25076.rs b/src/test/ui/issue-25076.rs similarity index 100% rename from src/test/compile-fail/issue-25076.rs rename to src/test/ui/issue-25076.rs diff --git a/src/test/ui/issue-25076.stderr b/src/test/ui/issue-25076.stderr new file mode 100644 index 0000000000000..13ee70fdd9b7a --- /dev/null +++ b/src/test/ui/issue-25076.stderr @@ -0,0 +1,15 @@ +error[E0277]: the trait bound `(): InOut<_>` is not satisfied + --> $DIR/issue-25076.rs:20:5 + | +LL | do_fold(bot(), ()); //~ ERROR `(): InOut<_>` is not satisfied + | ^^^^^^^ the trait `InOut<_>` is not implemented for `()` + | +note: required by `do_fold` + --> $DIR/issue-25076.rs:15:1 + | +LL | fn do_fold>(init: B, f: F) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-25368.rs b/src/test/ui/issue-25368.rs similarity index 100% rename from src/test/compile-fail/issue-25368.rs rename to src/test/ui/issue-25368.rs diff --git a/src/test/ui/issue-25368.stderr b/src/test/ui/issue-25368.stderr new file mode 100644 index 0000000000000..56cbef7b89c41 --- /dev/null +++ b/src/test/ui/issue-25368.stderr @@ -0,0 +1,12 @@ +error[E0282]: type annotations needed + --> $DIR/issue-25368.rs:21:17 + | +LL | let (tx, rx) = channel(); + | -------- consider giving the pattern a type +... +LL | tx.send(Foo{ foo: PhantomData }); //~ ERROR E0282 + | ^^^ cannot infer type for `T` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-25386.rs b/src/test/ui/issue-25386.rs similarity index 100% rename from src/test/compile-fail/issue-25386.rs rename to src/test/ui/issue-25386.rs diff --git a/src/test/ui/issue-25386.stderr b/src/test/ui/issue-25386.stderr new file mode 100644 index 0000000000000..986961d36c9e5 --- /dev/null +++ b/src/test/ui/issue-25386.stderr @@ -0,0 +1,21 @@ +error[E0616]: field `c_object` of struct `stuff::Item` is private + --> $DIR/issue-25386.rs:29:11 + | +LL | (*$var.c_object).$member.is_some() + | ^^^^^^^^^^^^^ +... +LL | println!("{}", check_ptr_exist!(item, name)); + | ---------------------------- in this macro invocation + +error[E0616]: field `name` of struct `stuff::CObj` is private + --> $DIR/issue-25386.rs:29:9 + | +LL | (*$var.c_object).$member.is_some() + | ^^^^^^^^^^^^^^^^^^^^^^^^ +... +LL | println!("{}", check_ptr_exist!(item, name)); + | ---------------------------- in this macro invocation + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0616`. diff --git a/src/test/compile-fail/issue-25396.rs b/src/test/ui/issue-25396.rs similarity index 100% rename from src/test/compile-fail/issue-25396.rs rename to src/test/ui/issue-25396.rs diff --git a/src/test/ui/issue-25396.stderr b/src/test/ui/issue-25396.stderr new file mode 100644 index 0000000000000..1946f39167238 --- /dev/null +++ b/src/test/ui/issue-25396.stderr @@ -0,0 +1,59 @@ +error[E0252]: the name `baz` is defined multiple times + --> $DIR/issue-25396.rs:12:5 + | +LL | use foo::baz; + | -------- previous import of the module `baz` here +LL | use bar::baz; //~ ERROR the name `baz` is defined multiple times + | ^^^^^^^^ `baz` reimported here + | + = note: `baz` must be defined only once in the type namespace of this module +help: You can use `as` to change the binding name of the import + | +LL | use bar::baz as other_baz; //~ ERROR the name `baz` is defined multiple times + | ^^^^^^^^^^^^^^^^^^^^^ + +error[E0252]: the name `Quux` is defined multiple times + --> $DIR/issue-25396.rs:15:5 + | +LL | use foo::Quux; + | --------- previous import of the trait `Quux` here +LL | use bar::Quux; //~ ERROR the name `Quux` is defined multiple times + | ^^^^^^^^^ `Quux` reimported here + | + = note: `Quux` must be defined only once in the type namespace of this module +help: You can use `as` to change the binding name of the import + | +LL | use bar::Quux as OtherQuux; //~ ERROR the name `Quux` is defined multiple times + | ^^^^^^^^^^^^^^^^^^^^^^ + +error[E0252]: the name `blah` is defined multiple times + --> $DIR/issue-25396.rs:18:5 + | +LL | use foo::blah; + | --------- previous import of the type `blah` here +LL | use bar::blah; //~ ERROR the name `blah` is defined multiple times + | ^^^^^^^^^ `blah` reimported here + | + = note: `blah` must be defined only once in the type namespace of this module +help: You can use `as` to change the binding name of the import + | +LL | use bar::blah as other_blah; //~ ERROR the name `blah` is defined multiple times + | ^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0252]: the name `WOMP` is defined multiple times + --> $DIR/issue-25396.rs:21:5 + | +LL | use foo::WOMP; + | --------- previous import of the value `WOMP` here +LL | use bar::WOMP; //~ ERROR the name `WOMP` is defined multiple times + | ^^^^^^^^^ `WOMP` reimported here + | + = note: `WOMP` must be defined only once in the value namespace of this module +help: You can use `as` to change the binding name of the import + | +LL | use bar::WOMP as OtherWOMP; //~ ERROR the name `WOMP` is defined multiple times + | ^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0252`. diff --git a/src/test/compile-fail/issue-25439.rs b/src/test/ui/issue-25439.rs similarity index 100% rename from src/test/compile-fail/issue-25439.rs rename to src/test/ui/issue-25439.rs diff --git a/src/test/ui/issue-25439.stderr b/src/test/ui/issue-25439.stderr new file mode 100644 index 0000000000000..467bb1ad28e04 --- /dev/null +++ b/src/test/ui/issue-25439.stderr @@ -0,0 +1,13 @@ +error[E0644]: closure/generator type that references itself + --> $DIR/issue-25439.rs:18:9 + | +LL | fix(|_, x| x); //~ ERROR closure/generator type that references itself [E0644] + | ^^^^^^^^ cyclic type of infinite size + | + = note: closures cannot capture themselves or take themselves as argument; + this error may be the result of a recent compiler bug-fix, + see https://github.com/rust-lang/rust/issues/46062 for more details + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0644`. diff --git a/src/test/ui/issue-25579.ast.nll.stderr b/src/test/ui/issue-25579.ast.nll.stderr new file mode 100644 index 0000000000000..9f698e4d5826a --- /dev/null +++ b/src/test/ui/issue-25579.ast.nll.stderr @@ -0,0 +1,9 @@ +error: compilation successful + --> $DIR/issue-25579.rs:31:1 + | +LL | / fn main() { //[mir]~ ERROR compilation successful +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/ui/issue-25579.ast.stderr b/src/test/ui/issue-25579.ast.stderr new file mode 100644 index 0000000000000..49b483d750314 --- /dev/null +++ b/src/test/ui/issue-25579.ast.stderr @@ -0,0 +1,21 @@ +error[E0499]: cannot borrow `l.0` as mutable more than once at a time + --> $DIR/issue-25579.rs:24:32 + | +LL | &mut Sexpression::Cons(ref mut expr) => { //[ast]~ ERROR [E0499] + | ^^^^^^^^^^^^ mutable borrow starts here in previous iteration of loop +... +LL | } + | - mutable borrow ends here + +error[E0506]: cannot assign to `l` because it is borrowed + --> $DIR/issue-25579.rs:25:13 + | +LL | &mut Sexpression::Cons(ref mut expr) => { //[ast]~ ERROR [E0499] + | ------------ borrow of `l` occurs here +LL | l = &mut **expr; //[ast]~ ERROR [E0506] + | ^^^^^^^^^^^^^^^ assignment to borrowed `l` occurs here + +error: aborting due to 2 previous errors + +Some errors occurred: E0499, E0506. +For more information about an error, try `rustc --explain E0499`. diff --git a/src/test/ui/issue-25579.mir.stderr b/src/test/ui/issue-25579.mir.stderr new file mode 100644 index 0000000000000..9f698e4d5826a --- /dev/null +++ b/src/test/ui/issue-25579.mir.stderr @@ -0,0 +1,9 @@ +error: compilation successful + --> $DIR/issue-25579.rs:31:1 + | +LL | / fn main() { //[mir]~ ERROR compilation successful +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-25579.rs b/src/test/ui/issue-25579.rs similarity index 100% rename from src/test/compile-fail/issue-25579.rs rename to src/test/ui/issue-25579.rs diff --git a/src/test/compile-fail/issue-25700.rs b/src/test/ui/issue-25700.rs similarity index 100% rename from src/test/compile-fail/issue-25700.rs rename to src/test/ui/issue-25700.rs diff --git a/src/test/ui/issue-25700.stderr b/src/test/ui/issue-25700.stderr new file mode 100644 index 0000000000000..786620ab75074 --- /dev/null +++ b/src/test/ui/issue-25700.stderr @@ -0,0 +1,13 @@ +error[E0382]: use of moved value: `t` + --> $DIR/issue-25700.rs:23:10 + | +LL | drop(t); + | - value moved here +LL | drop(t); //~ ERROR use of moved value + | ^ value used here after move + | + = note: move occurs because `t` has type `S<()>`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/ui/issue-2590.nll.stderr b/src/test/ui/issue-2590.nll.stderr new file mode 100644 index 0000000000000..fa2df26498a06 --- /dev/null +++ b/src/test/ui/issue-2590.nll.stderr @@ -0,0 +1,9 @@ +error[E0507]: cannot move out of borrowed content + --> $DIR/issue-2590.rs:22:9 + | +LL | self.tokens //~ ERROR cannot move out of borrowed content + | ^^^^^^^^^^^ cannot move out of borrowed content + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0507`. diff --git a/src/test/compile-fail/issue-2590.rs b/src/test/ui/issue-2590.rs similarity index 100% rename from src/test/compile-fail/issue-2590.rs rename to src/test/ui/issue-2590.rs diff --git a/src/test/ui/issue-2590.stderr b/src/test/ui/issue-2590.stderr new file mode 100644 index 0000000000000..59ec66d42cd5d --- /dev/null +++ b/src/test/ui/issue-2590.stderr @@ -0,0 +1,9 @@ +error[E0507]: cannot move out of borrowed content + --> $DIR/issue-2590.rs:22:9 + | +LL | self.tokens //~ ERROR cannot move out of borrowed content + | ^^^^ cannot move out of borrowed content + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0507`. diff --git a/src/test/compile-fail/issue-25901.rs b/src/test/ui/issue-25901.rs similarity index 100% rename from src/test/compile-fail/issue-25901.rs rename to src/test/ui/issue-25901.rs diff --git a/src/test/ui/issue-25901.stderr b/src/test/ui/issue-25901.stderr new file mode 100644 index 0000000000000..8c20df5a230bb --- /dev/null +++ b/src/test/ui/issue-25901.stderr @@ -0,0 +1,9 @@ +error[E0015]: calls in statics are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-25901.rs:14:24 + | +LL | static S: &'static B = &A; + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0015`. diff --git a/src/test/compile-fail/issue-26094.rs b/src/test/ui/issue-26094.rs similarity index 100% rename from src/test/compile-fail/issue-26094.rs rename to src/test/ui/issue-26094.rs diff --git a/src/test/ui/issue-26094.stderr b/src/test/ui/issue-26094.stderr new file mode 100644 index 0000000000000..bf902e16c0c35 --- /dev/null +++ b/src/test/ui/issue-26094.stderr @@ -0,0 +1,15 @@ +error[E0061]: this function takes 0 parameters but 1 parameter was supplied + --> $DIR/issue-26094.rs:13:9 + | +LL | $other(None) + | ^^^^^^^^^^^^ expected 0 parameters +... +LL | fn some_function() {} + | ------------------ defined here +... +LL | some_macro!(some_function); + | --------------------------- in this macro invocation + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0061`. diff --git a/src/test/compile-fail/issue-26158.rs b/src/test/ui/issue-26158.rs similarity index 100% rename from src/test/compile-fail/issue-26158.rs rename to src/test/ui/issue-26158.rs diff --git a/src/test/ui/issue-26158.stderr b/src/test/ui/issue-26158.stderr new file mode 100644 index 0000000000000..07b968c8e780a --- /dev/null +++ b/src/test/ui/issue-26158.stderr @@ -0,0 +1,9 @@ +error[E0005]: refutable pattern in local binding: `&[]` not covered + --> $DIR/issue-26158.rs:15:9 + | +LL | let &[[ref _a, ref _b..]..] = x; //~ ERROR refutable pattern + | ^^^^^^^^^^^^^^^^^^^^^^^ pattern `&[]` not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0005`. diff --git a/src/test/ui/issue-26217.nll.stderr b/src/test/ui/issue-26217.nll.stderr new file mode 100644 index 0000000000000..94e3692d53db5 --- /dev/null +++ b/src/test/ui/issue-26217.nll.stderr @@ -0,0 +1,15 @@ +warning: not reporting region error due to nll + --> $DIR/issue-26217.rs:14:5 + | +LL | foo::<&'a i32>(); + | ^^^^^^^^^^^^^^ + +error[E0131]: `main` function is not allowed to have generic parameters + --> $DIR/issue-26217.rs:13:8 + | +LL | fn main<'a>() { + | ^^^^ `main` cannot have generic parameters + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0131`. diff --git a/src/test/compile-fail/issue-26217.rs b/src/test/ui/issue-26217.rs similarity index 100% rename from src/test/compile-fail/issue-26217.rs rename to src/test/ui/issue-26217.rs diff --git a/src/test/ui/issue-26217.stderr b/src/test/ui/issue-26217.stderr new file mode 100644 index 0000000000000..f581826440e2c --- /dev/null +++ b/src/test/ui/issue-26217.stderr @@ -0,0 +1,11 @@ +error[E0477]: the type `&'a i32` does not fulfill the required lifetime + --> $DIR/issue-26217.rs:14:5 + | +LL | foo::<&'a i32>(); + | ^^^^^^^^^^^^^^ + | + = note: type must satisfy the static lifetime + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0477`. diff --git a/src/test/compile-fail/issue-26237.rs b/src/test/ui/issue-26237.rs similarity index 100% rename from src/test/compile-fail/issue-26237.rs rename to src/test/ui/issue-26237.rs diff --git a/src/test/ui/issue-26237.stderr b/src/test/ui/issue-26237.stderr new file mode 100644 index 0000000000000..ae6fda8b93248 --- /dev/null +++ b/src/test/ui/issue-26237.stderr @@ -0,0 +1,15 @@ +error[E0618]: expected function, found `{integer}` + --> $DIR/issue-26237.rs:13:9 + | +LL | $not_a_function($some_argument) + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a function +... +LL | let mut value_a = 0; + | ----------- `{integer}` defined here +LL | let mut value_b = 0; +LL | macro_panic!(value_a, value_b); + | ------------------------------- in this macro invocation + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0618`. diff --git a/src/test/compile-fail/issue-26262.rs b/src/test/ui/issue-26262.rs similarity index 100% rename from src/test/compile-fail/issue-26262.rs rename to src/test/ui/issue-26262.rs diff --git a/src/test/ui/issue-26262.stderr b/src/test/ui/issue-26262.stderr new file mode 100644 index 0000000000000..2e0a211d06194 --- /dev/null +++ b/src/test/ui/issue-26262.stderr @@ -0,0 +1,15 @@ +error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates + --> $DIR/issue-26262.rs:17:6 + | +LL | impl S { + | ^ unconstrained type parameter + +error[E0207]: the lifetime parameter `'a` is not constrained by the impl trait, self type, or predicates + --> $DIR/issue-26262.rs:27:6 + | +LL | impl<'a,T: Trait2<'a>> Trait1<>::Foo> for T { + | ^^ unconstrained lifetime parameter + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0207`. diff --git a/src/test/compile-fail/issue-26459.rs b/src/test/ui/issue-26459.rs similarity index 100% rename from src/test/compile-fail/issue-26459.rs rename to src/test/ui/issue-26459.rs diff --git a/src/test/ui/issue-26459.stderr b/src/test/ui/issue-26459.stderr new file mode 100644 index 0000000000000..d497c1c920964 --- /dev/null +++ b/src/test/ui/issue-26459.stderr @@ -0,0 +1,9 @@ +error[E0574]: expected struct, variant or union type, found builtin type `char` + --> $DIR/issue-26459.rs:13:9 + | +LL | char{ch} => true + | ^^^^ not a struct, variant or union type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0574`. diff --git a/src/test/compile-fail/issue-26614.rs b/src/test/ui/issue-26614.rs similarity index 100% rename from src/test/compile-fail/issue-26614.rs rename to src/test/ui/issue-26614.rs diff --git a/src/test/ui/issue-26614.stderr b/src/test/ui/issue-26614.stderr new file mode 100644 index 0000000000000..1752d80fde367 --- /dev/null +++ b/src/test/ui/issue-26614.stderr @@ -0,0 +1,11 @@ +error: compilation successful + --> $DIR/issue-26614.rs:24:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let c: ::It = 5; +LL | | const CCCC: ::It = 5; +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-26812.rs b/src/test/ui/issue-26812.rs similarity index 100% rename from src/test/compile-fail/issue-26812.rs rename to src/test/ui/issue-26812.rs diff --git a/src/test/ui/issue-26812.stderr b/src/test/ui/issue-26812.stderr new file mode 100644 index 0000000000000..82cc17b7665e1 --- /dev/null +++ b/src/test/ui/issue-26812.stderr @@ -0,0 +1,9 @@ +error[E0128]: type parameters with a default cannot use forward declared identifiers + --> $DIR/issue-26812.rs:13:10 + | +LL | fn avg(_: T) {} + | ^^^^^^^ defaulted type parameters cannot be forward declared + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0128`. diff --git a/src/test/compile-fail/issue-26905.rs b/src/test/ui/issue-26905.rs similarity index 100% rename from src/test/compile-fail/issue-26905.rs rename to src/test/ui/issue-26905.rs diff --git a/src/test/ui/issue-26905.stderr b/src/test/ui/issue-26905.stderr new file mode 100644 index 0000000000000..f18b58a8330e0 --- /dev/null +++ b/src/test/ui/issue-26905.stderr @@ -0,0 +1,12 @@ +error[E0375]: implementing the trait `CoerceUnsized` requires multiple coercions + --> $DIR/issue-26905.rs:26:40 + | +LL | impl, U: ?Sized> CoerceUnsized> for MyRc{ } //~ERROR + | ^^^^^^^^^^^^^^^^^^^^^^ requires multiple coercions + | + = note: `CoerceUnsized` may only be implemented for a coercion between structures with one field being coerced + = note: currently, 2 fields need coercions: _ptr (*const T to *const U), _boo (NotPhantomData to NotPhantomData) + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0375`. diff --git a/src/test/compile-fail/issue-26930.rs b/src/test/ui/issue-26930.rs similarity index 100% rename from src/test/compile-fail/issue-26930.rs rename to src/test/ui/issue-26930.rs diff --git a/src/test/ui/issue-26930.stderr b/src/test/ui/issue-26930.stderr new file mode 100644 index 0000000000000..f962f4c58c444 --- /dev/null +++ b/src/test/ui/issue-26930.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-26930.rs:20:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-26948.rs b/src/test/ui/issue-26948.rs similarity index 100% rename from src/test/compile-fail/issue-26948.rs rename to src/test/ui/issue-26948.rs diff --git a/src/test/ui/issue-26948.stderr b/src/test/ui/issue-26948.stderr new file mode 100644 index 0000000000000..982ce1d6c7be6 --- /dev/null +++ b/src/test/ui/issue-26948.stderr @@ -0,0 +1,9 @@ +error[E0436]: functional record update syntax requires a struct + --> $DIR/issue-26948.rs:14:22 + | +LL | Foo::A { x: 6, ..orig }; + | ^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0436`. diff --git a/src/test/compile-fail/issue-27008.rs b/src/test/ui/issue-27008.rs similarity index 100% rename from src/test/compile-fail/issue-27008.rs rename to src/test/ui/issue-27008.rs diff --git a/src/test/ui/issue-27008.stderr b/src/test/ui/issue-27008.stderr new file mode 100644 index 0000000000000..7983146366446 --- /dev/null +++ b/src/test/ui/issue-27008.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-27008.rs:14:17 + | +LL | let b = [0; S]; + | ^ expected usize, found struct `S` + | + = note: expected type `usize` + found type `S` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-27033.rs b/src/test/ui/issue-27033.rs similarity index 100% rename from src/test/compile-fail/issue-27033.rs rename to src/test/ui/issue-27033.rs diff --git a/src/test/ui/issue-27033.stderr b/src/test/ui/issue-27033.stderr new file mode 100644 index 0000000000000..ba573c3eb6db8 --- /dev/null +++ b/src/test/ui/issue-27033.stderr @@ -0,0 +1,18 @@ +error[E0530]: match bindings cannot shadow unit variants + --> $DIR/issue-27033.rs:13:9 + | +LL | None @ _ => {} //~ ERROR match bindings cannot shadow unit variants + | ^^^^ cannot be named the same as a unit variant + +error[E0530]: match bindings cannot shadow constants + --> $DIR/issue-27033.rs:17:9 + | +LL | const C: u8 = 1; + | ---------------- a constant `C` is defined here +LL | match 1 { +LL | C @ 2 => { //~ ERROR match bindings cannot shadow constant + | ^ cannot be named the same as a constant + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0530`. diff --git a/src/test/compile-fail/issue-27042.rs b/src/test/ui/issue-27042.rs similarity index 100% rename from src/test/compile-fail/issue-27042.rs rename to src/test/ui/issue-27042.rs diff --git a/src/test/ui/issue-27042.stderr b/src/test/ui/issue-27042.stderr new file mode 100644 index 0000000000000..4811344558262 --- /dev/null +++ b/src/test/ui/issue-27042.stderr @@ -0,0 +1,42 @@ +error[E0308]: mismatched types + --> $DIR/issue-27042.rs:16:16 + | +LL | loop { break }; //~ ERROR mismatched types + | ^^^^^ expected (), found i32 + | + = note: expected type `()` + found type `i32` + +error[E0308]: mismatched types + --> $DIR/issue-27042.rs:18:9 + | +LL | / 'b: //~ ERROR mismatched types +LL | | while true { break }; // but here we cite the whole loop + | |____________________________^ expected i32, found () + | + = note: expected type `i32` + found type `()` + +error[E0308]: mismatched types + --> $DIR/issue-27042.rs:21:9 + | +LL | / 'c: //~ ERROR mismatched types +LL | | for _ in None { break }; // but here we cite the whole loop + | |_______________________________^ expected i32, found () + | + = note: expected type `i32` + found type `()` + +error[E0308]: mismatched types + --> $DIR/issue-27042.rs:24:9 + | +LL | / 'd: //~ ERROR mismatched types +LL | | while let Some(_) = None { break }; + | |__________________________________________^ expected i32, found () + | + = note: expected type `i32` + found type `()` + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-27060-2.rs b/src/test/ui/issue-27060-2.rs similarity index 100% rename from src/test/compile-fail/issue-27060-2.rs rename to src/test/ui/issue-27060-2.rs diff --git a/src/test/ui/issue-27060-2.stderr b/src/test/ui/issue-27060-2.stderr new file mode 100644 index 0000000000000..bb284138ebfe9 --- /dev/null +++ b/src/test/ui/issue-27060-2.stderr @@ -0,0 +1,14 @@ +error[E0277]: the size for values of type `T` cannot be known at compilation time + --> $DIR/issue-27060-2.rs:13:5 + | +LL | data: T, //~ ERROR the size for values of type + | ^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `T` + = note: to learn more, visit + = help: consider adding a `where T: std::marker::Sized` bound + = note: only the last field of a struct may have a dynamically sized type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-27078.rs b/src/test/ui/issue-27078.rs similarity index 100% rename from src/test/compile-fail/issue-27078.rs rename to src/test/ui/issue-27078.rs diff --git a/src/test/ui/issue-27078.stderr b/src/test/ui/issue-27078.stderr new file mode 100644 index 0000000000000..1a729c00fc174 --- /dev/null +++ b/src/test/ui/issue-27078.stderr @@ -0,0 +1,14 @@ +error[E0277]: the size for values of type `Self` cannot be known at compilation time + --> $DIR/issue-27078.rs:15:12 + | +LL | fn foo(self) -> &'static i32 { + | ^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `Self` + = note: to learn more, visit + = help: consider adding a `where Self: std::marker::Sized` bound + = note: all local variables must have a statically known size + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-2718-a.rs b/src/test/ui/issue-2718-a.rs similarity index 100% rename from src/test/compile-fail/issue-2718-a.rs rename to src/test/ui/issue-2718-a.rs diff --git a/src/test/ui/issue-2718-a.stderr b/src/test/ui/issue-2718-a.stderr new file mode 100644 index 0000000000000..a60e5d044557d --- /dev/null +++ b/src/test/ui/issue-2718-a.stderr @@ -0,0 +1,14 @@ +error[E0072]: recursive type `pingpong::pong` has infinite size + --> $DIR/issue-2718-a.rs:18:5 + | +LL | pub struct pong(send_packet); + | ^^^^^^^^^^^^^^^^-----------------^^ + | | | + | | recursive without indirection + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `pingpong::pong` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-27340.rs b/src/test/ui/issue-27340.rs similarity index 100% rename from src/test/compile-fail/issue-27340.rs rename to src/test/ui/issue-27340.rs diff --git a/src/test/ui/issue-27340.stderr b/src/test/ui/issue-27340.stderr new file mode 100644 index 0000000000000..bae47b3d2a3d4 --- /dev/null +++ b/src/test/ui/issue-27340.stderr @@ -0,0 +1,12 @@ +error[E0204]: the trait `Copy` may not be implemented for this type + --> $DIR/issue-27340.rs:12:10 + | +LL | #[derive(Copy, Clone)] + | ^^^^ +LL | //~^ ERROR the trait `Copy` may not be implemented for this type +LL | struct Bar(Foo); + | --- this field does not implement `Copy` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0204`. diff --git a/src/test/compile-fail/issue-27433.rs b/src/test/ui/issue-27433.rs similarity index 100% rename from src/test/compile-fail/issue-27433.rs rename to src/test/ui/issue-27433.rs diff --git a/src/test/ui/issue-27433.stderr b/src/test/ui/issue-27433.stderr new file mode 100644 index 0000000000000..0fc04b082e518 --- /dev/null +++ b/src/test/ui/issue-27433.stderr @@ -0,0 +1,11 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-27433.rs:13:23 + | +LL | const FOO : u32 = foo; + | ^^^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/ui/issue-27592.nll.stderr b/src/test/ui/issue-27592.nll.stderr new file mode 100644 index 0000000000000..0b55117cad2ce --- /dev/null +++ b/src/test/ui/issue-27592.nll.stderr @@ -0,0 +1,19 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-27592.rs:26:33 + | +LL | write(|| format_args!("{}", String::from("Hello world"))); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^- temporary value only lives until here + | | + | temporary value does not live long enough + +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-27592.rs:26:27 + | +LL | write(|| format_args!("{}", String::from("Hello world"))); + | ^^^^ - temporary value only lives until here + | | + | temporary value does not live long enough + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-27592.rs b/src/test/ui/issue-27592.rs similarity index 100% rename from src/test/compile-fail/issue-27592.rs rename to src/test/ui/issue-27592.rs diff --git a/src/test/ui/issue-27592.stderr b/src/test/ui/issue-27592.stderr new file mode 100644 index 0000000000000..74b0541c01b2f --- /dev/null +++ b/src/test/ui/issue-27592.stderr @@ -0,0 +1,21 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-27592.rs:26:27 + | +LL | write(|| format_args!("{}", String::from("Hello world"))); + | ^^^^ -- temporary value needs to live until here + | | | + | | temporary value dropped here while still borrowed + | temporary value does not live long enough + +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-27592.rs:26:33 + | +LL | write(|| format_args!("{}", String::from("Hello world"))); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^-- temporary value needs to live until here + | | | + | | temporary value dropped here while still borrowed + | temporary value does not live long enough + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-27815.rs b/src/test/ui/issue-27815.rs similarity index 100% rename from src/test/compile-fail/issue-27815.rs rename to src/test/ui/issue-27815.rs diff --git a/src/test/ui/issue-27815.stderr b/src/test/ui/issue-27815.stderr new file mode 100644 index 0000000000000..987feaee9eb31 --- /dev/null +++ b/src/test/ui/issue-27815.stderr @@ -0,0 +1,27 @@ +error[E0574]: expected struct, variant or union type, found module `A` + --> $DIR/issue-27815.rs:14:13 + | +LL | let u = A { x: 1 }; //~ ERROR expected struct, variant or union type, found module `A` + | ^ not a struct, variant or union type + +error[E0574]: expected struct, variant or union type, found builtin type `u32` + --> $DIR/issue-27815.rs:15:13 + | +LL | let v = u32 { x: 1 }; //~ ERROR expected struct, variant or union type, found builtin type `u32` + | ^^^ not a struct, variant or union type + +error[E0574]: expected struct, variant or union type, found module `A` + --> $DIR/issue-27815.rs:17:9 + | +LL | A { x: 1 } => {} + | ^ not a struct, variant or union type + +error[E0574]: expected struct, variant or union type, found builtin type `u32` + --> $DIR/issue-27815.rs:19:9 + | +LL | u32 { x: 1 } => {} + | ^^^ not a struct, variant or union type + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0574`. diff --git a/src/test/compile-fail/issue-27895.rs b/src/test/ui/issue-27895.rs similarity index 100% rename from src/test/compile-fail/issue-27895.rs rename to src/test/ui/issue-27895.rs diff --git a/src/test/ui/issue-27895.stderr b/src/test/ui/issue-27895.stderr new file mode 100644 index 0000000000000..395c806fbdbda --- /dev/null +++ b/src/test/ui/issue-27895.stderr @@ -0,0 +1,9 @@ +error[E0080]: runtime values cannot be referenced in patterns + --> $DIR/issue-27895.rs:16:13 + | +LL | 0..=index => println!("winner"), + | ^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0080`. diff --git a/src/test/compile-fail/issue-28098.rs b/src/test/ui/issue-28098.rs similarity index 100% rename from src/test/compile-fail/issue-28098.rs rename to src/test/ui/issue-28098.rs diff --git a/src/test/ui/issue-28098.stderr b/src/test/ui/issue-28098.stderr new file mode 100644 index 0000000000000..3a6e1aea28834 --- /dev/null +++ b/src/test/ui/issue-28098.stderr @@ -0,0 +1,57 @@ +error[E0277]: the trait bound `(): std::iter::Iterator` is not satisfied + --> $DIR/issue-28098.rs:12:13 + | +LL | let _ = Iterator::next(&mut ()); + | ^^^^^^^^^^^^^^ `()` is not an iterator; maybe try calling `.iter()` or a similar method + | + = help: the trait `std::iter::Iterator` is not implemented for `()` + = note: required by `std::iter::Iterator::next` + +error[E0277]: the trait bound `bool: std::iter::Iterator` is not satisfied + --> $DIR/issue-28098.rs:15:14 + | +LL | for _ in false {} + | ^^^^^ `bool` is not an iterator; maybe try calling `.iter()` or a similar method + | + = help: the trait `std::iter::Iterator` is not implemented for `bool` + = note: required by `std::iter::IntoIterator::into_iter` + +error[E0277]: the trait bound `(): std::iter::Iterator` is not satisfied + --> $DIR/issue-28098.rs:18:13 + | +LL | let _ = Iterator::next(&mut ()); + | ^^^^^^^^^^^^^^ `()` is not an iterator; maybe try calling `.iter()` or a similar method + | + = help: the trait `std::iter::Iterator` is not implemented for `()` + = note: required by `std::iter::Iterator::next` + +error[E0277]: the trait bound `(): std::iter::Iterator` is not satisfied + --> $DIR/issue-28098.rs:27:13 + | +LL | let _ = Iterator::next(&mut ()); + | ^^^^^^^^^^^^^^ `()` is not an iterator; maybe try calling `.iter()` or a similar method + | + = help: the trait `std::iter::Iterator` is not implemented for `()` + = note: required by `std::iter::Iterator::next` + +error[E0277]: the trait bound `(): std::iter::Iterator` is not satisfied + --> $DIR/issue-28098.rs:30:13 + | +LL | let _ = Iterator::next(&mut ()); + | ^^^^^^^^^^^^^^ `()` is not an iterator; maybe try calling `.iter()` or a similar method + | + = help: the trait `std::iter::Iterator` is not implemented for `()` + = note: required by `std::iter::Iterator::next` + +error[E0277]: the trait bound `bool: std::iter::Iterator` is not satisfied + --> $DIR/issue-28098.rs:33:14 + | +LL | for _ in false {} + | ^^^^^ `bool` is not an iterator; maybe try calling `.iter()` or a similar method + | + = help: the trait `std::iter::Iterator` is not implemented for `bool` + = note: required by `std::iter::IntoIterator::into_iter` + +error: aborting due to 6 previous errors + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-28105.rs b/src/test/ui/issue-28105.rs similarity index 100% rename from src/test/compile-fail/issue-28105.rs rename to src/test/ui/issue-28105.rs diff --git a/src/test/ui/issue-28105.stderr b/src/test/ui/issue-28105.stderr new file mode 100644 index 0000000000000..eb05dbea2be09 --- /dev/null +++ b/src/test/ui/issue-28105.stderr @@ -0,0 +1,15 @@ +error[E0268]: `continue` outside of loop + --> $DIR/issue-28105.rs:14:5 + | +LL | continue //~ ERROR `continue` outside of loop + | ^^^^^^^^ cannot break outside of a loop + +error[E0268]: `break` outside of loop + --> $DIR/issue-28105.rs:16:5 + | +LL | break //~ ERROR `break` outside of loop + | ^^^^^ cannot break outside of a loop + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0268`. diff --git a/src/test/compile-fail/issue-28109.rs b/src/test/ui/issue-28109.rs similarity index 100% rename from src/test/compile-fail/issue-28109.rs rename to src/test/ui/issue-28109.rs diff --git a/src/test/ui/issue-28109.stderr b/src/test/ui/issue-28109.stderr new file mode 100644 index 0000000000000..902fe2390b944 --- /dev/null +++ b/src/test/ui/issue-28109.stderr @@ -0,0 +1,15 @@ +error[E0426]: use of undeclared label `'b` + --> $DIR/issue-28109.rs:16:9 + | +LL | 'b //~ ERROR use of undeclared label + | ^^ undeclared label `'b` + +error[E0426]: use of undeclared label `'c` + --> $DIR/issue-28109.rs:19:9 + | +LL | 'c //~ ERROR use of undeclared label + | ^^ undeclared label `'c` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0426`. diff --git a/src/test/compile-fail/issue-28113.rs b/src/test/ui/issue-28113.rs similarity index 100% rename from src/test/compile-fail/issue-28113.rs rename to src/test/ui/issue-28113.rs diff --git a/src/test/ui/issue-28113.stderr b/src/test/ui/issue-28113.stderr new file mode 100644 index 0000000000000..633257f1a4bca --- /dev/null +++ b/src/test/ui/issue-28113.stderr @@ -0,0 +1,9 @@ +error[E0015]: calls in constants are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-28113.rs:14:5 + | +LL | || -> u8 { 5 }() + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0015`. diff --git a/src/test/compile-fail/issue-2823.rs b/src/test/ui/issue-2823.rs similarity index 100% rename from src/test/compile-fail/issue-2823.rs rename to src/test/ui/issue-2823.rs diff --git a/src/test/ui/issue-2823.stderr b/src/test/ui/issue-2823.stderr new file mode 100644 index 0000000000000..5a5cae7aab411 --- /dev/null +++ b/src/test/ui/issue-2823.stderr @@ -0,0 +1,16 @@ +error[E0599]: no method named `clone` found for type `C` in the current scope + --> $DIR/issue-2823.rs:23:16 + | +LL | struct C { + | -------- method `clone` not found for this +... +LL | let _d = c.clone(); //~ ERROR no method named `clone` found + | ^^^^^ + | + = help: items from traits can only be used if the trait is implemented and in scope + = note: the following trait defines an item `clone`, perhaps you need to implement it: + candidate #1: `std::clone::Clone` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-28324.rs b/src/test/ui/issue-28324.rs similarity index 100% rename from src/test/compile-fail/issue-28324.rs rename to src/test/ui/issue-28324.rs diff --git a/src/test/ui/issue-28324.stderr b/src/test/ui/issue-28324.stderr new file mode 100644 index 0000000000000..c62d8bddf0051 --- /dev/null +++ b/src/test/ui/issue-28324.stderr @@ -0,0 +1,9 @@ +error[E0080]: could not evaluate static initializer + --> $DIR/issue-28324.rs:17:23 + | +LL | pub static BAZ: u32 = *&error_message_count; + | ^^^^^^^^^^^^^^^^^^^^^ tried to read from foreign (extern) static + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0080`. diff --git a/src/test/compile-fail/issue-28344.rs b/src/test/ui/issue-28344.rs similarity index 100% rename from src/test/compile-fail/issue-28344.rs rename to src/test/ui/issue-28344.rs diff --git a/src/test/ui/issue-28344.stderr b/src/test/ui/issue-28344.stderr new file mode 100644 index 0000000000000..7ef2e906422ed --- /dev/null +++ b/src/test/ui/issue-28344.stderr @@ -0,0 +1,32 @@ +error[E0191]: the value of the associated type `Output` (from the trait `std::ops::BitXor`) must be specified + --> $DIR/issue-28344.rs:14:17 + | +LL | let x: u8 = BitXor::bitor(0 as u8, 0 as u8); + | ^^^^^^^^^^^^^ missing associated type `Output` value + +error[E0599]: no function or associated item named `bitor` found for type `dyn std::ops::BitXor<_>` in the current scope + --> $DIR/issue-28344.rs:14:17 + | +LL | let x: u8 = BitXor::bitor(0 as u8, 0 as u8); + | ^^^^^^^^^^^^^ function or associated item not found in `dyn std::ops::BitXor<_>` + | + = help: did you mean `bitxor`? + +error[E0191]: the value of the associated type `Output` (from the trait `std::ops::BitXor`) must be specified + --> $DIR/issue-28344.rs:18:13 + | +LL | let g = BitXor::bitor; + | ^^^^^^^^^^^^^ missing associated type `Output` value + +error[E0599]: no function or associated item named `bitor` found for type `dyn std::ops::BitXor<_>` in the current scope + --> $DIR/issue-28344.rs:18:13 + | +LL | let g = BitXor::bitor; + | ^^^^^^^^^^^^^ function or associated item not found in `dyn std::ops::BitXor<_>` + | + = help: did you mean `bitxor`? + +error: aborting due to 4 previous errors + +Some errors occurred: E0191, E0599. +For more information about an error, try `rustc --explain E0191`. diff --git a/src/test/compile-fail/issue-28433.rs b/src/test/ui/issue-28433.rs similarity index 100% rename from src/test/compile-fail/issue-28433.rs rename to src/test/ui/issue-28433.rs diff --git a/src/test/ui/issue-28433.stderr b/src/test/ui/issue-28433.stderr new file mode 100644 index 0000000000000..bde01ef374651 --- /dev/null +++ b/src/test/ui/issue-28433.stderr @@ -0,0 +1,14 @@ +error: expected identifier, found keyword `pub` + --> $DIR/issue-28433.rs:14:5 + | +LL | pub duck, + | ^^^ expected identifier, found keyword + +error: expected one of `(`, `,`, `=`, `{`, or `}`, found `duck` + --> $DIR/issue-28433.rs:14:9 + | +LL | pub duck, + | ^^^^ expected one of `(`, `,`, `=`, `{`, or `}` here + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-28472.rs b/src/test/ui/issue-28472.rs similarity index 100% rename from src/test/compile-fail/issue-28472.rs rename to src/test/ui/issue-28472.rs diff --git a/src/test/ui/issue-28472.stderr b/src/test/ui/issue-28472.stderr new file mode 100644 index 0000000000000..37c04a7a7740b --- /dev/null +++ b/src/test/ui/issue-28472.stderr @@ -0,0 +1,27 @@ +error[E0428]: the name `foo` is defined multiple times + --> $DIR/issue-28472.rs:16:3 + | +LL | fn foo(); + | --------- previous definition of the value `foo` here +LL | +LL | / pub //~ ERROR the name `foo` is defined multiple times +LL | | fn foo(); + | |___________^ `foo` redefined here + | + = 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:19:3 + | +LL | fn foo(); + | --------- previous definition of the value `foo` here +... +LL | / pub //~ ERROR the name `foo` is defined multiple times +LL | | static mut foo: u32; + | |______________________^ `foo` redefined here + | + = note: `foo` must be defined only once in the value namespace of this module + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0428`. diff --git a/src/test/compile-fail/issue-2849.rs b/src/test/ui/issue-2849.rs similarity index 100% rename from src/test/compile-fail/issue-2849.rs rename to src/test/ui/issue-2849.rs diff --git a/src/test/ui/issue-2849.stderr b/src/test/ui/issue-2849.stderr new file mode 100644 index 0000000000000..ffd15a58880c2 --- /dev/null +++ b/src/test/ui/issue-2849.stderr @@ -0,0 +1,11 @@ +error[E0408]: variable `i` is not bound in all patterns + --> $DIR/issue-2849.rs:15:7 + | +LL | foo::alpha | foo::beta(i) => {} + | ^^^^^^^^^^ - variable not in all patterns + | | + | pattern doesn't bind `i` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0408`. diff --git a/src/test/compile-fail/issue-28576.rs b/src/test/ui/issue-28576.rs similarity index 100% rename from src/test/compile-fail/issue-28576.rs rename to src/test/ui/issue-28576.rs diff --git a/src/test/ui/issue-28576.stderr b/src/test/ui/issue-28576.stderr new file mode 100644 index 0000000000000..80f0f1ba1b1aa --- /dev/null +++ b/src/test/ui/issue-28576.stderr @@ -0,0 +1,12 @@ +error[E0038]: the trait `Bar` cannot be made into an object + --> $DIR/issue-28576.rs:17:12 + | +LL | / Bar //~ ERROR the trait `Bar` cannot be made into an object +LL | | + | |________________________^ the trait `Bar` cannot be made into an object + | + = note: the trait cannot use `Self` as a type parameter in the supertraits or where-clauses + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0038`. diff --git a/src/test/compile-fail/issue-28586.rs b/src/test/ui/issue-28586.rs similarity index 100% rename from src/test/compile-fail/issue-28586.rs rename to src/test/ui/issue-28586.rs diff --git a/src/test/ui/issue-28586.stderr b/src/test/ui/issue-28586.stderr new file mode 100644 index 0000000000000..9820d64909edd --- /dev/null +++ b/src/test/ui/issue-28586.stderr @@ -0,0 +1,9 @@ +error[E0599]: no associated item named `BYTES` found for type `usize` in the current scope + --> $DIR/issue-28586.rs:14:19 + | +LL | impl Foo for [u8; usize::BYTES] {} + | ^^^^^^^^^^^^ associated item not found in `usize` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-28992-empty.rs b/src/test/ui/issue-28992-empty.rs similarity index 100% rename from src/test/compile-fail/issue-28992-empty.rs rename to src/test/ui/issue-28992-empty.rs diff --git a/src/test/ui/issue-28992-empty.stderr b/src/test/ui/issue-28992-empty.stderr new file mode 100644 index 0000000000000..9b5e42f8eb902 --- /dev/null +++ b/src/test/ui/issue-28992-empty.stderr @@ -0,0 +1,16 @@ +error[E0532]: expected tuple struct/variant, found constant `C1` + --> $DIR/issue-28992-empty.rs:23:12 + | +LL | if let C1(..) = 0 {} //~ ERROR expected tuple struct/variant, found constant `C1` + | ^^ not a tuple struct/variant + +error[E0164]: expected tuple struct/variant, found associated constant `::C2` + --> $DIR/issue-28992-empty.rs:24:12 + | +LL | if let S::C2(..) = 0 {} + | ^^^^^^^^^ not a tuple variant or struct + +error: aborting due to 2 previous errors + +Some errors occurred: E0164, E0532. +For more information about an error, try `rustc --explain E0164`. diff --git a/src/test/compile-fail/issue-29084.rs b/src/test/ui/issue-29084.rs similarity index 100% rename from src/test/compile-fail/issue-29084.rs rename to src/test/ui/issue-29084.rs diff --git a/src/test/ui/issue-29084.stderr b/src/test/ui/issue-29084.stderr new file mode 100644 index 0000000000000..3f1f18dabd061 --- /dev/null +++ b/src/test/ui/issue-29084.stderr @@ -0,0 +1,15 @@ +error[E0308]: mismatched types + --> $DIR/issue-29084.rs:14:13 + | +LL | bar(&mut $d); + | ^^^^^^^ expected u8, found &mut u8 +... +LL | foo!(0u8); + | ---------- in this macro invocation + | + = note: expected type `u8` + found type `&mut u8` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-29147.rs b/src/test/ui/issue-29147.rs similarity index 100% rename from src/test/compile-fail/issue-29147.rs rename to src/test/ui/issue-29147.rs diff --git a/src/test/ui/issue-29147.stderr b/src/test/ui/issue-29147.stderr new file mode 100644 index 0000000000000..d0ad0c99aa097 --- /dev/null +++ b/src/test/ui/issue-29147.stderr @@ -0,0 +1,15 @@ +error[E0283]: type annotations required: cannot resolve `S5<_>: Foo` + --> $DIR/issue-29147.rs:31:13 + | +LL | let _ = >::xxx; //~ ERROR cannot resolve `S5<_>: Foo` + | ^^^^^^^^^^^^ + | +note: required by `Foo::xxx` + --> $DIR/issue-29147.rs:20:13 + | +LL | trait Foo { fn xxx(&self); } + | ^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0283`. diff --git a/src/test/compile-fail/issue-29161.rs b/src/test/ui/issue-29161.rs similarity index 100% rename from src/test/compile-fail/issue-29161.rs rename to src/test/ui/issue-29161.rs diff --git a/src/test/ui/issue-29161.stderr b/src/test/ui/issue-29161.stderr new file mode 100644 index 0000000000000..fb6a41d2eca09 --- /dev/null +++ b/src/test/ui/issue-29161.stderr @@ -0,0 +1,16 @@ +error[E0449]: unnecessary visibility qualifier + --> $DIR/issue-29161.rs:15:9 + | +LL | pub fn default() -> A { //~ ERROR unnecessary visibility qualifier + | ^^^ `pub` not permitted here because it's implied + +error[E0603]: struct `A` is private + --> $DIR/issue-29161.rs:23:5 + | +LL | a::A::default(); + | ^^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + +Some errors occurred: E0449, E0603. +For more information about an error, try `rustc --explain E0449`. diff --git a/src/test/compile-fail/issue-29184.rs b/src/test/ui/issue-29184.rs similarity index 100% rename from src/test/compile-fail/issue-29184.rs rename to src/test/ui/issue-29184.rs diff --git a/src/test/ui/issue-29184.stderr b/src/test/ui/issue-29184.stderr new file mode 100644 index 0000000000000..72d7bb8d5f64b --- /dev/null +++ b/src/test/ui/issue-29184.stderr @@ -0,0 +1,9 @@ +error[E0516]: `typeof` is a reserved keyword but unimplemented + --> $DIR/issue-29184.rs:12:12 + | +LL | let x: typeof(92) = 92; //~ ERROR `typeof` is a reserved keyword + | ^^^^^^^^^^ reserved keyword + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0516`. diff --git a/src/test/compile-fail/issue-2937.rs b/src/test/ui/issue-2937.rs similarity index 100% rename from src/test/compile-fail/issue-2937.rs rename to src/test/ui/issue-2937.rs diff --git a/src/test/ui/issue-2937.stderr b/src/test/ui/issue-2937.stderr new file mode 100644 index 0000000000000..8c0125c7522d2 --- /dev/null +++ b/src/test/ui/issue-2937.stderr @@ -0,0 +1,9 @@ +error[E0432]: unresolved import `m::f` + --> $DIR/issue-2937.rs:11:5 + | +LL | use m::f as x; //~ ERROR unresolved import `m::f` [E0432] + | ^^^^^^^^^ no `f` in `m` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-2951.rs b/src/test/ui/issue-2951.rs similarity index 100% rename from src/test/compile-fail/issue-2951.rs rename to src/test/ui/issue-2951.rs diff --git a/src/test/ui/issue-2951.stderr b/src/test/ui/issue-2951.stderr new file mode 100644 index 0000000000000..8c166807c46ad --- /dev/null +++ b/src/test/ui/issue-2951.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-2951.rs:13:10 + | +LL | xx = y; + | ^ expected type parameter, found a different type parameter + | + = note: expected type `T` + found type `U` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-29857.rs b/src/test/ui/issue-29857.rs similarity index 100% rename from src/test/compile-fail/issue-29857.rs rename to src/test/ui/issue-29857.rs diff --git a/src/test/ui/issue-29857.stderr b/src/test/ui/issue-29857.stderr new file mode 100644 index 0000000000000..d5ba942b19f26 --- /dev/null +++ b/src/test/ui/issue-29857.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-29857.rs:31:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-29861.rs b/src/test/ui/issue-29861.rs similarity index 100% rename from src/test/compile-fail/issue-29861.rs rename to src/test/ui/issue-29861.rs diff --git a/src/test/ui/issue-29861.stderr b/src/test/ui/issue-29861.stderr new file mode 100644 index 0000000000000..27453337b10f1 --- /dev/null +++ b/src/test/ui/issue-29861.stderr @@ -0,0 +1,9 @@ +error[E0207]: the lifetime parameter `'a` is not constrained by the impl trait, self type, or predicates + --> $DIR/issue-29861.rs:21:6 + | +LL | impl<'a, T: 'a> MakeRef2 for T { + | ^^ unconstrained lifetime parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0207`. diff --git a/src/test/compile-fail/issue-2995.rs b/src/test/ui/issue-2995.rs similarity index 100% rename from src/test/compile-fail/issue-2995.rs rename to src/test/ui/issue-2995.rs diff --git a/src/test/ui/issue-2995.stderr b/src/test/ui/issue-2995.stderr new file mode 100644 index 0000000000000..b52bbbead9163 --- /dev/null +++ b/src/test/ui/issue-2995.stderr @@ -0,0 +1,11 @@ +error[E0605]: non-primitive cast: `*const isize` as `&isize` + --> $DIR/issue-2995.rs:12:22 + | +LL | let _q: &isize = p as &isize; //~ ERROR non-primitive cast + | ^^^^^^^^^^^ + | + = note: an `as` expression can only be used to convert between primitive types. Consider using the `From` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0605`. diff --git a/src/test/compile-fail/issue-30079.rs b/src/test/ui/issue-30079.rs similarity index 100% rename from src/test/compile-fail/issue-30079.rs rename to src/test/ui/issue-30079.rs diff --git a/src/test/ui/issue-30079.stderr b/src/test/ui/issue-30079.stderr new file mode 100644 index 0000000000000..dadaf3db24e05 --- /dev/null +++ b/src/test/ui/issue-30079.stderr @@ -0,0 +1,31 @@ +warning: private type `m1::Priv` in public interface (error E0446) + --> $DIR/issue-30079.rs:16:9 + | +LL | pub fn f(_: Priv) {} //~ WARN private type `m1::Priv` in public interface + | ^^^^^^^^^^^^^^^^^^^^ + | + = note: #[warn(private_in_public)] on by default + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #34537 + +error[E0446]: private type `m2::Priv` in public interface + --> $DIR/issue-30079.rs:28:9 + | +LL | struct Priv; + | - `m2::Priv` declared as private +LL | impl ::std::ops::Deref for ::SemiPriv { +LL | type Target = Priv; //~ ERROR private type `m2::Priv` in public interface + | ^^^^^^^^^^^^^^^^^^^ can't leak private type + +error[E0446]: private type `m3::Priv` in public interface + --> $DIR/issue-30079.rs:45:9 + | +LL | struct Priv; + | - `m3::Priv` declared as private +LL | impl ::SemiPrivTrait for () { +LL | type Assoc = Priv; //~ ERROR private type `m3::Priv` in public interface + | ^^^^^^^^^^^^^^^^^^ can't leak private type + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0446`. diff --git a/src/test/compile-fail/issue-3008-3.rs b/src/test/ui/issue-3008-3.rs similarity index 100% rename from src/test/compile-fail/issue-3008-3.rs rename to src/test/ui/issue-3008-3.rs diff --git a/src/test/ui/issue-3008-3.stderr b/src/test/ui/issue-3008-3.stderr new file mode 100644 index 0000000000000..22c0871fb0ca3 --- /dev/null +++ b/src/test/ui/issue-3008-3.stderr @@ -0,0 +1,13 @@ +error[E0072]: recursive type `E2` has infinite size + --> $DIR/issue-3008-3.rs:14:1 + | +LL | enum E2 { V2(E2, marker::PhantomData), } + | ^^^^^^^^^^ ------ recursive without indirection + | | + | recursive type has infinite size + | + = help: insert indirection (e.g., a `Box`, `Rc`, or `&`) at some point to make `E2` representable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0072`. diff --git a/src/test/compile-fail/issue-3021-b.rs b/src/test/ui/issue-3021-b.rs similarity index 100% rename from src/test/compile-fail/issue-3021-b.rs rename to src/test/ui/issue-3021-b.rs diff --git a/src/test/ui/issue-3021-b.stderr b/src/test/ui/issue-3021-b.stderr new file mode 100644 index 0000000000000..dfc80e5ca529e --- /dev/null +++ b/src/test/ui/issue-3021-b.stderr @@ -0,0 +1,11 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-3021-b.rs:19:22 + | +LL | self.v0 = k0 ^ 0x736f6d6570736575; //~ ERROR can't capture dynamic environment + | ^^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/compile-fail/issue-3021-c.rs b/src/test/ui/issue-3021-c.rs similarity index 100% rename from src/test/compile-fail/issue-3021-c.rs rename to src/test/ui/issue-3021-c.rs diff --git a/src/test/ui/issue-3021-c.stderr b/src/test/ui/issue-3021-c.stderr new file mode 100644 index 0000000000000..4a250e76af3be --- /dev/null +++ b/src/test/ui/issue-3021-c.stderr @@ -0,0 +1,25 @@ +error[E0401]: can't use type parameters from outer function + --> $DIR/issue-3021-c.rs:14:24 + | +LL | fn siphash() { + | - type variable from outer function +... +LL | fn g(&self, x: T) -> T; //~ ERROR can't use type parameters from outer function + | - ^ use of type variable from outer function + | | + | help: try using a local type parameter instead: `g` + +error[E0401]: can't use type parameters from outer function + --> $DIR/issue-3021-c.rs:14:30 + | +LL | fn siphash() { + | - type variable from outer function +... +LL | fn g(&self, x: T) -> T; //~ ERROR can't use type parameters from outer function + | - ^ use of type variable from outer function + | | + | help: try using a local type parameter instead: `g` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0401`. diff --git a/src/test/compile-fail/issue-3021-d.rs b/src/test/ui/issue-3021-d.rs similarity index 100% rename from src/test/compile-fail/issue-3021-d.rs rename to src/test/ui/issue-3021-d.rs diff --git a/src/test/ui/issue-3021-d.stderr b/src/test/ui/issue-3021-d.stderr new file mode 100644 index 0000000000000..ab5ad94a03104 --- /dev/null +++ b/src/test/ui/issue-3021-d.stderr @@ -0,0 +1,19 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-3021-d.rs:31:23 + | +LL | self.v0 = k0 ^ 0x736f6d6570736575; //~ ERROR can't capture dynamic environment + | ^^ + | + = help: use the `|| { ... }` closure form instead + +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-3021-d.rs:32:23 + | +LL | self.v1 = k1 ^ 0x646f72616e646f6d; //~ ERROR can't capture dynamic environment + | ^^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/compile-fail/issue-3021.rs b/src/test/ui/issue-3021.rs similarity index 100% rename from src/test/compile-fail/issue-3021.rs rename to src/test/ui/issue-3021.rs diff --git a/src/test/ui/issue-3021.stderr b/src/test/ui/issue-3021.stderr new file mode 100644 index 0000000000000..312b9f3b864f3 --- /dev/null +++ b/src/test/ui/issue-3021.stderr @@ -0,0 +1,11 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-3021.rs:22:22 + | +LL | self.v0 = k0 ^ 0x736f6d6570736575; //~ ERROR can't capture dynamic environment + | ^^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/compile-fail/issue-30225.rs b/src/test/ui/issue-30225.rs similarity index 100% rename from src/test/compile-fail/issue-30225.rs rename to src/test/ui/issue-30225.rs diff --git a/src/test/ui/issue-30225.stderr b/src/test/ui/issue-30225.stderr new file mode 100644 index 0000000000000..b3bbf233257d5 --- /dev/null +++ b/src/test/ui/issue-30225.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-30225.rs:41:9 + | +LL | u = v; // mark $0 and $1 in a subtype relationship + | ^ expected struct `A`, found struct `B` + | + = note: expected type `A` + found type `B` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-30236.rs b/src/test/ui/issue-30236.rs similarity index 100% rename from src/test/compile-fail/issue-30236.rs rename to src/test/ui/issue-30236.rs diff --git a/src/test/ui/issue-30236.stderr b/src/test/ui/issue-30236.stderr new file mode 100644 index 0000000000000..3a9f075d4808a --- /dev/null +++ b/src/test/ui/issue-30236.stderr @@ -0,0 +1,9 @@ +error[E0091]: type parameter `Unused` is unused + --> $DIR/issue-30236.rs:12:5 + | +LL | Unused //~ ERROR type parameter `Unused` is unused + | ^^^^^^ unused type parameter + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0091`. diff --git a/src/test/compile-fail/issue-30240-b.rs b/src/test/ui/issue-30240-b.rs similarity index 100% rename from src/test/compile-fail/issue-30240-b.rs rename to src/test/ui/issue-30240-b.rs diff --git a/src/test/ui/issue-30240-b.stderr b/src/test/ui/issue-30240-b.stderr new file mode 100644 index 0000000000000..535d1a92ed91e --- /dev/null +++ b/src/test/ui/issue-30240-b.stderr @@ -0,0 +1,14 @@ +error: unreachable pattern + --> $DIR/issue-30240-b.rs:22:9 + | +LL | "hello" => {} //~ ERROR unreachable pattern + | ^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-30240-b.rs:11:9 + | +LL | #![deny(unreachable_patterns)] + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-30240.rs b/src/test/ui/issue-30240.rs similarity index 100% rename from src/test/compile-fail/issue-30240.rs rename to src/test/ui/issue-30240.rs diff --git a/src/test/ui/issue-30240.stderr b/src/test/ui/issue-30240.stderr new file mode 100644 index 0000000000000..9acb53ff911c7 --- /dev/null +++ b/src/test/ui/issue-30240.stderr @@ -0,0 +1,15 @@ +error[E0004]: non-exhaustive patterns: `&_` not covered + --> $DIR/issue-30240.rs:12:11 + | +LL | match "world" { //~ ERROR non-exhaustive patterns: `&_` + | ^^^^^^^ pattern `&_` not covered + +error[E0004]: non-exhaustive patterns: `&_` not covered + --> $DIR/issue-30240.rs:16:11 + | +LL | match "world" { //~ ERROR non-exhaustive patterns: `&_` + | ^^^^^^^ pattern `&_` not covered + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/ui/issue-30355.nll.stderr b/src/test/ui/issue-30355.nll.stderr new file mode 100644 index 0000000000000..e565ad59116e8 --- /dev/null +++ b/src/test/ui/issue-30355.nll.stderr @@ -0,0 +1,22 @@ +error[E0508]: cannot move out of type `[u8]`, a non-copy slice + --> $DIR/issue-30355.rs:15:8 + | +LL | &X(*Y) + | ^^ cannot move out of here + +error[E0161]: cannot move a value of type X: the size of X cannot be statically determined + --> $DIR/issue-30355.rs:15:6 + | +LL | &X(*Y) + | ^^^^^ + +error[E0161]: cannot move a value of type [u8]: the size of [u8] cannot be statically determined + --> $DIR/issue-30355.rs:15:8 + | +LL | &X(*Y) + | ^^ + +error: aborting due to 3 previous errors + +Some errors occurred: E0161, E0508. +For more information about an error, try `rustc --explain E0161`. diff --git a/src/test/compile-fail/issue-30355.rs b/src/test/ui/issue-30355.rs similarity index 100% rename from src/test/compile-fail/issue-30355.rs rename to src/test/ui/issue-30355.rs diff --git a/src/test/ui/issue-30355.stderr b/src/test/ui/issue-30355.stderr new file mode 100644 index 0000000000000..7e843688035af --- /dev/null +++ b/src/test/ui/issue-30355.stderr @@ -0,0 +1,22 @@ +error[E0161]: cannot move a value of type X: the size of X cannot be statically determined + --> $DIR/issue-30355.rs:15:6 + | +LL | &X(*Y) + | ^^^^^ + +error[E0161]: cannot move a value of type [u8]: the size of [u8] cannot be statically determined + --> $DIR/issue-30355.rs:15:8 + | +LL | &X(*Y) + | ^^ + +error[E0507]: cannot move out of borrowed content + --> $DIR/issue-30355.rs:15:8 + | +LL | &X(*Y) + | ^^ cannot move out of borrowed content + +error: aborting due to 3 previous errors + +Some errors occurred: E0161, E0507. +For more information about an error, try `rustc --explain E0161`. diff --git a/src/test/compile-fail/issue-3038.rs b/src/test/ui/issue-3038.rs similarity index 100% rename from src/test/compile-fail/issue-3038.rs rename to src/test/ui/issue-3038.rs diff --git a/src/test/ui/issue-3038.stderr b/src/test/ui/issue-3038.stderr new file mode 100644 index 0000000000000..17ad99361495c --- /dev/null +++ b/src/test/ui/issue-3038.stderr @@ -0,0 +1,21 @@ +error[E0416]: identifier `x` is bound more than once in the same pattern + --> $DIR/issue-3038.rs:22:15 + | +LL | f::g(x, x) => { println!("{}", x + x); } + | ^ used in a pattern more than once + +error[E0416]: identifier `x` is bound more than once in the same pattern + --> $DIR/issue-3038.rs:27:32 + | +LL | h::i(j::l(x, _), k::m(_, x)) + | ^ used in a pattern more than once + +error[E0416]: identifier `x` is bound more than once in the same pattern + --> $DIR/issue-3038.rs:33:13 + | +LL | (x, x) => { x } //~ ERROR identifier `x` is bound more than once in the same pattern + | ^ used in a pattern more than once + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0416`. diff --git a/src/test/ui/issue-30438-a.nll.stderr b/src/test/ui/issue-30438-a.nll.stderr new file mode 100644 index 0000000000000..2d27cd55e019a --- /dev/null +++ b/src/test/ui/issue-30438-a.nll.stderr @@ -0,0 +1,20 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-30438-a.rs:22:17 + | +LL | return &Test { s: &self.s}; + | ^^^^^^^^^^^^^^^^^^- temporary value only lives until here + | | + | temporary value does not live long enough + | +note: borrowed value must be valid for the anonymous lifetime #1 defined on the method body at 21:5... + --> $DIR/issue-30438-a.rs:21:5 + | +LL | / fn index(&self, _: usize) -> &Self::Output { +LL | | return &Test { s: &self.s}; +LL | | //~^ ERROR: borrowed value does not live long enough +LL | | } + | |_____^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-30438-a.rs b/src/test/ui/issue-30438-a.rs similarity index 100% rename from src/test/compile-fail/issue-30438-a.rs rename to src/test/ui/issue-30438-a.rs diff --git a/src/test/ui/issue-30438-a.stderr b/src/test/ui/issue-30438-a.stderr new file mode 100644 index 0000000000000..5f4a51a927a2d --- /dev/null +++ b/src/test/ui/issue-30438-a.stderr @@ -0,0 +1,21 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-30438-a.rs:22:17 + | +LL | return &Test { s: &self.s}; + | ^^^^^^^^^^^^^^^^^^- temporary value only lives until here + | | + | temporary value does not live long enough + | +note: borrowed value must be valid for the anonymous lifetime #1 defined on the method body at 21:5... + --> $DIR/issue-30438-a.rs:21:5 + | +LL | / fn index(&self, _: usize) -> &Self::Output { +LL | | return &Test { s: &self.s}; +LL | | //~^ ERROR: borrowed value does not live long enough +LL | | } + | |_____^ + = note: consider using a `let` binding to increase its lifetime + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-30438-b.rs b/src/test/ui/issue-30438-b.rs similarity index 100% rename from src/test/compile-fail/issue-30438-b.rs rename to src/test/ui/issue-30438-b.rs diff --git a/src/test/ui/issue-30438-b.stderr b/src/test/ui/issue-30438-b.stderr new file mode 100644 index 0000000000000..651ff9f2ae11d --- /dev/null +++ b/src/test/ui/issue-30438-b.stderr @@ -0,0 +1,21 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-30438-b.rs:23:10 + | +LL | &Test { s: &self.s} + | ^^^^^^^^^^^^^^^^^^ temporary value does not live long enough +LL | //~^ ERROR: borrowed value does not live long enough +LL | } + | - temporary value only lives until here + | +note: borrowed value must be valid for the anonymous lifetime #1 defined on the method body at 22:5... + --> $DIR/issue-30438-b.rs:22:5 + | +LL | / fn index(&self, _: usize) -> &Self::Output { +LL | | &Test { s: &self.s} +LL | | //~^ ERROR: borrowed value does not live long enough +LL | | } + | |_____^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/ui/issue-30438-c.nll.stderr b/src/test/ui/issue-30438-c.nll.stderr new file mode 100644 index 0000000000000..0bfac131e224d --- /dev/null +++ b/src/test/ui/issue-30438-c.nll.stderr @@ -0,0 +1,18 @@ +error[E0597]: `x` does not live long enough + --> $DIR/issue-30438-c.rs:19:5 + | +LL | &x + | ^^ borrowed value does not live long enough +LL | //~^ ERROR: `x` does not live long enough +LL | } + | - borrowed value only lives until here + | +note: borrowed value must be valid for the lifetime 'y as defined on the function body at 17:10... + --> $DIR/issue-30438-c.rs:17:10 + | +LL | fn silly<'y, 'z>(_s: &'y Test<'z>) -> &'y as Trait>::Out where 'z: 'static { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-30438-c.rs b/src/test/ui/issue-30438-c.rs similarity index 100% rename from src/test/compile-fail/issue-30438-c.rs rename to src/test/ui/issue-30438-c.rs diff --git a/src/test/ui/issue-30438-c.stderr b/src/test/ui/issue-30438-c.stderr new file mode 100644 index 0000000000000..dc6e1c52be103 --- /dev/null +++ b/src/test/ui/issue-30438-c.stderr @@ -0,0 +1,18 @@ +error[E0597]: `x` does not live long enough + --> $DIR/issue-30438-c.rs:19:6 + | +LL | &x + | ^ borrowed value does not live long enough +LL | //~^ ERROR: `x` does not live long enough +LL | } + | - borrowed value only lives until here + | +note: borrowed value must be valid for the lifetime 'y as defined on the function body at 17:10... + --> $DIR/issue-30438-c.rs:17:10 + | +LL | fn silly<'y, 'z>(_s: &'y Test<'z>) -> &'y as Trait>::Out where 'z: 'static { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-30560.rs b/src/test/ui/issue-30560.rs similarity index 100% rename from src/test/compile-fail/issue-30560.rs rename to src/test/ui/issue-30560.rs diff --git a/src/test/ui/issue-30560.stderr b/src/test/ui/issue-30560.stderr new file mode 100644 index 0000000000000..cb38c0dabe0a3 --- /dev/null +++ b/src/test/ui/issue-30560.stderr @@ -0,0 +1,21 @@ +error: items in traits are not importable. + --> $DIR/issue-30560.rs:20:5 + | +LL | use T::*; //~ ERROR items in traits are not importable + | ^^^^ + +error[E0432]: unresolved import `Alias` + --> $DIR/issue-30560.rs:12:5 + | +LL | use Alias::*; + | ^^^^^ Not a module `Alias` + +error[E0432]: unresolved import `std::io::Result` + --> $DIR/issue-30560.rs:15:14 + | +LL | use std::io::Result::*; + | ^^^^^^ Not a module `Result` + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-30589.rs b/src/test/ui/issue-30589.rs similarity index 100% rename from src/test/compile-fail/issue-30589.rs rename to src/test/ui/issue-30589.rs diff --git a/src/test/ui/issue-30589.stderr b/src/test/ui/issue-30589.stderr new file mode 100644 index 0000000000000..8174af83230c5 --- /dev/null +++ b/src/test/ui/issue-30589.stderr @@ -0,0 +1,9 @@ +error[E0412]: cannot find type `DecoderError` in this scope + --> $DIR/issue-30589.rs:13:23 + | +LL | impl fmt::Display for DecoderError { //~ ERROR cannot find type `DecoderError` in this scope + | ^^^^^^^^^^^^ not found in this scope + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0412`. diff --git a/src/test/compile-fail/issue-3080.rs b/src/test/ui/issue-3080.rs similarity index 100% rename from src/test/compile-fail/issue-3080.rs rename to src/test/ui/issue-3080.rs diff --git a/src/test/ui/issue-3080.stderr b/src/test/ui/issue-3080.stderr new file mode 100644 index 0000000000000..3a966e3f31551 --- /dev/null +++ b/src/test/ui/issue-3080.stderr @@ -0,0 +1,11 @@ +error[E0133]: call to unsafe function is unsafe and requires unsafe function or block + --> $DIR/issue-3080.rs:17:5 + | +LL | x(()).with(); //~ ERROR requires unsafe function or block + | ^^^^^^^^^^^^ call to unsafe function + | + = note: consult the function's documentation for information on how to avoid undefined behavior + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0133`. diff --git a/src/test/compile-fail/issue-3096-1.rs b/src/test/ui/issue-3096-1.rs similarity index 100% rename from src/test/compile-fail/issue-3096-1.rs rename to src/test/ui/issue-3096-1.rs diff --git a/src/test/ui/issue-3096-1.stderr b/src/test/ui/issue-3096-1.stderr new file mode 100644 index 0000000000000..783e831a2a523 --- /dev/null +++ b/src/test/ui/issue-3096-1.stderr @@ -0,0 +1,15 @@ +error[E0004]: non-exhaustive patterns: type () is non-empty + --> $DIR/issue-3096-1.rs:12:11 + | +LL | match () { } //~ ERROR non-exhaustive + | ^^ + | +help: Please ensure that all possible cases are being handled; possibly adding wildcards or more match arms. + --> $DIR/issue-3096-1.rs:12:11 + | +LL | match () { } //~ ERROR non-exhaustive + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/compile-fail/issue-3096-2.rs b/src/test/ui/issue-3096-2.rs similarity index 100% rename from src/test/compile-fail/issue-3096-2.rs rename to src/test/ui/issue-3096-2.rs diff --git a/src/test/ui/issue-3096-2.stderr b/src/test/ui/issue-3096-2.stderr new file mode 100644 index 0000000000000..6031f25c03dff --- /dev/null +++ b/src/test/ui/issue-3096-2.stderr @@ -0,0 +1,15 @@ +error[E0004]: non-exhaustive patterns: type *const bottom is non-empty + --> $DIR/issue-3096-2.rs:15:11 + | +LL | match x { } //~ ERROR non-exhaustive patterns + | ^ + | +help: Please ensure that all possible cases are being handled; possibly adding wildcards or more match arms. + --> $DIR/issue-3096-2.rs:15:11 + | +LL | match x { } //~ ERROR non-exhaustive patterns + | ^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/compile-fail/issue-3099-a.rs b/src/test/ui/issue-3099-a.rs similarity index 100% rename from src/test/compile-fail/issue-3099-a.rs rename to src/test/ui/issue-3099-a.rs diff --git a/src/test/ui/issue-3099-a.stderr b/src/test/ui/issue-3099-a.stderr new file mode 100644 index 0000000000000..6a194593c3fe4 --- /dev/null +++ b/src/test/ui/issue-3099-a.stderr @@ -0,0 +1,14 @@ +error[E0428]: the name `a` is defined multiple times + --> $DIR/issue-3099-a.rs:13:1 + | +LL | enum a { b, c } + | ------ previous definition of the type `a` here +LL | +LL | enum a { d, e } //~ ERROR the name `a` is defined multiple times + | ^^^^^^ `a` redefined here + | + = note: `a` must be defined only once in the type namespace of this module + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0428`. diff --git a/src/test/compile-fail/issue-3099-b.rs b/src/test/ui/issue-3099-b.rs similarity index 100% rename from src/test/compile-fail/issue-3099-b.rs rename to src/test/ui/issue-3099-b.rs diff --git a/src/test/ui/issue-3099-b.stderr b/src/test/ui/issue-3099-b.stderr new file mode 100644 index 0000000000000..226d99e3b82f4 --- /dev/null +++ b/src/test/ui/issue-3099-b.stderr @@ -0,0 +1,14 @@ +error[E0428]: the name `a` is defined multiple times + --> $DIR/issue-3099-b.rs:13:1 + | +LL | pub mod a {} + | --------- previous definition of the module `a` here +LL | +LL | pub mod a {} //~ ERROR the name `a` is defined multiple times + | ^^^^^^^^^ `a` redefined here + | + = note: `a` must be defined only once in the type namespace of this module + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0428`. diff --git a/src/test/compile-fail/issue-3099.rs b/src/test/ui/issue-3099.rs similarity index 100% rename from src/test/compile-fail/issue-3099.rs rename to src/test/ui/issue-3099.rs diff --git a/src/test/ui/issue-3099.stderr b/src/test/ui/issue-3099.stderr new file mode 100644 index 0000000000000..a5f29e7b6c339 --- /dev/null +++ b/src/test/ui/issue-3099.stderr @@ -0,0 +1,14 @@ +error[E0428]: the name `a` is defined multiple times + --> $DIR/issue-3099.rs:15:1 + | +LL | fn a(x: String) -> String { + | ------------------------- previous definition of the value `a` here +... +LL | fn a(x: String, y: String) -> String { //~ ERROR the name `a` is defined multiple times + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `a` redefined here + | + = note: `a` must be defined only once in the value namespace of this module + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0428`. diff --git a/src/test/compile-fail/issue-31011.rs b/src/test/ui/issue-31011.rs similarity index 100% rename from src/test/compile-fail/issue-31011.rs rename to src/test/ui/issue-31011.rs diff --git a/src/test/ui/issue-31011.stderr b/src/test/ui/issue-31011.stderr new file mode 100644 index 0000000000000..c2e7c9876cb88 --- /dev/null +++ b/src/test/ui/issue-31011.stderr @@ -0,0 +1,12 @@ +error[E0609]: no field `trace` on type `&T` + --> $DIR/issue-31011.rs:13:17 + | +LL | if $ctx.trace { + | ^^^^^ +... +LL | log!(context, "entered wrapper"); + | --------------------------------- in this macro invocation + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0609`. diff --git a/src/test/compile-fail/issue-31109.rs b/src/test/ui/issue-31109.rs similarity index 100% rename from src/test/compile-fail/issue-31109.rs rename to src/test/ui/issue-31109.rs diff --git a/src/test/ui/issue-31109.stderr b/src/test/ui/issue-31109.stderr new file mode 100644 index 0000000000000..c66a4f0b175a0 --- /dev/null +++ b/src/test/ui/issue-31109.stderr @@ -0,0 +1,8 @@ +error: could not evaluate float literal (see issue #31407) + --> $DIR/issue-31109.rs:14:18 + | +LL | let _: f64 = 1234567890123456789012345678901234567890e-340; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-31173.rs b/src/test/ui/issue-31173.rs similarity index 100% rename from src/test/compile-fail/issue-31173.rs rename to src/test/ui/issue-31173.rs diff --git a/src/test/ui/issue-31173.stderr b/src/test/ui/issue-31173.stderr new file mode 100644 index 0000000000000..e2630b5b8ce47 --- /dev/null +++ b/src/test/ui/issue-31173.stderr @@ -0,0 +1,23 @@ +error[E0271]: type mismatch resolving `, [closure@$DIR/issue-31173.rs:16:39: 19:6 found_e:_]> as std::iter::Iterator>::Item == &_` + --> $DIR/issue-31173.rs:20:10 + | +LL | .cloned() + | ^^^^^^ expected u8, found reference + | + = note: expected type `u8` + found type `&_` + +error[E0599]: no method named `collect` found for type `std::iter::Cloned, [closure@$DIR/issue-31173.rs:16:39: 19:6 found_e:_]>>` in the current scope + --> $DIR/issue-31173.rs:24:10 + | +LL | .collect(); //~ ERROR no method named `collect` + | ^^^^^^^ + | + = note: the method `collect` exists but the following trait bounds were not satisfied: + `std::iter::Cloned, [closure@$DIR/issue-31173.rs:16:39: 19:6 found_e:_]>> : std::iter::Iterator` + `&mut std::iter::Cloned, [closure@$DIR/issue-31173.rs:16:39: 19:6 found_e:_]>> : std::iter::Iterator` + +error: aborting due to 2 previous errors + +Some errors occurred: E0271, E0599. +For more information about an error, try `rustc --explain E0271`. diff --git a/src/test/compile-fail/issue-31212.rs b/src/test/ui/issue-31212.rs similarity index 100% rename from src/test/compile-fail/issue-31212.rs rename to src/test/ui/issue-31212.rs diff --git a/src/test/ui/issue-31212.stderr b/src/test/ui/issue-31212.stderr new file mode 100644 index 0000000000000..17cf2e81236f4 --- /dev/null +++ b/src/test/ui/issue-31212.stderr @@ -0,0 +1,16 @@ +error[E0432]: unresolved import `self::*` + --> $DIR/issue-31212.rs:15:13 + | +LL | pub use self::*; //~ ERROR unresolved + | ^^^^^^^ Cannot glob-import a module into itself. + +error[E0425]: cannot find function `f` in module `foo` + --> $DIR/issue-31212.rs:19:10 + | +LL | foo::f(); //~ ERROR cannot find function `f` in module `foo` + | ^ not found in `foo` + +error: aborting due to 2 previous errors + +Some errors occurred: E0425, E0432. +For more information about an error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-31495.rs b/src/test/ui/issue-31495.rs similarity index 100% rename from src/test/compile-fail/issue-31495.rs rename to src/test/ui/issue-31495.rs diff --git a/src/test/compile-fail/issue-31511.rs b/src/test/ui/issue-31511.rs similarity index 100% rename from src/test/compile-fail/issue-31511.rs rename to src/test/ui/issue-31511.rs diff --git a/src/test/ui/issue-31511.stderr b/src/test/ui/issue-31511.stderr new file mode 100644 index 0000000000000..7d4c9426da103 --- /dev/null +++ b/src/test/ui/issue-31511.stderr @@ -0,0 +1,9 @@ +error[E0607]: cannot cast thin pointer `*const ()` to fat pointer `*const [u8]` + --> $DIR/issue-31511.rs:12:5 + | +LL | x as *const [u8]; + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0607`. diff --git a/src/test/ui/issue-3154.nll.stderr b/src/test/ui/issue-3154.nll.stderr new file mode 100644 index 0000000000000..4420f9dcae405 --- /dev/null +++ b/src/test/ui/issue-3154.nll.stderr @@ -0,0 +1,23 @@ +warning: not reporting region error due to nll + --> $DIR/issue-3154.rs:16:15 + | +LL | thing{ x: x } //~ ERROR 16:5: 16:18: explicit lifetime required in the type of `x` [E0621] + | ^ + +warning: not reporting region error due to nll + --> $DIR/issue-3154.rs:16:5 + | +LL | thing{ x: x } //~ ERROR 16:5: 16:18: explicit lifetime required in the type of `x` [E0621] + | ^^^^^ + +error[E0621]: explicit lifetime required in the type of `x` + --> $DIR/issue-3154.rs:16:15 + | +LL | fn thing<'a,Q>(x: &Q) -> thing<'a,Q> { + | - consider changing the type of `x` to `&'a Q` +LL | thing{ x: x } //~ ERROR 16:5: 16:18: explicit lifetime required in the type of `x` [E0621] + | ^ lifetime `'a` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-3154.rs b/src/test/ui/issue-3154.rs similarity index 100% rename from src/test/compile-fail/issue-3154.rs rename to src/test/ui/issue-3154.rs diff --git a/src/test/ui/issue-3154.stderr b/src/test/ui/issue-3154.stderr new file mode 100644 index 0000000000000..cc0cfd768c4fc --- /dev/null +++ b/src/test/ui/issue-3154.stderr @@ -0,0 +1,11 @@ +error[E0621]: explicit lifetime required in the type of `x` + --> $DIR/issue-3154.rs:16:5 + | +LL | fn thing<'a,Q>(x: &Q) -> thing<'a,Q> { + | - consider changing the type of `x` to `&'a Q` +LL | thing{ x: x } //~ ERROR 16:5: 16:18: explicit lifetime required in the type of `x` [E0621] + | ^^^^^^^^^^^^^ lifetime `'a` required + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-31561.rs b/src/test/ui/issue-31561.rs similarity index 100% rename from src/test/compile-fail/issue-31561.rs rename to src/test/ui/issue-31561.rs diff --git a/src/test/ui/issue-31561.stderr b/src/test/ui/issue-31561.stderr new file mode 100644 index 0000000000000..4608a95459bed --- /dev/null +++ b/src/test/ui/issue-31561.stderr @@ -0,0 +1,9 @@ +error[E0005]: refutable pattern in local binding: `Bar` not covered + --> $DIR/issue-31561.rs:18:9 + | +LL | let Thing::Foo(y) = Thing::Foo(1); + | ^^^^^^^^^^^^^ pattern `Bar` not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0005`. diff --git a/src/test/compile-fail/issue-31769.rs b/src/test/ui/issue-31769.rs similarity index 100% rename from src/test/compile-fail/issue-31769.rs rename to src/test/ui/issue-31769.rs diff --git a/src/test/ui/issue-31769.stderr b/src/test/ui/issue-31769.stderr new file mode 100644 index 0000000000000..1f1904e3c2cf2 --- /dev/null +++ b/src/test/ui/issue-31769.stderr @@ -0,0 +1,16 @@ +error[E0518]: attribute should be applied to function or closure + --> $DIR/issue-31769.rs:12:5 + | +LL | #[inline] struct Foo; //~ ERROR attribute should be applied to function or closure + | ^^^^^^^^^ ----------- not a function or closure + +error[E0517]: attribute should be applied to struct, enum or union + --> $DIR/issue-31769.rs:13:12 + | +LL | #[repr(C)] fn foo() {} //~ ERROR attribute should be applied to struct, enum or union + | ^ ----------- not a struct, enum or union + +error: aborting due to 2 previous errors + +Some errors occurred: E0517, E0518. +For more information about an error, try `rustc --explain E0517`. diff --git a/src/test/compile-fail/issue-31804.rs b/src/test/ui/issue-31804.rs similarity index 100% rename from src/test/compile-fail/issue-31804.rs rename to src/test/ui/issue-31804.rs diff --git a/src/test/ui/issue-31804.stderr b/src/test/ui/issue-31804.stderr new file mode 100644 index 0000000000000..e0ac2f631ba8f --- /dev/null +++ b/src/test/ui/issue-31804.stderr @@ -0,0 +1,8 @@ +error: expected pattern, found `}` + --> $DIR/issue-31804.rs:16:1 + | +LL | } //~ ERROR expected pattern, found `}` + | ^ expected pattern + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-31845.rs b/src/test/ui/issue-31845.rs similarity index 100% rename from src/test/compile-fail/issue-31845.rs rename to src/test/ui/issue-31845.rs diff --git a/src/test/ui/issue-31845.stderr b/src/test/ui/issue-31845.stderr new file mode 100644 index 0000000000000..9fb8f2ead8795 --- /dev/null +++ b/src/test/ui/issue-31845.stderr @@ -0,0 +1,9 @@ +error[E0425]: cannot find function `g` in this scope + --> $DIR/issue-31845.rs:17:12 + | +LL | g(); //~ ERROR cannot find function `g` in this scope + | ^ did you mean `h`? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-31910.rs b/src/test/ui/issue-31910.rs similarity index 100% rename from src/test/compile-fail/issue-31910.rs rename to src/test/ui/issue-31910.rs diff --git a/src/test/ui/issue-31910.stderr b/src/test/ui/issue-31910.stderr new file mode 100644 index 0000000000000..da5aa15445030 --- /dev/null +++ b/src/test/ui/issue-31910.stderr @@ -0,0 +1,9 @@ +error[E0308]: mismatched types + --> $DIR/issue-31910.rs:13:9 + | +LL | X = Trait::Number, + | ^^^^^^^^^^^^^ expected isize, found i32 + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-31924-non-snake-ffi.rs b/src/test/ui/issue-31924-non-snake-ffi.rs similarity index 100% rename from src/test/compile-fail/issue-31924-non-snake-ffi.rs rename to src/test/ui/issue-31924-non-snake-ffi.rs diff --git a/src/test/ui/issue-31924-non-snake-ffi.stderr b/src/test/ui/issue-31924-non-snake-ffi.stderr new file mode 100644 index 0000000000000..2aaaa1578a581 --- /dev/null +++ b/src/test/ui/issue-31924-non-snake-ffi.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-31924-non-snake-ffi.rs:18:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-32004.rs b/src/test/ui/issue-32004.rs similarity index 100% rename from src/test/compile-fail/issue-32004.rs rename to src/test/ui/issue-32004.rs diff --git a/src/test/ui/issue-32004.stderr b/src/test/ui/issue-32004.stderr new file mode 100644 index 0000000000000..c409d4bb612eb --- /dev/null +++ b/src/test/ui/issue-32004.stderr @@ -0,0 +1,17 @@ +error[E0532]: expected unit struct/variant or constant, found tuple variant `Foo::Bar` + --> $DIR/issue-32004.rs:20:9 + | +LL | Foo::Bar => {} + | ^^^^^--- + | | + | did you mean `Baz`? + +error[E0532]: expected tuple struct/variant, found unit struct `S` + --> $DIR/issue-32004.rs:26:9 + | +LL | S(()) => {} + | ^ not a tuple struct/variant + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0532`. diff --git a/src/test/compile-fail/issue-32086.rs b/src/test/ui/issue-32086.rs similarity index 100% rename from src/test/compile-fail/issue-32086.rs rename to src/test/ui/issue-32086.rs diff --git a/src/test/ui/issue-32086.stderr b/src/test/ui/issue-32086.stderr new file mode 100644 index 0000000000000..28d21708b217d --- /dev/null +++ b/src/test/ui/issue-32086.stderr @@ -0,0 +1,15 @@ +error[E0532]: expected tuple struct/variant, found constant `C` + --> $DIR/issue-32086.rs:15:9 + | +LL | let C(a) = S(11); //~ ERROR expected tuple struct/variant, found constant `C` + | ^ did you mean `S`? + +error[E0532]: expected tuple struct/variant, found constant `C` + --> $DIR/issue-32086.rs:16:9 + | +LL | let C(..) = S(11); //~ ERROR expected tuple struct/variant, found constant `C` + | ^ did you mean `S`? + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0532`. diff --git a/src/test/compile-fail/issue-32119.rs b/src/test/ui/issue-32119.rs similarity index 100% rename from src/test/compile-fail/issue-32119.rs rename to src/test/ui/issue-32119.rs diff --git a/src/test/ui/issue-32119.stderr b/src/test/ui/issue-32119.stderr new file mode 100644 index 0000000000000..04276ec1ffd06 --- /dev/null +++ b/src/test/ui/issue-32119.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-32119.rs:29:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-3214.rs b/src/test/ui/issue-3214.rs similarity index 100% rename from src/test/compile-fail/issue-3214.rs rename to src/test/ui/issue-3214.rs diff --git a/src/test/ui/issue-3214.stderr b/src/test/ui/issue-3214.stderr new file mode 100644 index 0000000000000..1298e4a007d41 --- /dev/null +++ b/src/test/ui/issue-3214.stderr @@ -0,0 +1,21 @@ +error[E0401]: can't use type parameters from outer function + --> $DIR/issue-3214.rs:13:12 + | +LL | fn foo() { + | --- - type variable from outer function + | | + | try adding a local type parameter in this method instead +LL | struct foo { +LL | x: T, //~ ERROR can't use type parameters from outer function + | ^ use of type variable from outer function + +error[E0244]: wrong number of type arguments: expected 0, found 1 + --> $DIR/issue-3214.rs:16:22 + | +LL | impl Drop for foo { + | ^^^^^^ expected no type arguments + +error: aborting due to 2 previous errors + +Some errors occurred: E0244, E0401. +For more information about an error, try `rustc --explain E0244`. diff --git a/src/test/compile-fail/issue-32201.rs b/src/test/ui/issue-32201.rs similarity index 100% rename from src/test/compile-fail/issue-32201.rs rename to src/test/ui/issue-32201.rs diff --git a/src/test/ui/issue-32201.stderr b/src/test/ui/issue-32201.stderr new file mode 100644 index 0000000000000..986c2f0890c3e --- /dev/null +++ b/src/test/ui/issue-32201.stderr @@ -0,0 +1,9 @@ +error[E0617]: can't pass `fn(*const u8) {bar}` to variadic function + --> $DIR/issue-32201.rs:19:16 + | +LL | foo(0, bar); + | ^^^ help: cast the value to `fn(*const u8)`: `bar as fn(*const u8)` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0617`. diff --git a/src/test/compile-fail/issue-32222.rs b/src/test/ui/issue-32222.rs similarity index 100% rename from src/test/compile-fail/issue-32222.rs rename to src/test/ui/issue-32222.rs diff --git a/src/test/ui/issue-32222.stderr b/src/test/ui/issue-32222.stderr new file mode 100644 index 0000000000000..ba2c5396e4d8c --- /dev/null +++ b/src/test/ui/issue-32222.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-32222.rs:34:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-32323.rs b/src/test/ui/issue-32323.rs similarity index 100% rename from src/test/compile-fail/issue-32323.rs rename to src/test/ui/issue-32323.rs diff --git a/src/test/ui/issue-32323.stderr b/src/test/ui/issue-32323.stderr new file mode 100644 index 0000000000000..09ac1553b3a8e --- /dev/null +++ b/src/test/ui/issue-32323.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-32323.rs:15:49 + | +LL | pub fn f<'a, T: Tr<'a>>() -> >::Out {} + | ^^ expected associated type, found () + | + = note: expected type `>::Out` + found type `()` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-32655.rs b/src/test/ui/issue-32655.rs similarity index 100% rename from src/test/compile-fail/issue-32655.rs rename to src/test/ui/issue-32655.rs diff --git a/src/test/ui/issue-32655.stderr b/src/test/ui/issue-32655.stderr new file mode 100644 index 0000000000000..a1323808a91ea --- /dev/null +++ b/src/test/ui/issue-32655.stderr @@ -0,0 +1,22 @@ +error[E0658]: attributes of the form `#[derive_*]` are reserved for the compiler (see issue #29644) + --> $DIR/issue-32655.rs:16:9 + | +LL | #[derive_Clone] //~ ERROR attributes of the form + | ^^^^^^^^^^^^^^^ +... +LL | foo!(); + | ------- in this macro invocation + | + = help: add #![feature(custom_derive)] to the crate attributes to enable + +error[E0658]: attributes of the form `#[derive_*]` are reserved for the compiler (see issue #29644) + --> $DIR/issue-32655.rs:28:5 + | +LL | #[derive_Clone] //~ ERROR attributes of the form + | ^^^^^^^^^^^^^^^ + | + = help: add #![feature(custom_derive)] to the crate attributes to enable + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0658`. diff --git a/src/test/compile-fail/issue-32709.rs b/src/test/ui/issue-32709.rs similarity index 100% rename from src/test/compile-fail/issue-32709.rs rename to src/test/ui/issue-32709.rs diff --git a/src/test/ui/issue-32709.stderr b/src/test/ui/issue-32709.stderr new file mode 100644 index 0000000000000..8da4be2ba2bb1 --- /dev/null +++ b/src/test/ui/issue-32709.stderr @@ -0,0 +1,11 @@ +error[E0277]: the trait bound `(): std::convert::From<{integer}>` is not satisfied + --> $DIR/issue-32709.rs:14:5 + | +LL | Err(5)?; //~ ERROR 14:5: 14:12 + | ^^^^^^^ the trait `std::convert::From<{integer}>` is not implemented for `()` + | + = note: required by `std::convert::From::from` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-32782.rs b/src/test/ui/issue-32782.rs similarity index 100% rename from src/test/compile-fail/issue-32782.rs rename to src/test/ui/issue-32782.rs diff --git a/src/test/ui/issue-32782.stderr b/src/test/ui/issue-32782.stderr new file mode 100644 index 0000000000000..8b486000a450d --- /dev/null +++ b/src/test/ui/issue-32782.stderr @@ -0,0 +1,14 @@ +error[E0658]: allow_internal_unstable side-steps feature gating and stability checks + --> $DIR/issue-32782.rs:17:9 + | +LL | #[allow_internal_unstable] //~ ERROR allow_internal_unstable side-steps + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ +... +LL | foo!(); + | ------- in this macro invocation + | + = help: add #![feature(allow_internal_unstable)] to the crate attributes to enable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0658`. diff --git a/src/test/compile-fail/issue-32797.rs b/src/test/ui/issue-32797.rs similarity index 100% rename from src/test/compile-fail/issue-32797.rs rename to src/test/ui/issue-32797.rs diff --git a/src/test/ui/issue-32797.stderr b/src/test/ui/issue-32797.stderr new file mode 100644 index 0000000000000..8e1430e505df9 --- /dev/null +++ b/src/test/ui/issue-32797.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-32797.rs:24:1 + | +LL | pub fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-32829.rs b/src/test/ui/issue-32829.rs similarity index 100% rename from src/test/compile-fail/issue-32829.rs rename to src/test/ui/issue-32829.rs diff --git a/src/test/ui/issue-32829.stderr b/src/test/ui/issue-32829.stderr new file mode 100644 index 0000000000000..fc7d356411af3 --- /dev/null +++ b/src/test/ui/issue-32829.stderr @@ -0,0 +1,11 @@ +error[E0015]: calls in statics are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-32829.rs:13:22 + | +LL | static S : u64 = { { panic!("foo"); 0 } }; + | ^^^^^^^^^^^^^^ + | + = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0015`. diff --git a/src/test/compile-fail/issue-32833.rs b/src/test/ui/issue-32833.rs similarity index 100% rename from src/test/compile-fail/issue-32833.rs rename to src/test/ui/issue-32833.rs diff --git a/src/test/ui/issue-32833.stderr b/src/test/ui/issue-32833.stderr new file mode 100644 index 0000000000000..11af5d567664e --- /dev/null +++ b/src/test/ui/issue-32833.stderr @@ -0,0 +1,9 @@ +error[E0432]: unresolved import `bar::Foo` + --> $DIR/issue-32833.rs:11:5 + | +LL | use bar::Foo; //~ ERROR unresolved import `bar::Foo` [E0432] + | ^^^^^^^^ no `Foo` in `bar` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-32922.rs b/src/test/ui/issue-32922.rs similarity index 100% rename from src/test/compile-fail/issue-32922.rs rename to src/test/ui/issue-32922.rs diff --git a/src/test/ui/issue-32922.stderr b/src/test/ui/issue-32922.stderr new file mode 100644 index 0000000000000..c1e80b0eb78b8 --- /dev/null +++ b/src/test/ui/issue-32922.stderr @@ -0,0 +1,14 @@ +error: compilation successful + --> $DIR/issue-32922.rs:35:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | foo! {}; +LL | | bar! {}; +LL | | +LL | | let mut a = true; +LL | | baz!(a); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-32963.rs b/src/test/ui/issue-32963.rs similarity index 100% rename from src/test/compile-fail/issue-32963.rs rename to src/test/ui/issue-32963.rs diff --git a/src/test/ui/issue-32963.stderr b/src/test/ui/issue-32963.stderr new file mode 100644 index 0000000000000..dff7c9f2b8bfe --- /dev/null +++ b/src/test/ui/issue-32963.stderr @@ -0,0 +1,22 @@ +error[E0225]: only auto traits can be used as additional traits in a trait object + --> $DIR/issue-32963.rs:18:25 + | +LL | size_of_copy::(); + | ^^^^ non-auto additional trait + +error[E0277]: the trait bound `dyn Misc: std::marker::Copy` is not satisfied + --> $DIR/issue-32963.rs:18:5 + | +LL | size_of_copy::(); + | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::marker::Copy` is not implemented for `dyn Misc` + | +note: required by `size_of_copy` + --> $DIR/issue-32963.rs:15:1 + | +LL | fn size_of_copy() -> usize { mem::size_of::() } + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + +Some errors occurred: E0225, E0277. +For more information about an error, try `rustc --explain E0225`. diff --git a/src/test/compile-fail/issue-32995-2.rs b/src/test/ui/issue-32995-2.rs similarity index 100% rename from src/test/compile-fail/issue-32995-2.rs rename to src/test/ui/issue-32995-2.rs diff --git a/src/test/ui/issue-32995-2.stderr b/src/test/ui/issue-32995-2.stderr new file mode 100644 index 0000000000000..68eda14f81db4 --- /dev/null +++ b/src/test/ui/issue-32995-2.stderr @@ -0,0 +1,30 @@ +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995-2.rs:14:28 + | +LL | { fn f() {} } + | ^^ + | + = note: #[deny(parenthesized_params_in_types_and_modules)] on by default + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995-2.rs:18:35 + | +LL | { fn f() -> impl ::std::marker()::Send { } } + | ^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995-2.rs:26:19 + | +LL | impl ::std::marker()::Copy for X {} + | ^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/issue-32995.rs b/src/test/ui/issue-32995.rs similarity index 100% rename from src/test/compile-fail/issue-32995.rs rename to src/test/ui/issue-32995.rs diff --git a/src/test/ui/issue-32995.stderr b/src/test/ui/issue-32995.stderr new file mode 100644 index 0000000000000..f427964135cfd --- /dev/null +++ b/src/test/ui/issue-32995.stderr @@ -0,0 +1,66 @@ +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995.rs:14:17 + | +LL | let x: usize() = 1; + | ^^ + | + = note: #[deny(parenthesized_params_in_types_and_modules)] on by default + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995.rs:18:24 + | +LL | let b: ::std::boxed()::Box<_> = Box::new(1); + | ^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995.rs:22:23 + | +LL | let p = ::std::str::()::from_utf8(b"foo").unwrap(); + | ^^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995.rs:26:34 + | +LL | let p = ::std::str::from_utf8::()(b"foo").unwrap(); + | ^^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995.rs:30:30 + | +LL | let o : Box<::std::marker()::Send> = Box::new(1); + | ^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995.rs:34:37 + | +LL | let o : Box = Box::new(1); + | ^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: parenthesized parameters may only be used with a trait + --> $DIR/issue-32995.rs:40:14 + | +LL | let d : X() = Default::default(); + | ^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #42238 + +error: aborting due to 7 previous errors + diff --git a/src/test/compile-fail/issue-33241.rs b/src/test/ui/issue-33241.rs similarity index 100% rename from src/test/compile-fail/issue-33241.rs rename to src/test/ui/issue-33241.rs diff --git a/src/test/ui/issue-33241.stderr b/src/test/ui/issue-33241.stderr new file mode 100644 index 0000000000000..1b6577dc41f06 --- /dev/null +++ b/src/test/ui/issue-33241.stderr @@ -0,0 +1,11 @@ +error: compilation successful + --> $DIR/issue-33241.rs:20:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let t: &(u8, fmt::Debug) = any(); +LL | | println!("{:?}", &t.1); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-33293.rs b/src/test/ui/issue-33293.rs similarity index 100% rename from src/test/compile-fail/issue-33293.rs rename to src/test/ui/issue-33293.rs diff --git a/src/test/ui/issue-33293.stderr b/src/test/ui/issue-33293.stderr new file mode 100644 index 0000000000000..e94979b6da4d5 --- /dev/null +++ b/src/test/ui/issue-33293.stderr @@ -0,0 +1,9 @@ +error[E0433]: failed to resolve. Use of undeclared type or module `aaa` + --> $DIR/issue-33293.rs:13:9 + | +LL | aaa::bbb(_) => () + | ^^^ Use of undeclared type or module `aaa` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0433`. diff --git a/src/test/compile-fail/issue-3344.rs b/src/test/ui/issue-3344.rs similarity index 100% rename from src/test/compile-fail/issue-3344.rs rename to src/test/ui/issue-3344.rs diff --git a/src/test/ui/issue-3344.stderr b/src/test/ui/issue-3344.stderr new file mode 100644 index 0000000000000..eb6caa7307e97 --- /dev/null +++ b/src/test/ui/issue-3344.stderr @@ -0,0 +1,11 @@ +error[E0046]: not all trait items implemented, missing: `partial_cmp` + --> $DIR/issue-3344.rs:13:1 + | +LL | impl PartialOrd for thing { //~ ERROR not all trait items implemented, missing: `partial_cmp` + | ^^^^^^^^^^^^^^^^^^^^^^^^^ missing `partial_cmp` in implementation + | + = note: `partial_cmp` from trait: `fn(&Self, &Rhs) -> std::option::Option` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0046`. diff --git a/src/test/compile-fail/issue-33464.rs b/src/test/ui/issue-33464.rs similarity index 100% rename from src/test/compile-fail/issue-33464.rs rename to src/test/ui/issue-33464.rs diff --git a/src/test/ui/issue-33464.stderr b/src/test/ui/issue-33464.stderr new file mode 100644 index 0000000000000..b70fff01c9ef4 --- /dev/null +++ b/src/test/ui/issue-33464.stderr @@ -0,0 +1,21 @@ +error[E0432]: unresolved import `abc` + --> $DIR/issue-33464.rs:13:5 + | +LL | use abc::one_el; + | ^^^ Maybe a missing `extern crate abc;`? + +error[E0432]: unresolved import `abc` + --> $DIR/issue-33464.rs:15:5 + | +LL | use abc::{a, bbb, cccccc}; + | ^^^ Maybe a missing `extern crate abc;`? + +error[E0432]: unresolved import `a_very_long_name` + --> $DIR/issue-33464.rs:17:5 + | +LL | use a_very_long_name::{el, el2}; + | ^^^^^^^^^^^^^^^^ Maybe a missing `extern crate a_very_long_name;`? + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-33504.rs b/src/test/ui/issue-33504.rs similarity index 100% rename from src/test/compile-fail/issue-33504.rs rename to src/test/ui/issue-33504.rs diff --git a/src/test/ui/issue-33504.stderr b/src/test/ui/issue-33504.stderr new file mode 100644 index 0000000000000..ecf8076b2b3e7 --- /dev/null +++ b/src/test/ui/issue-33504.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-33504.rs:17:13 + | +LL | let Test = 1; //~ ERROR mismatched types + | ^^^^ expected integral variable, found struct `Test` + | + = note: expected type `{integer}` + found type `Test` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-33571.rs b/src/test/ui/issue-33571.rs similarity index 100% rename from src/test/compile-fail/issue-33571.rs rename to src/test/ui/issue-33571.rs diff --git a/src/test/ui/issue-33571.stderr b/src/test/ui/issue-33571.stderr new file mode 100644 index 0000000000000..be45f377c1f47 --- /dev/null +++ b/src/test/ui/issue-33571.stderr @@ -0,0 +1,8 @@ +error: this unsafe trait should be implemented explicitly + --> $DIR/issue-33571.rs:12:10 + | +LL | Sync, //~ ERROR this unsafe trait should be implemented explicitly + | ^^^^ + +error: aborting due to previous error + diff --git a/src/test/ui/issue-33819.nll.stderr b/src/test/ui/issue-33819.nll.stderr new file mode 100644 index 0000000000000..8872820792108 --- /dev/null +++ b/src/test/ui/issue-33819.nll.stderr @@ -0,0 +1,12 @@ +error[E0596]: cannot borrow immutable item `v` as mutable + --> $DIR/issue-33819.rs:13:34 + | +LL | Some(ref v) => { let a = &mut v; }, + | ^^^^^^ + | | + | cannot borrow as mutable + | try removing `&mut` here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0596`. diff --git a/src/test/compile-fail/issue-33819.rs b/src/test/ui/issue-33819.rs similarity index 100% rename from src/test/compile-fail/issue-33819.rs rename to src/test/ui/issue-33819.rs diff --git a/src/test/ui/issue-33819.stderr b/src/test/ui/issue-33819.stderr new file mode 100644 index 0000000000000..bb8a542b12be6 --- /dev/null +++ b/src/test/ui/issue-33819.stderr @@ -0,0 +1,9 @@ +error[E0596]: cannot borrow immutable local variable `v` as mutable + --> $DIR/issue-33819.rs:13:39 + | +LL | Some(ref v) => { let a = &mut v; }, + | ^ cannot borrow mutably + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0596`. diff --git a/src/test/compile-fail/issue-34028.rs b/src/test/ui/issue-34028.rs similarity index 100% rename from src/test/compile-fail/issue-34028.rs rename to src/test/ui/issue-34028.rs diff --git a/src/test/ui/issue-34028.stderr b/src/test/ui/issue-34028.stderr new file mode 100644 index 0000000000000..b715fa84f6018 --- /dev/null +++ b/src/test/ui/issue-34028.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-34028.rs:21:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-34171.rs b/src/test/ui/issue-34171.rs similarity index 100% rename from src/test/compile-fail/issue-34171.rs rename to src/test/ui/issue-34171.rs diff --git a/src/test/ui/issue-34171.stderr b/src/test/ui/issue-34171.stderr new file mode 100644 index 0000000000000..cb8cfbd8599ce --- /dev/null +++ b/src/test/ui/issue-34171.stderr @@ -0,0 +1,10 @@ +error: compilation successful + --> $DIR/issue-34171.rs:19:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | apply_null!(#[cfg(all())] fn f() {}); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-34222-1.rs b/src/test/ui/issue-34222-1.rs similarity index 100% rename from src/test/compile-fail/issue-34222-1.rs rename to src/test/ui/issue-34222-1.rs diff --git a/src/test/ui/issue-34222-1.stderr b/src/test/ui/issue-34222-1.stderr new file mode 100644 index 0000000000000..ef68d41da3cd8 --- /dev/null +++ b/src/test/ui/issue-34222-1.stderr @@ -0,0 +1,11 @@ +error[E0585]: found a documentation comment that doesn't document anything + --> $DIR/issue-34222-1.rs:12:5 + | +LL | /// comment //~ ERROR found a documentation comment that doesn't document anything + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = help: doc comments must come before what they document, maybe a comment was intended with `//`? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0585`. diff --git a/src/test/compile-fail/issue-34334.rs b/src/test/ui/issue-34334.rs similarity index 100% rename from src/test/compile-fail/issue-34334.rs rename to src/test/ui/issue-34334.rs diff --git a/src/test/ui/issue-34334.stderr b/src/test/ui/issue-34334.stderr new file mode 100644 index 0000000000000..240df196ae77b --- /dev/null +++ b/src/test/ui/issue-34334.stderr @@ -0,0 +1,10 @@ +error: expected one of `,` or `>`, found `=` + --> $DIR/issue-34334.rs:12:29 + | +LL | let sr: Vec<(u32, _, _) = vec![]; //~ ERROR expected one of `,` or `>`, found `=` + | -- ^ expected one of `,` or `>` here + | | + | while parsing the type for `sr` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-34349.rs b/src/test/ui/issue-34349.rs similarity index 100% rename from src/test/compile-fail/issue-34349.rs rename to src/test/ui/issue-34349.rs diff --git a/src/test/ui/issue-34349.stderr b/src/test/ui/issue-34349.stderr new file mode 100644 index 0000000000000..8683962b24df4 --- /dev/null +++ b/src/test/ui/issue-34349.stderr @@ -0,0 +1,14 @@ +error[E0525]: expected a closure that implements the `Fn` trait, but this closure only implements `FnMut` + --> $DIR/issue-34349.rs:26:17 + | +LL | let diary = || { //~ ERROR E0525 + | ^^ this closure implements `FnMut`, not `Fn` +LL | farewell.push_str("!!!"); + | -------- closure is `FnMut` because it mutates the variable `farewell` here +... +LL | apply(diary); + | ----- the requirement to implement `Fn` derives from here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0525`. diff --git a/src/test/compile-fail/issue-34373.rs b/src/test/ui/issue-34373.rs similarity index 100% rename from src/test/compile-fail/issue-34373.rs rename to src/test/ui/issue-34373.rs diff --git a/src/test/ui/issue-34373.stderr b/src/test/ui/issue-34373.stderr new file mode 100644 index 0000000000000..ea80111b5e24a --- /dev/null +++ b/src/test/ui/issue-34373.stderr @@ -0,0 +1,16 @@ +error[E0391]: cycle detected when processing `Foo::T` + --> $DIR/issue-34373.rs:17:30 + | +LL | pub struct Foo>>; //~ ERROR cycle detected + | ^^^^^^^^^^ + | +note: ...which requires processing `DefaultFoo`... + --> $DIR/issue-34373.rs:18:19 + | +LL | type DefaultFoo = Foo; + | ^^^ + = note: ...which again requires processing `Foo::T`, completing the cycle + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0391`. diff --git a/src/test/compile-fail/issue-34418.rs b/src/test/ui/issue-34418.rs similarity index 100% rename from src/test/compile-fail/issue-34418.rs rename to src/test/ui/issue-34418.rs diff --git a/src/test/ui/issue-34418.stderr b/src/test/ui/issue-34418.stderr new file mode 100644 index 0000000000000..4cb5ec1ae3b32 --- /dev/null +++ b/src/test/ui/issue-34418.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-34418.rs:31:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-3477.rs b/src/test/ui/issue-3477.rs similarity index 100% rename from src/test/compile-fail/issue-3477.rs rename to src/test/ui/issue-3477.rs diff --git a/src/test/ui/issue-3477.stderr b/src/test/ui/issue-3477.stderr new file mode 100644 index 0000000000000..4207828693a35 --- /dev/null +++ b/src/test/ui/issue-3477.stderr @@ -0,0 +1,9 @@ +error[E0308]: mismatched types + --> $DIR/issue-3477.rs:12:20 + | +LL | let _p: char = 100; + | ^^^ expected char, found u8 + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-34839.rs b/src/test/ui/issue-34839.rs similarity index 100% rename from src/test/compile-fail/issue-34839.rs rename to src/test/ui/issue-34839.rs diff --git a/src/test/ui/issue-34839.stderr b/src/test/ui/issue-34839.stderr new file mode 100644 index 0000000000000..538cc7a581bd6 --- /dev/null +++ b/src/test/ui/issue-34839.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-34839.rs:31:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-35075.rs b/src/test/ui/issue-35075.rs similarity index 100% rename from src/test/compile-fail/issue-35075.rs rename to src/test/ui/issue-35075.rs diff --git a/src/test/ui/issue-35075.stderr b/src/test/ui/issue-35075.stderr new file mode 100644 index 0000000000000..9b2f17f038b8f --- /dev/null +++ b/src/test/ui/issue-35075.stderr @@ -0,0 +1,21 @@ +error[E0412]: cannot find type `Foo` in this scope + --> $DIR/issue-35075.rs:12:12 + | +LL | inner: Foo //~ ERROR cannot find type `Foo` in this scope + | ^^^--- + | | + | not found in this scope + | help: you can try using the variant's enum: `Baz` + +error[E0412]: cannot find type `Foo` in this scope + --> $DIR/issue-35075.rs:16:9 + | +LL | Foo(Foo) //~ ERROR cannot find type `Foo` in this scope + | ^^^--- + | | + | not found in this scope + | help: you can try using the variant's enum: `Baz` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0412`. diff --git a/src/test/compile-fail/issue-3521-2.rs b/src/test/ui/issue-3521-2.rs similarity index 100% rename from src/test/compile-fail/issue-3521-2.rs rename to src/test/ui/issue-3521-2.rs diff --git a/src/test/ui/issue-3521-2.stderr b/src/test/ui/issue-3521-2.stderr new file mode 100644 index 0000000000000..07c37fadbbad5 --- /dev/null +++ b/src/test/ui/issue-3521-2.stderr @@ -0,0 +1,11 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-3521-2.rs:14:23 + | +LL | static y: isize = foo + 1; + | ^^^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/compile-fail/issue-3521.rs b/src/test/ui/issue-3521.rs similarity index 100% rename from src/test/compile-fail/issue-3521.rs rename to src/test/ui/issue-3521.rs diff --git a/src/test/ui/issue-3521.stderr b/src/test/ui/issue-3521.stderr new file mode 100644 index 0000000000000..f4a1ef5cefaf3 --- /dev/null +++ b/src/test/ui/issue-3521.stderr @@ -0,0 +1,9 @@ +error[E0435]: attempt to use a non-constant value in a constant + --> $DIR/issue-3521.rs:16:15 + | +LL | Bar = foo + | ^^^ non-constant value + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0435`. diff --git a/src/test/compile-fail/issue-35450.rs b/src/test/ui/issue-35450.rs similarity index 100% rename from src/test/compile-fail/issue-35450.rs rename to src/test/ui/issue-35450.rs diff --git a/src/test/ui/issue-35450.stderr b/src/test/ui/issue-35450.stderr new file mode 100644 index 0000000000000..b8fc7d2054ca8 --- /dev/null +++ b/src/test/ui/issue-35450.stderr @@ -0,0 +1,8 @@ +error: expected expression, found `$` + --> $DIR/issue-35450.rs:14:8 + | +LL | m!($t); //~ ERROR expected expression + | ^ expected expression + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-35570.rs b/src/test/ui/issue-35570.rs similarity index 100% rename from src/test/compile-fail/issue-35570.rs rename to src/test/ui/issue-35570.rs diff --git a/src/test/ui/issue-35570.stderr b/src/test/ui/issue-35570.stderr new file mode 100644 index 0000000000000..349693f29d5fe --- /dev/null +++ b/src/test/ui/issue-35570.stderr @@ -0,0 +1,10 @@ +error: compilation successful + --> $DIR/issue-35570.rs:38:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | takes_lifetime(foo); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-35668.rs b/src/test/ui/issue-35668.rs similarity index 100% rename from src/test/compile-fail/issue-35668.rs rename to src/test/ui/issue-35668.rs diff --git a/src/test/ui/issue-35668.stderr b/src/test/ui/issue-35668.stderr new file mode 100644 index 0000000000000..51d6b04024047 --- /dev/null +++ b/src/test/ui/issue-35668.stderr @@ -0,0 +1,11 @@ +error[E0369]: binary operation `*` cannot be applied to type `&T` + --> $DIR/issue-35668.rs:12:22 + | +LL | a.iter().map(|a| a*a) + | ^^^ + | + = note: an implementation of `std::ops::Mul` might be missing for `&T` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0369`. diff --git a/src/test/compile-fail/issue-35988.rs b/src/test/ui/issue-35988.rs similarity index 100% rename from src/test/compile-fail/issue-35988.rs rename to src/test/ui/issue-35988.rs diff --git a/src/test/ui/issue-35988.stderr b/src/test/ui/issue-35988.stderr new file mode 100644 index 0000000000000..35452fcf392e6 --- /dev/null +++ b/src/test/ui/issue-35988.stderr @@ -0,0 +1,13 @@ +error[E0277]: the size for values of type `[std::boxed::Box]` cannot be known at compilation time + --> $DIR/issue-35988.rs:12:7 + | +LL | V([Box]), + | ^^^^^^^^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `[std::boxed::Box]` + = note: to learn more, visit + = note: no field of an enum variant may have a dynamically sized type + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-3601.rs b/src/test/ui/issue-3601.rs similarity index 100% rename from src/test/compile-fail/issue-3601.rs rename to src/test/ui/issue-3601.rs diff --git a/src/test/ui/issue-3601.stderr b/src/test/ui/issue-3601.stderr new file mode 100644 index 0000000000000..6c28ccb2ee8d4 --- /dev/null +++ b/src/test/ui/issue-3601.stderr @@ -0,0 +1,9 @@ +error[E0004]: non-exhaustive patterns: `_` not covered + --> $DIR/issue-3601.rs:40:44 + | +LL | box NodeKind::Element(ed) => match ed.kind { //~ ERROR non-exhaustive patterns + | ^^^^^^^ pattern `_` not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/ui/issue-36082.ast.nll.stderr b/src/test/ui/issue-36082.ast.nll.stderr new file mode 100644 index 0000000000000..cf280bd80b27f --- /dev/null +++ b/src/test/ui/issue-36082.ast.nll.stderr @@ -0,0 +1,14 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-36082.rs:23:19 + | +LL | let val: &_ = x.borrow().0; + | ^^^^^^^^^^ - temporary value only lives until here + | | + | temporary value does not live long enough +... +LL | println!("{}", val); + | --- borrow later used here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/ui/issue-36082.ast.stderr b/src/test/ui/issue-36082.ast.stderr new file mode 100644 index 0000000000000..b79958de5cb36 --- /dev/null +++ b/src/test/ui/issue-36082.ast.stderr @@ -0,0 +1,16 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-36082.rs:23:19 + | +LL | let val: &_ = x.borrow().0; + | ^^^^^^^^^^ - temporary value dropped here while still borrowed + | | + | temporary value does not live long enough +... +LL | } + | - temporary value needs to live until here + | + = note: consider using a `let` binding to increase its lifetime + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/ui/issue-36082.mir.stderr b/src/test/ui/issue-36082.mir.stderr new file mode 100644 index 0000000000000..cf280bd80b27f --- /dev/null +++ b/src/test/ui/issue-36082.mir.stderr @@ -0,0 +1,14 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-36082.rs:23:19 + | +LL | let val: &_ = x.borrow().0; + | ^^^^^^^^^^ - temporary value only lives until here + | | + | temporary value does not live long enough +... +LL | println!("{}", val); + | --- borrow later used here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-36082.rs b/src/test/ui/issue-36082.rs similarity index 100% rename from src/test/compile-fail/issue-36082.rs rename to src/test/ui/issue-36082.rs diff --git a/src/test/compile-fail/issue-36116.rs b/src/test/ui/issue-36116.rs similarity index 100% rename from src/test/compile-fail/issue-36116.rs rename to src/test/ui/issue-36116.rs diff --git a/src/test/ui/issue-36116.stderr b/src/test/ui/issue-36116.stderr new file mode 100644 index 0000000000000..df69dcb0d92c6 --- /dev/null +++ b/src/test/ui/issue-36116.stderr @@ -0,0 +1,20 @@ +warning: unnecessary path disambiguator + --> $DIR/issue-36116.rs:30:50 + | +LL | let f = Some(Foo { _a: 42 }).map(|a| a as Foo::); //~ WARN unnecessary path disambiguator + | ^^ try removing `::` + +warning: unnecessary path disambiguator + --> $DIR/issue-36116.rs:31:15 + | +LL | let g: Foo:: = Foo { _a: 42 }; //~ WARN unnecessary path disambiguator + | ^^ try removing `::` + +error: compilation successful + --> $DIR/issue-36116.rs:37:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-36299.rs b/src/test/ui/issue-36299.rs similarity index 100% rename from src/test/compile-fail/issue-36299.rs rename to src/test/ui/issue-36299.rs diff --git a/src/test/ui/issue-36299.stderr b/src/test/ui/issue-36299.stderr new file mode 100644 index 0000000000000..faa20253b9b47 --- /dev/null +++ b/src/test/ui/issue-36299.stderr @@ -0,0 +1,19 @@ +error[E0392]: parameter `'a` is never used + --> $DIR/issue-36299.rs:11:12 + | +LL | struct Foo<'a, A> {} + | ^^ unused type parameter + | + = help: consider removing `'a` or using a marker such as `std::marker::PhantomData` + +error[E0392]: parameter `A` is never used + --> $DIR/issue-36299.rs:11:16 + | +LL | struct Foo<'a, A> {} + | ^ unused type parameter + | + = help: consider removing `A` or using a marker such as `std::marker::PhantomData` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0392`. diff --git a/src/test/compile-fail/issue-36379.rs b/src/test/ui/issue-36379.rs similarity index 100% rename from src/test/compile-fail/issue-36379.rs rename to src/test/ui/issue-36379.rs diff --git a/src/test/ui/issue-36379.stderr b/src/test/ui/issue-36379.stderr new file mode 100644 index 0000000000000..b06591f411e99 --- /dev/null +++ b/src/test/ui/issue-36379.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-36379.rs:16:1 + | +LL | fn main() { } //~ ERROR compilation successful + | ^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-36617.rs b/src/test/ui/issue-36617.rs similarity index 100% rename from src/test/compile-fail/issue-36617.rs rename to src/test/ui/issue-36617.rs diff --git a/src/test/ui/issue-36617.stderr b/src/test/ui/issue-36617.stderr new file mode 100644 index 0000000000000..efd582352827d --- /dev/null +++ b/src/test/ui/issue-36617.stderr @@ -0,0 +1,8 @@ +error: `derive` may only be applied to structs, enums and unions + --> $DIR/issue-36617.rs:11:1 + | +LL | #![derive(Copy)] //~ ERROR `derive` may only be applied to structs, enums and unions + | ^^^^^^^^^^^^^^^^ help: try an outer attribute: `#[derive(Copy)]` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-36638.rs b/src/test/ui/issue-36638.rs similarity index 100% rename from src/test/compile-fail/issue-36638.rs rename to src/test/ui/issue-36638.rs diff --git a/src/test/ui/issue-36638.stderr b/src/test/ui/issue-36638.stderr new file mode 100644 index 0000000000000..d111fb469bfe1 --- /dev/null +++ b/src/test/ui/issue-36638.stderr @@ -0,0 +1,14 @@ +error: expected identifier, found keyword `Self` + --> $DIR/issue-36638.rs:13:12 + | +LL | struct Foo(Self); + | ^^^^ expected identifier, found keyword + +error: expected identifier, found keyword `Self` + --> $DIR/issue-36638.rs:16:11 + | +LL | trait Bar {} + | ^^^^ expected identifier, found keyword + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-3668-2.rs b/src/test/ui/issue-3668-2.rs similarity index 100% rename from src/test/compile-fail/issue-3668-2.rs rename to src/test/ui/issue-3668-2.rs diff --git a/src/test/ui/issue-3668-2.stderr b/src/test/ui/issue-3668-2.stderr new file mode 100644 index 0000000000000..e78a2791907da --- /dev/null +++ b/src/test/ui/issue-3668-2.stderr @@ -0,0 +1,11 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-3668-2.rs:12:27 + | +LL | static child: isize = x + 1; + | ^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/compile-fail/issue-3668.rs b/src/test/ui/issue-3668.rs similarity index 100% rename from src/test/compile-fail/issue-3668.rs rename to src/test/ui/issue-3668.rs diff --git a/src/test/ui/issue-3668.stderr b/src/test/ui/issue-3668.stderr new file mode 100644 index 0000000000000..73eaf57c95543 --- /dev/null +++ b/src/test/ui/issue-3668.stderr @@ -0,0 +1,11 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-3668.rs:18:34 + | +LL | static childVal: Box

= self.child.get(); + | ^^^^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/compile-fail/issue-3680.rs b/src/test/ui/issue-3680.rs similarity index 100% rename from src/test/compile-fail/issue-3680.rs rename to src/test/ui/issue-3680.rs diff --git a/src/test/ui/issue-3680.stderr b/src/test/ui/issue-3680.stderr new file mode 100644 index 0000000000000..4fea4789dbdaa --- /dev/null +++ b/src/test/ui/issue-3680.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-3680.rs:13:9 + | +LL | Err(_) => () + | ^^^^^^ expected enum `std::option::Option`, found enum `std::result::Result` + | + = note: expected type `std::option::Option<_>` + found type `std::result::Result<_, _>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-36839.rs b/src/test/ui/issue-36839.rs similarity index 100% rename from src/test/compile-fail/issue-36839.rs rename to src/test/ui/issue-36839.rs diff --git a/src/test/ui/issue-36839.stderr b/src/test/ui/issue-36839.stderr new file mode 100644 index 0000000000000..dd78668801c58 --- /dev/null +++ b/src/test/ui/issue-36839.stderr @@ -0,0 +1,10 @@ +error: compilation successful + --> $DIR/issue-36839.rs:30:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let _m: &Broken = &(); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-3702-2.rs b/src/test/ui/issue-3702-2.rs similarity index 100% rename from src/test/compile-fail/issue-3702-2.rs rename to src/test/ui/issue-3702-2.rs diff --git a/src/test/ui/issue-3702-2.stderr b/src/test/ui/issue-3702-2.stderr new file mode 100644 index 0000000000000..9ec400db47f18 --- /dev/null +++ b/src/test/ui/issue-3702-2.stderr @@ -0,0 +1,20 @@ +error[E0034]: multiple applicable items in scope + --> $DIR/issue-3702-2.rs:26:14 + | +LL | self.to_int() + other.to_int() //~ ERROR multiple applicable items in scope + | ^^^^^^ multiple `to_int` found + | +note: candidate #1 is defined in an impl of the trait `ToPrimitive` for the type `isize` + --> $DIR/issue-3702-2.rs:12:5 + | +LL | fn to_int(&self) -> isize { 0 } + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl of the trait `Add` for the type `isize` + --> $DIR/issue-3702-2.rs:24:5 + | +LL | fn to_int(&self) -> isize { *self } + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0034`. diff --git a/src/test/compile-fail/issue-37026.rs b/src/test/ui/issue-37026.rs similarity index 100% rename from src/test/compile-fail/issue-37026.rs rename to src/test/ui/issue-37026.rs diff --git a/src/test/ui/issue-37026.stderr b/src/test/ui/issue-37026.stderr new file mode 100644 index 0000000000000..c53ec5b55ce25 --- /dev/null +++ b/src/test/ui/issue-37026.stderr @@ -0,0 +1,21 @@ +error[E0308]: mismatched types + --> $DIR/issue-37026.rs:16:9 + | +LL | let empty_struct::XEmpty2 = (); //~ ERROR mismatched types + | ^^^^^^^^^^^^^^^^^^^^^ expected (), found struct `empty_struct::XEmpty2` + | + = note: expected type `()` + found type `empty_struct::XEmpty2` + +error[E0308]: mismatched types + --> $DIR/issue-37026.rs:17:9 + | +LL | let empty_struct::XEmpty6(..) = (); //~ ERROR mismatched types + | ^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found struct `empty_struct::XEmpty6` + | + = note: expected type `()` + found type `empty_struct::XEmpty6` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-37051.rs b/src/test/ui/issue-37051.rs similarity index 100% rename from src/test/compile-fail/issue-37051.rs rename to src/test/ui/issue-37051.rs diff --git a/src/test/ui/issue-37051.stderr b/src/test/ui/issue-37051.stderr new file mode 100644 index 0000000000000..b0404088d4d8a --- /dev/null +++ b/src/test/ui/issue-37051.stderr @@ -0,0 +1,9 @@ +error: compilation successful + --> $DIR/issue-37051.rs:28:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-3707.rs b/src/test/ui/issue-3707.rs similarity index 100% rename from src/test/compile-fail/issue-3707.rs rename to src/test/ui/issue-3707.rs diff --git a/src/test/ui/issue-3707.stderr b/src/test/ui/issue-3707.stderr new file mode 100644 index 0000000000000..c6d28fecaf9b8 --- /dev/null +++ b/src/test/ui/issue-3707.stderr @@ -0,0 +1,19 @@ +error[E0599]: no method named `boom` found for type `&Obj` in the current scope + --> $DIR/issue-3707.rs:20:14 + | +LL | self.boom(); //~ ERROR no method named `boom` found for type `&Obj` in the current scope + | -----^^^^ + | | | + | | this is an associated function, not a method + | help: use associated function syntax instead: `&Obj::boom` + | + = note: found the following associated functions; to be used as methods, functions must have a `self` parameter +note: the candidate is defined in an impl for the type `Obj` + --> $DIR/issue-3707.rs:16:5 + | +LL | pub fn boom() -> bool { + | ^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-37323.rs b/src/test/ui/issue-37323.rs similarity index 100% rename from src/test/compile-fail/issue-37323.rs rename to src/test/ui/issue-37323.rs diff --git a/src/test/ui/issue-37323.stderr b/src/test/ui/issue-37323.stderr new file mode 100644 index 0000000000000..a83923a591023 --- /dev/null +++ b/src/test/ui/issue-37323.stderr @@ -0,0 +1,20 @@ +error[E0491]: in type `&'a NestedB<'b>`, reference has a longer lifetime than the data it references + --> $DIR/issue-37323.rs:19:5 + | +LL | x: &'a NestedB<'b> + | ^^^^^^^^^^^^^^^^^^ + | +note: the pointer is valid for the lifetime 'a as defined on the struct at 18:16 + --> $DIR/issue-37323.rs:18:16 + | +LL | struct NestedA<'a, 'b> { + | ^^ +note: but the referenced data is only valid for the lifetime 'b as defined on the struct at 18:20 + --> $DIR/issue-37323.rs:18:20 + | +LL | struct NestedA<'a, 'b> { + | ^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0491`. diff --git a/src/test/compile-fail/issue-37366.rs b/src/test/ui/issue-37366.rs similarity index 100% rename from src/test/compile-fail/issue-37366.rs rename to src/test/ui/issue-37366.rs diff --git a/src/test/ui/issue-37366.stderr b/src/test/ui/issue-37366.stderr new file mode 100644 index 0000000000000..8667feccf9971 --- /dev/null +++ b/src/test/ui/issue-37366.stderr @@ -0,0 +1,9 @@ +error: compilation successful + --> $DIR/issue-37366.rs:25:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-37510.rs b/src/test/ui/issue-37510.rs similarity index 100% rename from src/test/compile-fail/issue-37510.rs rename to src/test/ui/issue-37510.rs diff --git a/src/test/ui/issue-37510.stderr b/src/test/ui/issue-37510.stderr new file mode 100644 index 0000000000000..48db0d5e2023d --- /dev/null +++ b/src/test/ui/issue-37510.stderr @@ -0,0 +1,14 @@ +error: compilation successful + --> $DIR/issue-37510.rs:16:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let opt = Some(92); +LL | | let mut x = 62; +LL | | +... | +LL | | } +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-37515.rs b/src/test/ui/issue-37515.rs similarity index 100% rename from src/test/compile-fail/issue-37515.rs rename to src/test/ui/issue-37515.rs diff --git a/src/test/ui/issue-37515.stderr b/src/test/ui/issue-37515.stderr new file mode 100644 index 0000000000000..68e983f23b034 --- /dev/null +++ b/src/test/ui/issue-37515.stderr @@ -0,0 +1,22 @@ +warning: type alias is never used: `Z` + --> $DIR/issue-37515.rs:14:1 + | +LL | type Z = for<'x> Send; + | ^^^^^^^^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-37515.rs:12:9 + | +LL | #![warn(unused)] + | ^^^^^^ + = note: #[warn(dead_code)] implied by #[warn(unused)] + +error: compilation successful + --> $DIR/issue-37515.rs:18:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-37534.rs b/src/test/ui/issue-37534.rs similarity index 100% rename from src/test/compile-fail/issue-37534.rs rename to src/test/ui/issue-37534.rs diff --git a/src/test/ui/issue-37534.stderr b/src/test/ui/issue-37534.stderr new file mode 100644 index 0000000000000..c4fc9db31f5e2 --- /dev/null +++ b/src/test/ui/issue-37534.stderr @@ -0,0 +1,28 @@ +error[E0405]: cannot find trait `Hash` in this scope + --> $DIR/issue-37534.rs:11:16 + | +LL | struct Foo { } + | ^^^^ not found in this scope +help: possible candidate is found in another module, you can import it into scope + | +LL | use std::hash::Hash; + | + +warning: default bound relaxed for a type parameter, but this does nothing because the given bound is not a default. Only `?Sized` is supported + --> $DIR/issue-37534.rs:11:12 + | +LL | struct Foo { } + | ^ + +error[E0392]: parameter `T` is never used + --> $DIR/issue-37534.rs:11:12 + | +LL | struct Foo { } + | ^ unused type parameter + | + = help: consider removing `T` or using a marker such as `std::marker::PhantomData` + +error: aborting due to 2 previous errors + +Some errors occurred: E0392, E0405. +For more information about an error, try `rustc --explain E0392`. diff --git a/src/test/compile-fail/issue-37550.rs b/src/test/ui/issue-37550.rs similarity index 100% rename from src/test/compile-fail/issue-37550.rs rename to src/test/ui/issue-37550.rs diff --git a/src/test/ui/issue-37550.stderr b/src/test/ui/issue-37550.stderr new file mode 100644 index 0000000000000..7468510de6a33 --- /dev/null +++ b/src/test/ui/issue-37550.stderr @@ -0,0 +1,35 @@ +error[E0658]: let bindings in constant functions are unstable (see issue #48821) + --> $DIR/issue-37550.rs:14:13 + | +LL | let t = true; + | ^^^^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: statements in constant functions are unstable (see issue #48821) + --> $DIR/issue-37550.rs:14:13 + | +LL | let t = true; + | ^^^^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: let bindings in constant functions are unstable (see issue #48821) + --> $DIR/issue-37550.rs:17:13 + | +LL | let x = || t; + | ^^^^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error[E0658]: statements in constant functions are unstable (see issue #48821) + --> $DIR/issue-37550.rs:17:13 + | +LL | let x = || t; + | ^^^^ + | + = help: add #![feature(const_let)] to the crate attributes to enable + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0658`. diff --git a/src/test/compile-fail/issue-37576.rs b/src/test/ui/issue-37576.rs similarity index 100% rename from src/test/compile-fail/issue-37576.rs rename to src/test/ui/issue-37576.rs diff --git a/src/test/ui/issue-37576.stderr b/src/test/ui/issue-37576.stderr new file mode 100644 index 0000000000000..b663c8b8a2838 --- /dev/null +++ b/src/test/ui/issue-37576.stderr @@ -0,0 +1,51 @@ +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:13:11 + | +LL | while break {} + | ^^^^^ unlabeled `break` in the condition of a `while` loop + +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:17:22 + | +LL | while let true = break {} + | ^^^^^ unlabeled `break` in the condition of a `while` loop + +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:21:18 + | +LL | loop { while break {} } + | ^^^^^ unlabeled `break` in the condition of a `while` loop + +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:29:15 + | +LL | while break {} + | ^^^^^ unlabeled `break` in the condition of a `while` loop + +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:35:11 + | +LL | while continue {} + | ^^^^^^^^ unlabeled `continue` in the condition of a `while` loop + +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:39:22 + | +LL | while let true = continue {} + | ^^^^^^^^ unlabeled `continue` in the condition of a `while` loop + +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:43:18 + | +LL | loop { while continue {} } + | ^^^^^^^^ unlabeled `continue` in the condition of a `while` loop + +error[E0590]: `break` or `continue` with no label in the condition of a `while` loop + --> $DIR/issue-37576.rs:51:15 + | +LL | while continue {} + | ^^^^^^^^ unlabeled `continue` in the condition of a `while` loop + +error: aborting due to 8 previous errors + +For more information about this error, try `rustc --explain E0590`. diff --git a/src/test/compile-fail/issue-3763.rs b/src/test/ui/issue-3763.rs similarity index 100% rename from src/test/compile-fail/issue-3763.rs rename to src/test/ui/issue-3763.rs diff --git a/src/test/ui/issue-3763.stderr b/src/test/ui/issue-3763.stderr new file mode 100644 index 0000000000000..0dd7d6819e824 --- /dev/null +++ b/src/test/ui/issue-3763.stderr @@ -0,0 +1,34 @@ +error[E0616]: field `priv_field` of struct `my_mod::MyStruct` is private + --> $DIR/issue-3763.rs:25:19 + | +LL | let _woohoo = (&my_struct).priv_field; + | ^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0616]: field `priv_field` of struct `my_mod::MyStruct` is private + --> $DIR/issue-3763.rs:28:19 + | +LL | let _woohoo = (Box::new(my_struct)).priv_field; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0624]: method `happyfun` is private + --> $DIR/issue-3763.rs:31:18 + | +LL | (&my_struct).happyfun(); //~ ERROR method `happyfun` is private + | ^^^^^^^^ + +error[E0624]: method `happyfun` is private + --> $DIR/issue-3763.rs:33:27 + | +LL | (Box::new(my_struct)).happyfun(); //~ ERROR method `happyfun` is private + | ^^^^^^^^ + +error[E0616]: field `priv_field` of struct `my_mod::MyStruct` is private + --> $DIR/issue-3763.rs:34:16 + | +LL | let nope = my_struct.priv_field; + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 5 previous errors + +Some errors occurred: E0616, E0624. +For more information about an error, try `rustc --explain E0616`. diff --git a/src/test/compile-fail/issue-37665.rs b/src/test/ui/issue-37665.rs similarity index 100% rename from src/test/compile-fail/issue-37665.rs rename to src/test/ui/issue-37665.rs diff --git a/src/test/ui/issue-37665.stderr b/src/test/ui/issue-37665.stderr new file mode 100644 index 0000000000000..cdf9129c00212 --- /dev/null +++ b/src/test/ui/issue-37665.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-37665.rs:20:17 + | +LL | let x: () = 0; //~ ERROR: mismatched types + | ^ expected (), found integral variable + | + = note: expected type `()` + found type `{integer}` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-37887.rs b/src/test/ui/issue-37887.rs similarity index 100% rename from src/test/compile-fail/issue-37887.rs rename to src/test/ui/issue-37887.rs diff --git a/src/test/ui/issue-37887.stderr b/src/test/ui/issue-37887.stderr new file mode 100644 index 0000000000000..8448466087d66 --- /dev/null +++ b/src/test/ui/issue-37887.stderr @@ -0,0 +1,18 @@ +error[E0432]: unresolved import `libc` + --> $DIR/issue-37887.rs:13:9 + | +LL | use libc::*; //~ ERROR unresolved import + | ^^^^ Maybe a missing `extern crate libc;`? + +error[E0658]: use of unstable library feature 'libc': use `libc` from crates.io (see issue #27783) + --> $DIR/issue-37887.rs:12:5 + | +LL | extern crate libc; //~ ERROR use of unstable + | ^^^^^^^^^^^^^^^^^^ + | + = help: add #![feature(libc)] to the crate attributes to enable + +error: aborting due to 2 previous errors + +Some errors occurred: E0432, E0658. +For more information about an error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-38160.rs b/src/test/ui/issue-38160.rs similarity index 100% rename from src/test/compile-fail/issue-38160.rs rename to src/test/ui/issue-38160.rs diff --git a/src/test/ui/issue-38160.stderr b/src/test/ui/issue-38160.stderr new file mode 100644 index 0000000000000..1277d84a0320c --- /dev/null +++ b/src/test/ui/issue-38160.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-38160.rs:31:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-3820.rs b/src/test/ui/issue-3820.rs similarity index 100% rename from src/test/compile-fail/issue-3820.rs rename to src/test/ui/issue-3820.rs diff --git a/src/test/ui/issue-3820.stderr b/src/test/ui/issue-3820.stderr new file mode 100644 index 0000000000000..cdd14e9da7bf5 --- /dev/null +++ b/src/test/ui/issue-3820.stderr @@ -0,0 +1,11 @@ +error[E0369]: binary operation `*` cannot be applied to type `Thing` + --> $DIR/issue-3820.rs:24:13 + | +LL | let w = u * 3; //~ ERROR binary operation `*` cannot be applied to type `Thing` + | ^^^^^ + | + = note: an implementation of `std::ops::Mul` might be missing for `Thing` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0369`. diff --git a/src/test/compile-fail/issue-38293.rs b/src/test/ui/issue-38293.rs similarity index 100% rename from src/test/compile-fail/issue-38293.rs rename to src/test/ui/issue-38293.rs diff --git a/src/test/ui/issue-38293.stderr b/src/test/ui/issue-38293.stderr new file mode 100644 index 0000000000000..73f5425cfc0bb --- /dev/null +++ b/src/test/ui/issue-38293.stderr @@ -0,0 +1,20 @@ +error[E0432]: unresolved import `foo::f` + --> $DIR/issue-38293.rs:16:14 + | +LL | use foo::f::{self}; //~ ERROR unresolved import `foo::f` + | ^^^^ no `f` in `foo` + +error[E0423]: expected function, found module `baz` + --> $DIR/issue-38293.rs:25:5 + | +LL | baz(); //~ ERROR expected function, found module `baz` + | ^^^ not a function +help: possible better candidate is found in another module, you can import it into scope + | +LL | use bar::baz; + | + +error: aborting due to 2 previous errors + +Some errors occurred: E0423, E0432. +For more information about an error, try `rustc --explain E0423`. diff --git a/src/test/compile-fail/issue-38381.rs b/src/test/ui/issue-38381.rs similarity index 100% rename from src/test/compile-fail/issue-38381.rs rename to src/test/ui/issue-38381.rs diff --git a/src/test/ui/issue-38381.stderr b/src/test/ui/issue-38381.stderr new file mode 100644 index 0000000000000..baa6338a37ead --- /dev/null +++ b/src/test/ui/issue-38381.stderr @@ -0,0 +1,10 @@ +error: compilation successful + --> $DIR/issue-38381.rs:16:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | let _x: fn(&i32) -> <&i32 as Deref>::Target = unimplemented!(); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-38404.rs b/src/test/ui/issue-38404.rs similarity index 100% rename from src/test/compile-fail/issue-38404.rs rename to src/test/ui/issue-38404.rs diff --git a/src/test/ui/issue-38404.stderr b/src/test/ui/issue-38404.stderr new file mode 100644 index 0000000000000..ac55be75f5b14 --- /dev/null +++ b/src/test/ui/issue-38404.stderr @@ -0,0 +1,11 @@ +error[E0038]: the trait `B` cannot be made into an object + --> $DIR/issue-38404.rs:13:15 + | +LL | trait C: A> {} + | ^^^^^^^^^^^^^^^^^^ the trait `B` cannot be made into an object + | + = note: the trait cannot use `Self` as a type parameter in the supertraits or where-clauses + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0038`. diff --git a/src/test/compile-fail/issue-38412.rs b/src/test/ui/issue-38412.rs similarity index 100% rename from src/test/compile-fail/issue-38412.rs rename to src/test/ui/issue-38412.rs diff --git a/src/test/ui/issue-38412.stderr b/src/test/ui/issue-38412.stderr new file mode 100644 index 0000000000000..96851436d6ccf --- /dev/null +++ b/src/test/ui/issue-38412.stderr @@ -0,0 +1,9 @@ +error[E0532]: expected tuple struct/variant, found struct `Box` + --> $DIR/issue-38412.rs:12:9 + | +LL | let Box(a) = loop { }; + | ^^^ constructor is not visible here due to private fields + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0532`. diff --git a/src/test/compile-fail/issue-38458.rs b/src/test/ui/issue-38458.rs similarity index 100% rename from src/test/compile-fail/issue-38458.rs rename to src/test/ui/issue-38458.rs diff --git a/src/test/ui/issue-38458.stderr b/src/test/ui/issue-38458.stderr new file mode 100644 index 0000000000000..d870da63d89c6 --- /dev/null +++ b/src/test/ui/issue-38458.stderr @@ -0,0 +1,9 @@ +error[E0572]: return statement outside of function body + --> $DIR/issue-38458.rs:12:5 + | +LL | return; //~ ERROR return statement outside of function body + | ^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0572`. diff --git a/src/test/compile-fail/issue-38604.rs b/src/test/ui/issue-38604.rs similarity index 100% rename from src/test/compile-fail/issue-38604.rs rename to src/test/ui/issue-38604.rs diff --git a/src/test/ui/issue-38604.stderr b/src/test/ui/issue-38604.stderr new file mode 100644 index 0000000000000..78aee9172f539 --- /dev/null +++ b/src/test/ui/issue-38604.stderr @@ -0,0 +1,20 @@ +error[E0038]: the trait `Foo` cannot be made into an object + --> $DIR/issue-38604.rs:24:13 + | +LL | let _f: Box = //~ ERROR `Foo` cannot be made into an object + | ^^^^^^^^ the trait `Foo` cannot be made into an object + | + = note: the trait cannot use `Self` as a type parameter in the supertraits or where-clauses + +error[E0038]: the trait `Foo` cannot be made into an object + --> $DIR/issue-38604.rs:25:9 + | +LL | Box::new(()); //~ ERROR `Foo` cannot be made into an object + | ^^^^^^^^^^^^ the trait `Foo` cannot be made into an object + | + = note: the trait cannot use `Self` as a type parameter in the supertraits or where-clauses + = note: required because of the requirements on the impl of `std::ops::CoerceUnsized>` for `std::boxed::Box<()>` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0038`. diff --git a/src/test/compile-fail/issue-38857.rs b/src/test/ui/issue-38857.rs similarity index 100% rename from src/test/compile-fail/issue-38857.rs rename to src/test/ui/issue-38857.rs diff --git a/src/test/ui/issue-38857.stderr b/src/test/ui/issue-38857.stderr new file mode 100644 index 0000000000000..985927c25a1ae --- /dev/null +++ b/src/test/ui/issue-38857.stderr @@ -0,0 +1,16 @@ +error[E0433]: failed to resolve. Could not find `imp` in `sys` + --> $DIR/issue-38857.rs:12:23 + | +LL | let a = std::sys::imp::process::process_common::StdioPipes { ..panic!() }; + | ^^^ Could not find `imp` in `sys` + +error[E0603]: module `sys` is private + --> $DIR/issue-38857.rs:12:13 + | +LL | let a = std::sys::imp::process::process_common::StdioPipes { ..panic!() }; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + +Some errors occurred: E0433, E0603. +For more information about an error, try `rustc --explain E0433`. diff --git a/src/test/compile-fail/issue-38868.rs b/src/test/ui/issue-38868.rs similarity index 100% rename from src/test/compile-fail/issue-38868.rs rename to src/test/ui/issue-38868.rs diff --git a/src/test/ui/issue-38868.stderr b/src/test/ui/issue-38868.stderr new file mode 100644 index 0000000000000..3a8ffe7d5e9c6 --- /dev/null +++ b/src/test/ui/issue-38868.stderr @@ -0,0 +1,21 @@ +error[E0366]: Implementations of Drop cannot be specialized + --> $DIR/issue-38868.rs:15:1 + | +LL | / impl Drop for List { //~ ERROR E0366 +LL | | fn drop(&mut self) { +LL | | panic!() +LL | | } +LL | | } + | |_^ + | +note: Use same sequence of generic type and region parameters that is on the struct/enum definition + --> $DIR/issue-38868.rs:11:1 + | +LL | / pub struct List { +LL | | head: T, +LL | | } + | |_^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0366`. diff --git a/src/test/compile-fail/issue-38919.rs b/src/test/ui/issue-38919.rs similarity index 100% rename from src/test/compile-fail/issue-38919.rs rename to src/test/ui/issue-38919.rs diff --git a/src/test/ui/issue-38919.stderr b/src/test/ui/issue-38919.stderr new file mode 100644 index 0000000000000..b80367d7c6cff --- /dev/null +++ b/src/test/ui/issue-38919.stderr @@ -0,0 +1,9 @@ +error[E0599]: no associated item named `Item` found for type `T` in the current scope + --> $DIR/issue-38919.rs:12:5 + | +LL | T::Item; //~ ERROR no associated item named `Item` found for type `T` in the current scope + | ^^^^^^^ associated item not found in `T` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-38954.rs b/src/test/ui/issue-38954.rs similarity index 100% rename from src/test/compile-fail/issue-38954.rs rename to src/test/ui/issue-38954.rs diff --git a/src/test/ui/issue-38954.stderr b/src/test/ui/issue-38954.stderr new file mode 100644 index 0000000000000..f9c380317b495 --- /dev/null +++ b/src/test/ui/issue-38954.stderr @@ -0,0 +1,12 @@ +error[E0277]: the size for values of type `str` cannot be known at compilation time + --> $DIR/issue-38954.rs:11:23 + | +LL | fn _test(ref _p: str) {} + | ^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `str` + = note: to learn more, visit + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-39211.rs b/src/test/ui/issue-39211.rs similarity index 100% rename from src/test/compile-fail/issue-39211.rs rename to src/test/ui/issue-39211.rs diff --git a/src/test/ui/issue-39211.stderr b/src/test/ui/issue-39211.stderr new file mode 100644 index 0000000000000..6859c6caeb04a --- /dev/null +++ b/src/test/ui/issue-39211.stderr @@ -0,0 +1,9 @@ +error[E0220]: associated type `Row` not found for `M` + --> $DIR/issue-39211.rs:21:17 + | +LL | let a = [3; M::Row::DIM]; //~ ERROR associated type `Row` not found for `M` + | ^^^^^^^^^^^ associated type `Row` not found + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0220`. diff --git a/src/test/compile-fail/issue-39362.rs b/src/test/ui/issue-39362.rs similarity index 100% rename from src/test/compile-fail/issue-39362.rs rename to src/test/ui/issue-39362.rs diff --git a/src/test/ui/issue-39362.stderr b/src/test/ui/issue-39362.stderr new file mode 100644 index 0000000000000..3e613553deae2 --- /dev/null +++ b/src/test/ui/issue-39362.stderr @@ -0,0 +1,9 @@ +error[E0004]: non-exhaustive patterns: `Bar { bar: C, .. }`, `Bar { bar: D, .. }`, `Bar { bar: E, .. }` and 1 more not covered + --> $DIR/issue-39362.rs:20:11 + | +LL | match f { + | ^ patterns `Bar { bar: C, .. }`, `Bar { bar: D, .. }`, `Bar { bar: E, .. }` and 1 more not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/compile-fail/issue-39388.rs b/src/test/ui/issue-39388.rs similarity index 100% rename from src/test/compile-fail/issue-39388.rs rename to src/test/ui/issue-39388.rs diff --git a/src/test/ui/issue-39388.stderr b/src/test/ui/issue-39388.stderr new file mode 100644 index 0000000000000..a38d38a51aded --- /dev/null +++ b/src/test/ui/issue-39388.stderr @@ -0,0 +1,8 @@ +error: expected one of: `*`, `+`, or `?` + --> $DIR/issue-39388.rs:14:22 + | +LL | (($($a:tt)*) = ($($b:tt))*) => { //~ ERROR expected one of: `*`, `+`, or `?` + | ^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-39404.rs b/src/test/ui/issue-39404.rs similarity index 100% rename from src/test/compile-fail/issue-39404.rs rename to src/test/ui/issue-39404.rs diff --git a/src/test/ui/issue-39404.stderr b/src/test/ui/issue-39404.stderr new file mode 100644 index 0000000000000..435a03c28583d --- /dev/null +++ b/src/test/ui/issue-39404.stderr @@ -0,0 +1,12 @@ +error: missing fragment specifier + --> $DIR/issue-39404.rs:13:19 + | +LL | macro_rules! m { ($i) => {} } + | ^^ + | + = note: #[deny(missing_fragment_specifier)] on by default + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #40107 + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-39559-2.rs b/src/test/ui/issue-39559-2.rs similarity index 100% rename from src/test/compile-fail/issue-39559-2.rs rename to src/test/ui/issue-39559-2.rs diff --git a/src/test/ui/issue-39559-2.stderr b/src/test/ui/issue-39559-2.stderr new file mode 100644 index 0000000000000..91520a7ec0867 --- /dev/null +++ b/src/test/ui/issue-39559-2.stderr @@ -0,0 +1,30 @@ +error[E0015]: calls in constants are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-39559-2.rs:24:24 + | +LL | let array: [usize; Dim3::dim()] + | ^^^^^^^^^^^ + +error[E0015]: calls in constants are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-39559-2.rs:27:15 + | +LL | = [0; Dim3::dim()]; + | ^^^^^^^^^^^ + +error[E0080]: could not evaluate repeat length + --> $DIR/issue-39559-2.rs:27:15 + | +LL | = [0; Dim3::dim()]; + | ^^^^^^^^^^^ calling non-const fn `::dim` + +error[E0080]: could not evaluate constant expression + --> $DIR/issue-39559-2.rs:24:16 + | +LL | let array: [usize; Dim3::dim()] + | ^^^^^^^^-----------^ + | | + | calling non-const fn `::dim` + +error: aborting due to 4 previous errors + +Some errors occurred: E0015, E0080. +For more information about an error, try `rustc --explain E0015`. diff --git a/src/test/compile-fail/issue-39559.rs b/src/test/ui/issue-39559.rs similarity index 100% rename from src/test/compile-fail/issue-39559.rs rename to src/test/ui/issue-39559.rs diff --git a/src/test/ui/issue-39559.stderr b/src/test/ui/issue-39559.stderr new file mode 100644 index 0000000000000..2ce6dfdbe44cd --- /dev/null +++ b/src/test/ui/issue-39559.stderr @@ -0,0 +1,13 @@ +error[E0599]: no function or associated item named `dim` found for type `D` in the current scope + --> $DIR/issue-39559.rs:24:18 + | +LL | entries: [T; D::dim()], + | ^^^^^^ function or associated item not found in `D` + | + = help: items from traits can only be used if the trait is implemented and in scope + = note: the following trait defines an item `dim`, perhaps you need to implement it: + candidate #1: `Dim` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-39616.rs b/src/test/ui/issue-39616.rs similarity index 100% rename from src/test/compile-fail/issue-39616.rs rename to src/test/ui/issue-39616.rs diff --git a/src/test/ui/issue-39616.stderr b/src/test/ui/issue-39616.stderr new file mode 100644 index 0000000000000..eebf47afb54c4 --- /dev/null +++ b/src/test/ui/issue-39616.stderr @@ -0,0 +1,14 @@ +error: expected type, found `0` + --> $DIR/issue-39616.rs:11:12 + | +LL | fn foo(a: [0; 1]) {} //~ ERROR expected type, found `0` + | ^ + +error: expected one of `)`, `,`, `->`, `where`, or `{`, found `]` + --> $DIR/issue-39616.rs:11:16 + | +LL | fn foo(a: [0; 1]) {} //~ ERROR expected type, found `0` + | ^ expected one of `)`, `,`, `->`, `where`, or `{` here + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-39687.rs b/src/test/ui/issue-39687.rs similarity index 100% rename from src/test/compile-fail/issue-39687.rs rename to src/test/ui/issue-39687.rs diff --git a/src/test/ui/issue-39687.stderr b/src/test/ui/issue-39687.stderr new file mode 100644 index 0000000000000..9f8d0910d87b7 --- /dev/null +++ b/src/test/ui/issue-39687.stderr @@ -0,0 +1,9 @@ +error[E0229]: associated type bindings are not allowed here + --> $DIR/issue-39687.rs:14:16 + | +LL | ::call; + | ^^ associated type not allowed here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0229`. diff --git a/src/test/compile-fail/issue-3973.rs b/src/test/ui/issue-3973.rs similarity index 100% rename from src/test/compile-fail/issue-3973.rs rename to src/test/ui/issue-3973.rs diff --git a/src/test/ui/issue-3973.stderr b/src/test/ui/issue-3973.stderr new file mode 100644 index 0000000000000..9be07614ec176 --- /dev/null +++ b/src/test/ui/issue-3973.stderr @@ -0,0 +1,22 @@ +error[E0407]: method `new` is not a member of trait `ToString_` + --> $DIR/issue-3973.rs:21:5 + | +LL | / fn new(x: f64, y: f64) -> Point { +LL | | //~^ ERROR method `new` is not a member of trait `ToString_` +LL | | Point { x: x, y: y } +LL | | } + | |_____^ not a member of trait `ToString_` + +error[E0599]: no function or associated item named `new` found for type `Point` in the current scope + --> $DIR/issue-3973.rs:32:13 + | +LL | struct Point { + | ------------ function or associated item `new` not found for this +... +LL | let p = Point::new(0.0, 0.0); + | ^^^^^^^^^^ function or associated item not found in `Point` + +error: aborting due to 2 previous errors + +Some errors occurred: E0407, E0599. +For more information about an error, try `rustc --explain E0407`. diff --git a/src/test/compile-fail/issue-39848.rs b/src/test/ui/issue-39848.rs similarity index 100% rename from src/test/compile-fail/issue-39848.rs rename to src/test/ui/issue-39848.rs diff --git a/src/test/ui/issue-39848.stderr b/src/test/ui/issue-39848.stderr new file mode 100644 index 0000000000000..9ca39dbaa3436 --- /dev/null +++ b/src/test/ui/issue-39848.stderr @@ -0,0 +1,13 @@ +error: expected `{`, found `foo` + --> $DIR/issue-39848.rs:18:19 + | +LL | if $tgt.has_$field() {} + | -- - help: try placing this code inside a block: `{ foo(); }` + | | + | this `if` statement has a condition, but no block +... +LL | get_opt!(bar, foo); + | ^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-3993.rs b/src/test/ui/issue-3993.rs similarity index 100% rename from src/test/compile-fail/issue-3993.rs rename to src/test/ui/issue-3993.rs diff --git a/src/test/ui/issue-3993.stderr b/src/test/ui/issue-3993.stderr new file mode 100644 index 0000000000000..4b569f2dea957 --- /dev/null +++ b/src/test/ui/issue-3993.stderr @@ -0,0 +1,9 @@ +error[E0603]: function `fly` is private + --> $DIR/issue-3993.rs:11:5 + | +LL | use zoo::fly; //~ ERROR: function `fly` is private + | ^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0603`. diff --git a/src/test/compile-fail/issue-39970.rs b/src/test/ui/issue-39970.rs similarity index 100% rename from src/test/compile-fail/issue-39970.rs rename to src/test/ui/issue-39970.rs diff --git a/src/test/ui/issue-39970.stderr b/src/test/ui/issue-39970.stderr new file mode 100644 index 0000000000000..397d7b8e650d2 --- /dev/null +++ b/src/test/ui/issue-39970.stderr @@ -0,0 +1,18 @@ +error[E0271]: type mismatch resolving `for<'a> <() as Array<'a>>::Element == ()` + --> $DIR/issue-39970.rs:29:5 + | +LL | <() as Visit>::visit(); + | ^^^^^^^^^^^^^^^^^^^^ expected &(), found () + | + = note: expected type `&()` + found type `()` + = note: required because of the requirements on the impl of `Visit` for `()` +note: required by `Visit::visit` + --> $DIR/issue-39970.rs:16:5 + | +LL | fn visit() {} + | ^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0271`. diff --git a/src/test/compile-fail/issue-39974.rs b/src/test/ui/issue-39974.rs similarity index 100% rename from src/test/compile-fail/issue-39974.rs rename to src/test/ui/issue-39974.rs diff --git a/src/test/ui/issue-39974.stderr b/src/test/ui/issue-39974.stderr new file mode 100644 index 0000000000000..ddd149ccba83d --- /dev/null +++ b/src/test/ui/issue-39974.stderr @@ -0,0 +1,9 @@ +error[E0308]: mismatched types + --> $DIR/issue-39974.rs:14:19 + | +LL | f: [[f64; 2]; LENGTH], + | ^^^^^^ expected usize, found f64 + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-40000.rs b/src/test/ui/issue-40000.rs similarity index 100% rename from src/test/compile-fail/issue-40000.rs rename to src/test/ui/issue-40000.rs diff --git a/src/test/ui/issue-40000.stderr b/src/test/ui/issue-40000.stderr new file mode 100644 index 0000000000000..26e52a7ecdbbc --- /dev/null +++ b/src/test/ui/issue-40000.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-40000.rs:16:9 + | +LL | foo(bar); //~ ERROR mismatched types + | ^^^ expected concrete lifetime, found bound lifetime parameter + | + = note: expected type `std::boxed::Box<(dyn for<'r> std::ops::Fn(&'r i32) + 'static)>` + found type `std::boxed::Box` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/issue-40288-2.nll.stderr b/src/test/ui/issue-40288-2.nll.stderr new file mode 100644 index 0000000000000..fcff5c6a8edad --- /dev/null +++ b/src/test/ui/issue-40288-2.nll.stderr @@ -0,0 +1,55 @@ +warning: not reporting region error due to nll + --> $DIR/issue-40288-2.rs:17:20 + | +LL | slice[0] = y; + | ^ + +warning: not reporting region error due to nll + --> $DIR/issue-40288-2.rs:16:20 + | +LL | let slice: &mut [_] = &mut out; + | ^^^^^^^^ + +warning: not reporting region error due to nll + --> $DIR/issue-40288-2.rs:14:19 + | +LL | let mut out = [x]; + | ^^^ + +warning: not reporting region error due to nll + --> $DIR/issue-40288-2.rs:32:20 + | +LL | dst.head = y; + | ^ + +warning: not reporting region error due to nll + --> $DIR/issue-40288-2.rs:31:18 + | +LL | let dst: &mut Struct<_, [()]> = &mut out; + | ^^^^^^^^^^^^^^^^^^^^ + +warning: not reporting region error due to nll + --> $DIR/issue-40288-2.rs:29:19 + | +LL | let mut out = Struct { head: x, _tail: [()] }; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0621]: explicit lifetime required in the type of `y` + --> $DIR/issue-40288-2.rs:14:9 + | +LL | fn lifetime_transmute_slice<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T { + | - consider changing the type of `y` to `&'a T` +LL | let mut out = [x]; + | ^^^^^^^ lifetime `'a` required + +error[E0621]: explicit lifetime required in the type of `y` + --> $DIR/issue-40288-2.rs:29:9 + | +LL | fn lifetime_transmute_struct<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T { + | - consider changing the type of `y` to `&'a T` +LL | let mut out = Struct { head: x, _tail: [()] }; + | ^^^^^^^ lifetime `'a` required + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/compile-fail/issue-40288-2.rs b/src/test/ui/issue-40288-2.rs similarity index 100% rename from src/test/compile-fail/issue-40288-2.rs rename to src/test/ui/issue-40288-2.rs diff --git a/src/test/ui/issue-40288-2.stderr b/src/test/ui/issue-40288-2.stderr new file mode 100644 index 0000000000000..d2313ef89a7da --- /dev/null +++ b/src/test/ui/issue-40288-2.stderr @@ -0,0 +1,21 @@ +error[E0621]: explicit lifetime required in the type of `y` + --> $DIR/issue-40288-2.rs:19:5 + | +LL | fn lifetime_transmute_slice<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T { + | - consider changing the type of `y` to `&'a T` +... +LL | out[0] + | ^^^^^^ lifetime `'a` required + +error[E0621]: explicit lifetime required in the type of `y` + --> $DIR/issue-40288-2.rs:34:5 + | +LL | fn lifetime_transmute_struct<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T { + | - consider changing the type of `y` to `&'a T` +... +LL | out.head + | ^^^^^^^^ lifetime `'a` required + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0621`. diff --git a/src/test/ui/issue-40288.nll.stderr b/src/test/ui/issue-40288.nll.stderr new file mode 100644 index 0000000000000..bd4efa10f3d51 --- /dev/null +++ b/src/test/ui/issue-40288.nll.stderr @@ -0,0 +1,15 @@ +error[E0506]: cannot assign to `*refr` because it is borrowed + --> $DIR/issue-40288.rs:26:5 + | +LL | save_ref(&*refr, &mut out); + | ------ borrow of `*refr` occurs here +... +LL | *refr = 3; //~ ERROR cannot assign to `*refr` because it is borrowed + | ^^^^^^^^^ assignment to borrowed `*refr` occurs here +... +LL | println!("{:?}", out[0]); + | ------ borrow later used here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0506`. diff --git a/src/test/compile-fail/issue-40288.rs b/src/test/ui/issue-40288.rs similarity index 100% rename from src/test/compile-fail/issue-40288.rs rename to src/test/ui/issue-40288.rs diff --git a/src/test/ui/issue-40288.stderr b/src/test/ui/issue-40288.stderr new file mode 100644 index 0000000000000..e69c3bc83a646 --- /dev/null +++ b/src/test/ui/issue-40288.stderr @@ -0,0 +1,12 @@ +error[E0506]: cannot assign to `*refr` because it is borrowed + --> $DIR/issue-40288.rs:26:5 + | +LL | save_ref(&*refr, &mut out); + | ----- borrow of `*refr` occurs here +... +LL | *refr = 3; //~ ERROR cannot assign to `*refr` because it is borrowed + | ^^^^^^^^^ assignment to borrowed `*refr` occurs here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0506`. diff --git a/src/test/compile-fail/issue-40350.rs b/src/test/ui/issue-40350.rs similarity index 100% rename from src/test/compile-fail/issue-40350.rs rename to src/test/ui/issue-40350.rs diff --git a/src/test/ui/issue-40350.stderr b/src/test/ui/issue-40350.stderr new file mode 100644 index 0000000000000..ad85bf2a77814 --- /dev/null +++ b/src/test/ui/issue-40350.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-40350.rs:22:1 + | +LL | fn main() {} + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/ui/issue-40510-1.nll.stderr b/src/test/ui/issue-40510-1.nll.stderr new file mode 100644 index 0000000000000..73a8d58290dfa --- /dev/null +++ b/src/test/ui/issue-40510-1.nll.stderr @@ -0,0 +1,17 @@ +error: unsatisfied lifetime constraints + --> $DIR/issue-40510-1.rs:18:9 + | +LL | || { + | _____- + | |_____| + | || +LL | || &mut x + | || ^^^^^^ free region requires that `'1` must outlive `'2` +LL | || }; + | || - + | ||_____| + | |______lifetime `'1` represents the closure body + | lifetime `'2` appears in return type + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-40510-1.rs b/src/test/ui/issue-40510-1.rs similarity index 100% rename from src/test/compile-fail/issue-40510-1.rs rename to src/test/ui/issue-40510-1.rs diff --git a/src/test/ui/issue-40510-1.stderr b/src/test/ui/issue-40510-1.stderr new file mode 100644 index 0000000000000..1f5a41fce9688 --- /dev/null +++ b/src/test/ui/issue-40510-1.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-40510-1.rs:23:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-40510-2.rs b/src/test/ui/issue-40510-2.rs similarity index 100% rename from src/test/compile-fail/issue-40510-2.rs rename to src/test/ui/issue-40510-2.rs diff --git a/src/test/ui/issue-40510-2.stderr b/src/test/ui/issue-40510-2.stderr new file mode 100644 index 0000000000000..03998af50c2d3 --- /dev/null +++ b/src/test/ui/issue-40510-2.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-40510-2.rs:23:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/ui/issue-40510-3.nll.stderr b/src/test/ui/issue-40510-3.nll.stderr new file mode 100644 index 0000000000000..4133c69f031a5 --- /dev/null +++ b/src/test/ui/issue-40510-3.nll.stderr @@ -0,0 +1,20 @@ +error: unsatisfied lifetime constraints + --> $DIR/issue-40510-3.rs:18:9 + | +LL | || { + | _____- + | |_____| + | || +LL | || || { + | ||_________^ +LL | ||| x.push(()) +LL | ||| } + | |||_________^ free region requires that `'1` must outlive `'2` +LL | || }; + | || - + | ||_____| + | |______lifetime `'1` represents the closure body + | lifetime `'2` appears in return type + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-40510-3.rs b/src/test/ui/issue-40510-3.rs similarity index 100% rename from src/test/compile-fail/issue-40510-3.rs rename to src/test/ui/issue-40510-3.rs diff --git a/src/test/ui/issue-40510-3.stderr b/src/test/ui/issue-40510-3.stderr new file mode 100644 index 0000000000000..c77b5cc830365 --- /dev/null +++ b/src/test/ui/issue-40510-3.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-40510-3.rs:25:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-40510-4.rs b/src/test/ui/issue-40510-4.rs similarity index 100% rename from src/test/compile-fail/issue-40510-4.rs rename to src/test/ui/issue-40510-4.rs diff --git a/src/test/ui/issue-40510-4.stderr b/src/test/ui/issue-40510-4.stderr new file mode 100644 index 0000000000000..1f3cd00fb483b --- /dev/null +++ b/src/test/ui/issue-40510-4.stderr @@ -0,0 +1,8 @@ +error: compilation successful + --> $DIR/issue-40510-4.rs:25:1 + | +LL | fn main() {} //~ ERROR compilation successful + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-40610.rs b/src/test/ui/issue-40610.rs similarity index 100% rename from src/test/compile-fail/issue-40610.rs rename to src/test/ui/issue-40610.rs diff --git a/src/test/ui/issue-40610.stderr b/src/test/ui/issue-40610.stderr new file mode 100644 index 0000000000000..faf1a4d1c3866 --- /dev/null +++ b/src/test/ui/issue-40610.stderr @@ -0,0 +1,11 @@ +error[E0369]: binary operation `+` cannot be applied to type `()` + --> $DIR/issue-40610.rs:14:5 + | +LL | () + f(&[1.0]); + | ^^^^^^^^^^^^^^ + | + = note: an implementation of `std::ops::Add` might be missing for `()` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0369`. diff --git a/src/test/compile-fail/issue-40749.rs b/src/test/ui/issue-40749.rs similarity index 100% rename from src/test/compile-fail/issue-40749.rs rename to src/test/ui/issue-40749.rs diff --git a/src/test/ui/issue-40749.stderr b/src/test/ui/issue-40749.stderr new file mode 100644 index 0000000000000..b76d469d116f8 --- /dev/null +++ b/src/test/ui/issue-40749.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-40749.rs:12:9 + | +LL | [0; ..10]; + | ^^^^ expected usize, found struct `std::ops::RangeTo` + | + = note: expected type `usize` + found type `std::ops::RangeTo<{integer}>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-40845.rs b/src/test/ui/issue-40845.rs similarity index 100% rename from src/test/compile-fail/issue-40845.rs rename to src/test/ui/issue-40845.rs diff --git a/src/test/ui/issue-40845.stderr b/src/test/ui/issue-40845.stderr new file mode 100644 index 0000000000000..2e8f008a52dd7 --- /dev/null +++ b/src/test/ui/issue-40845.stderr @@ -0,0 +1,14 @@ +error: cannot find macro `m!` in this scope + --> $DIR/issue-40845.rs:14:10 + | +LL | impl S { m!(); } //~ ERROR cannot find macro `m!` in this scope + | ^ + +error: cannot find macro `m!` in this scope + --> $DIR/issue-40845.rs:11:11 + | +LL | trait T { m!(); } //~ ERROR cannot find macro `m!` in this scope + | ^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-40861.rs b/src/test/ui/issue-40861.rs similarity index 100% rename from src/test/compile-fail/issue-40861.rs rename to src/test/ui/issue-40861.rs diff --git a/src/test/ui/issue-40861.stderr b/src/test/ui/issue-40861.stderr new file mode 100644 index 0000000000000..dbde40fb25e06 --- /dev/null +++ b/src/test/ui/issue-40861.stderr @@ -0,0 +1,11 @@ +error[E0608]: cannot index into a value of type `()` + --> $DIR/issue-40861.rs:14:5 + | +LL | ()[f(&[1.0])]; + | ^^^^^^^^^^^^^ + | + = help: to access tuple elements, use tuple indexing syntax (e.g. `tuple.0`) + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0608`. diff --git a/src/test/ui/issue-41139.nll.stderr b/src/test/ui/issue-41139.nll.stderr new file mode 100644 index 0000000000000..3f79c66252a0b --- /dev/null +++ b/src/test/ui/issue-41139.nll.stderr @@ -0,0 +1,9 @@ +error[E0161]: cannot move a value of type dyn Trait: the size of dyn Trait cannot be statically determined + --> $DIR/issue-41139.rs:16:23 + | +LL | let t : &Trait = &get_function()(); + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0161`. diff --git a/src/test/compile-fail/issue-41139.rs b/src/test/ui/issue-41139.rs similarity index 100% rename from src/test/compile-fail/issue-41139.rs rename to src/test/ui/issue-41139.rs diff --git a/src/test/ui/issue-41139.stderr b/src/test/ui/issue-41139.stderr new file mode 100644 index 0000000000000..9d0e19df3f28e --- /dev/null +++ b/src/test/ui/issue-41139.stderr @@ -0,0 +1,9 @@ +error[E0161]: cannot move a value of type (dyn Trait + 'static): the size of (dyn Trait + 'static) cannot be statically determined + --> $DIR/issue-41139.rs:16:23 + | +LL | let t : &Trait = &get_function()(); + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0161`. diff --git a/src/test/compile-fail/issue-41229-ref-str.rs b/src/test/ui/issue-41229-ref-str.rs similarity index 100% rename from src/test/compile-fail/issue-41229-ref-str.rs rename to src/test/ui/issue-41229-ref-str.rs diff --git a/src/test/ui/issue-41229-ref-str.stderr b/src/test/ui/issue-41229-ref-str.stderr new file mode 100644 index 0000000000000..889da66a4e849 --- /dev/null +++ b/src/test/ui/issue-41229-ref-str.stderr @@ -0,0 +1,12 @@ +error[E0277]: the size for values of type `str` cannot be known at compilation time + --> $DIR/issue-41229-ref-str.rs:11:28 + | +LL | pub fn example(ref s: str) {} + | ^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `str` + = note: to learn more, visit + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-41255.rs b/src/test/ui/issue-41255.rs similarity index 100% rename from src/test/compile-fail/issue-41255.rs rename to src/test/ui/issue-41255.rs diff --git a/src/test/ui/issue-41255.stderr b/src/test/ui/issue-41255.stderr new file mode 100644 index 0000000000000..03100b6db769a --- /dev/null +++ b/src/test/ui/issue-41255.stderr @@ -0,0 +1,88 @@ +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:20:9 + | +LL | 5.0 => {}, //~ ERROR floating-point types cannot be used in patterns + | ^^^ + | +note: lint level defined here + --> $DIR/issue-41255.rs:15:11 + | +LL | #![forbid(illegal_floating_point_literal_pattern)] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:22:9 + | +LL | 5.0f32 => {}, //~ ERROR floating-point types cannot be used in patterns + | ^^^^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:24:10 + | +LL | -5.0 => {}, //~ ERROR floating-point types cannot be used in patterns + | ^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:26:9 + | +LL | 1.0 .. 33.0 => {}, //~ ERROR floating-point types cannot be used in patterns + | ^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:26:16 + | +LL | 1.0 .. 33.0 => {}, //~ ERROR floating-point types cannot be used in patterns + | ^^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:30:9 + | +LL | 39.0 ..= 70.0 => {}, //~ ERROR floating-point types cannot be used in patterns + | ^^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:30:18 + | +LL | 39.0 ..= 70.0 => {}, //~ ERROR floating-point types cannot be used in patterns + | ^^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:39:10 + | +LL | (3.14, 1) => {}, //~ ERROR floating-point types cannot be used + | ^^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-41255.rs:46:18 + | +LL | Foo { x: 2.0 } => {}, //~ ERROR floating-point types cannot be used + | ^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: aborting due to 9 previous errors + diff --git a/src/test/compile-fail/issue-41394.rs b/src/test/ui/issue-41394.rs similarity index 100% rename from src/test/compile-fail/issue-41394.rs rename to src/test/ui/issue-41394.rs diff --git a/src/test/ui/issue-41394.stderr b/src/test/ui/issue-41394.stderr new file mode 100644 index 0000000000000..9e4afb3b28ac1 --- /dev/null +++ b/src/test/ui/issue-41394.stderr @@ -0,0 +1,11 @@ +error[E0369]: binary operation `+` cannot be applied to type `&str` + --> $DIR/issue-41394.rs:12:9 + | +LL | A = "" + 1 + | ^^^^^^ + | + = note: an implementation of `std::ops::Add` might be missing for `&str` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0369`. diff --git a/src/test/ui/issue-41726.nll.stderr b/src/test/ui/issue-41726.nll.stderr new file mode 100644 index 0000000000000..feeb63e1ebb1b --- /dev/null +++ b/src/test/ui/issue-41726.nll.stderr @@ -0,0 +1,9 @@ +error[E0596]: cannot borrow immutable item as mutable + --> $DIR/issue-41726.rs:15:9 + | +LL | things[src.as_str()].sort(); //~ ERROR cannot borrow immutable + | ^^^^^^^^^^^^^^^^^^^^ cannot borrow as mutable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0596`. diff --git a/src/test/compile-fail/issue-41726.rs b/src/test/ui/issue-41726.rs similarity index 100% rename from src/test/compile-fail/issue-41726.rs rename to src/test/ui/issue-41726.rs diff --git a/src/test/ui/issue-41726.stderr b/src/test/ui/issue-41726.stderr new file mode 100644 index 0000000000000..172309537bf04 --- /dev/null +++ b/src/test/ui/issue-41726.stderr @@ -0,0 +1,9 @@ +error[E0596]: cannot borrow immutable indexed content as mutable + --> $DIR/issue-41726.rs:15:9 + | +LL | things[src.as_str()].sort(); //~ ERROR cannot borrow immutable + | ^^^^^^^^^^^^^^^^^^^^ cannot borrow as mutable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0596`. diff --git a/src/test/compile-fail/issue-41742.rs b/src/test/ui/issue-41742.rs similarity index 100% rename from src/test/compile-fail/issue-41742.rs rename to src/test/ui/issue-41742.rs diff --git a/src/test/ui/issue-41742.stderr b/src/test/ui/issue-41742.stderr new file mode 100644 index 0000000000000..314b44f603acd --- /dev/null +++ b/src/test/ui/issue-41742.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-41742.rs:34:7 + | +LL | H["?"].f(); //~ ERROR mismatched types + | ^^^ expected u32, found reference + | + = note: expected type `u32` + found type `&'static str` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-41776.rs b/src/test/ui/issue-41776.rs similarity index 100% rename from src/test/compile-fail/issue-41776.rs rename to src/test/ui/issue-41776.rs diff --git a/src/test/ui/issue-41776.stderr b/src/test/ui/issue-41776.stderr new file mode 100644 index 0000000000000..9742f091f04a9 --- /dev/null +++ b/src/test/ui/issue-41776.stderr @@ -0,0 +1,8 @@ +error: argument must be a string literal + --> $DIR/issue-41776.rs:12:14 + | +LL | include!(line!()); //~ ERROR argument must be a string literal + | ^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-41880.rs b/src/test/ui/issue-41880.rs similarity index 100% rename from src/test/compile-fail/issue-41880.rs rename to src/test/ui/issue-41880.rs diff --git a/src/test/ui/issue-41880.stderr b/src/test/ui/issue-41880.stderr new file mode 100644 index 0000000000000..fa9fdbd81940e --- /dev/null +++ b/src/test/ui/issue-41880.stderr @@ -0,0 +1,12 @@ +error[E0599]: no method named `iter` found for type `Iterate<{integer}, [closure@$DIR/issue-41880.rs:36:24: 36:31]>` in the current scope + --> $DIR/issue-41880.rs:37:24 + | +LL | pub struct Iterate { + | ------------------------ method `iter` not found for this +... +LL | println!("{:?}", a.iter().take(10).collect::>()); + | ^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-41974.rs b/src/test/ui/issue-41974.rs similarity index 100% rename from src/test/compile-fail/issue-41974.rs rename to src/test/ui/issue-41974.rs diff --git a/src/test/ui/issue-41974.stderr b/src/test/ui/issue-41974.stderr new file mode 100644 index 0000000000000..eca40ed43557d --- /dev/null +++ b/src/test/ui/issue-41974.stderr @@ -0,0 +1,29 @@ +error[E0119]: conflicting implementations of trait `std::ops::Drop` for type `std::boxed::Box<_>`: + --> $DIR/issue-41974.rs:17:1 + | +LL | impl Drop for T where T: A { //~ ERROR E0119 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = note: conflicting implementation in crate `alloc`: + - impl std::ops::Drop for std::boxed::Box + where T: ?Sized; + = note: downstream crates may implement trait `A` for type `std::boxed::Box<_>` + +error[E0120]: the Drop trait may only be implemented on structures + --> $DIR/issue-41974.rs:17:18 + | +LL | impl Drop for T where T: A { //~ ERROR E0119 + | ^ implementing Drop requires a struct + +error[E0210]: type parameter `T` must be used as the type parameter for some local type (e.g. `MyStruct`) + --> $DIR/issue-41974.rs:17:1 + | +LL | impl Drop for T where T: A { //~ ERROR E0119 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type parameter `T` must be used as the type parameter for some local type + | + = note: only traits defined in the current crate can be implemented for a type parameter + +error: aborting due to 3 previous errors + +Some errors occurred: E0119, E0120, E0210. +For more information about an error, try `rustc --explain E0119`. diff --git a/src/test/compile-fail/issue-41998.rs b/src/test/ui/issue-41998.rs similarity index 100% rename from src/test/compile-fail/issue-41998.rs rename to src/test/ui/issue-41998.rs diff --git a/src/test/ui/issue-41998.stderr b/src/test/ui/issue-41998.stderr new file mode 100644 index 0000000000000..e757c7f3a4463 --- /dev/null +++ b/src/test/ui/issue-41998.stderr @@ -0,0 +1,14 @@ +error: compilation successful + --> $DIR/issue-41998.rs:14:1 + | +LL | / fn main() { //~ ERROR compilation successful +LL | | if ('x' as char) < ('y' as char) { +LL | | print!("x"); +LL | | } else { +LL | | print!("y"); +LL | | } +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-4201.rs b/src/test/ui/issue-4201.rs similarity index 100% rename from src/test/compile-fail/issue-4201.rs rename to src/test/ui/issue-4201.rs diff --git a/src/test/ui/issue-4201.stderr b/src/test/ui/issue-4201.stderr new file mode 100644 index 0000000000000..40de077ce764f --- /dev/null +++ b/src/test/ui/issue-4201.stderr @@ -0,0 +1,19 @@ +error[E0317]: if may be missing an else clause + --> $DIR/issue-4201.rs:14:12 + | +LL | } else if false { + | ____________^ +LL | | //~^ ERROR if may be missing an else clause +LL | | //~| expected type `()` +LL | | //~| found type `{integer}` +LL | | //~| expected (), found integral variable +LL | | 1 +LL | | }; + | |_____^ expected (), found integral variable + | + = note: expected type `()` + found type `{integer}` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0317`. diff --git a/src/test/compile-fail/issue-42312.rs b/src/test/ui/issue-42312.rs similarity index 100% rename from src/test/compile-fail/issue-42312.rs rename to src/test/ui/issue-42312.rs diff --git a/src/test/ui/issue-42312.stderr b/src/test/ui/issue-42312.stderr new file mode 100644 index 0000000000000..ae6496c037ac0 --- /dev/null +++ b/src/test/ui/issue-42312.stderr @@ -0,0 +1,22 @@ +error[E0277]: the size for values of type `::Target` cannot be known at compilation time + --> $DIR/issue-42312.rs:14:29 + | +LL | fn baz(_: Self::Target) where Self: Deref {} + | ^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `::Target` + = note: to learn more, visit + = help: consider adding a `where ::Target: std::marker::Sized` bound + +error[E0277]: the size for values of type `(dyn std::string::ToString + 'static)` cannot be known at compilation time + --> $DIR/issue-42312.rs:18:23 + | +LL | pub fn f(_: ToString) {} + | ^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `(dyn std::string::ToString + 'static)` + = note: to learn more, visit + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/ui/issue-42344.nll.stderr b/src/test/ui/issue-42344.nll.stderr new file mode 100644 index 0000000000000..02f6ffe173462 --- /dev/null +++ b/src/test/ui/issue-42344.nll.stderr @@ -0,0 +1,9 @@ +error[E0596]: cannot borrow immutable item `*TAB[..]` as mutable + --> $DIR/issue-42344.rs:14:5 + | +LL | TAB[0].iter_mut(); //~ ERROR cannot borrow data mutably in a `&` reference [E0389] + | ^^^^^^ cannot borrow as mutable + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0596`. diff --git a/src/test/compile-fail/issue-42344.rs b/src/test/ui/issue-42344.rs similarity index 100% rename from src/test/compile-fail/issue-42344.rs rename to src/test/ui/issue-42344.rs diff --git a/src/test/ui/issue-42344.stderr b/src/test/ui/issue-42344.stderr new file mode 100644 index 0000000000000..92bbe70d9ce57 --- /dev/null +++ b/src/test/ui/issue-42344.stderr @@ -0,0 +1,9 @@ +error[E0389]: cannot borrow data mutably in a `&` reference + --> $DIR/issue-42344.rs:14:5 + | +LL | TAB[0].iter_mut(); //~ ERROR cannot borrow data mutably in a `&` reference [E0389] + | ^^^^^^ assignment into an immutable reference + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0389`. diff --git a/src/test/compile-fail/issue-4265.rs b/src/test/ui/issue-4265.rs similarity index 100% rename from src/test/compile-fail/issue-4265.rs rename to src/test/ui/issue-4265.rs diff --git a/src/test/ui/issue-4265.stderr b/src/test/ui/issue-4265.stderr new file mode 100644 index 0000000000000..8f22c6757c222 --- /dev/null +++ b/src/test/ui/issue-4265.stderr @@ -0,0 +1,15 @@ +error[E0201]: duplicate definitions with name `bar`: + --> $DIR/issue-4265.rs:20:5 + | +LL | / fn bar() { +LL | | Foo { baz: 0 }.bar(); +LL | | } + | |_____- previous definition of `bar` here +LL | +LL | / fn bar() { //~ ERROR duplicate definitions +LL | | } + | |_____^ duplicate definition + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0201`. diff --git a/src/test/compile-fail/issue-42755.rs b/src/test/ui/issue-42755.rs similarity index 100% rename from src/test/compile-fail/issue-42755.rs rename to src/test/ui/issue-42755.rs diff --git a/src/test/ui/issue-42755.stderr b/src/test/ui/issue-42755.stderr new file mode 100644 index 0000000000000..9143906199616 --- /dev/null +++ b/src/test/ui/issue-42755.stderr @@ -0,0 +1,13 @@ +error: repetition matches empty token tree + --> $DIR/issue-42755.rs:14:7 + | +LL | ($($p:vis)*) => {} //~ ERROR repetition matches empty token tree + | ^^^^^^^^ + +error[E0601]: `main` function not found in crate `issue_42755` + | + = note: consider adding a `main` function to `$DIR/issue-42755.rs` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0601`. diff --git a/src/test/ui/issue-42796.nll.stderr b/src/test/ui/issue-42796.nll.stderr new file mode 100644 index 0000000000000..fda7cf9ae8ed7 --- /dev/null +++ b/src/test/ui/issue-42796.nll.stderr @@ -0,0 +1,14 @@ +error[E0382]: borrow of moved value: `s` + --> $DIR/issue-42796.rs:28:20 + | +LL | let mut s_copy = s; + | - value moved here +... +LL | println!("{}", s); //~ ERROR use of moved value + | ^ value borrowed here after move + | + = note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-42796.rs b/src/test/ui/issue-42796.rs similarity index 100% rename from src/test/compile-fail/issue-42796.rs rename to src/test/ui/issue-42796.rs diff --git a/src/test/ui/issue-42796.stderr b/src/test/ui/issue-42796.stderr new file mode 100644 index 0000000000000..9c2481b2f90aa --- /dev/null +++ b/src/test/ui/issue-42796.stderr @@ -0,0 +1,14 @@ +error[E0382]: use of moved value: `s` + --> $DIR/issue-42796.rs:28:20 + | +LL | let mut s_copy = s; + | ---------- value moved here +... +LL | println!("{}", s); //~ ERROR use of moved value + | ^ value used here after move + | + = note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0382`. diff --git a/src/test/compile-fail/issue-42880.rs b/src/test/ui/issue-42880.rs similarity index 100% rename from src/test/compile-fail/issue-42880.rs rename to src/test/ui/issue-42880.rs diff --git a/src/test/ui/issue-42880.stderr b/src/test/ui/issue-42880.stderr new file mode 100644 index 0000000000000..cf1c3022a2273 --- /dev/null +++ b/src/test/ui/issue-42880.stderr @@ -0,0 +1,9 @@ +error[E0599]: no associated item named `String` found for type `std::string::String` in the current scope + --> $DIR/issue-42880.rs:14:15 + | +LL | let f = |&Value::String(_)| (); //~ ERROR no associated item named + | ^^^^^^^^^^^^^^^^ associated item not found in `std::string::String` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-43023.rs b/src/test/ui/issue-43023.rs similarity index 100% rename from src/test/compile-fail/issue-43023.rs rename to src/test/ui/issue-43023.rs diff --git a/src/test/ui/issue-43023.stderr b/src/test/ui/issue-43023.stderr new file mode 100644 index 0000000000000..2aa1efa9ca8dc --- /dev/null +++ b/src/test/ui/issue-43023.stderr @@ -0,0 +1,20 @@ +error: `derive` may only be applied to structs, enums and unions + --> $DIR/issue-43023.rs:14:5 + | +LL | #[derive(Debug)] //~ ERROR `derive` may only be applied to structs, enums and unions + | ^^^^^^^^^^^^^^^^ + +error: `derive` may only be applied to structs, enums and unions + --> $DIR/issue-43023.rs:21:5 + | +LL | #[derive(Debug)] //~ ERROR `derive` may only be applied to structs, enums and unions + | ^^^^^^^^^^^^^^^^ + +error: `derive` may only be applied to structs, enums and unions + --> $DIR/issue-43023.rs:26:5 + | +LL | #[derive(Debug)] //~ ERROR `derive` may only be applied to structs, enums and unions + | ^^^^^^^^^^^^^^^^ + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/issue-43105.rs b/src/test/ui/issue-43105.rs similarity index 100% rename from src/test/compile-fail/issue-43105.rs rename to src/test/ui/issue-43105.rs diff --git a/src/test/ui/issue-43105.stderr b/src/test/ui/issue-43105.stderr new file mode 100644 index 0000000000000..18da9310503ea --- /dev/null +++ b/src/test/ui/issue-43105.stderr @@ -0,0 +1,19 @@ +error[E0015]: calls in constants are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-43105.rs:13:17 + | +LL | const NUM: u8 = xyz(); + | ^^^^^ + +error[E0080]: could not evaluate constant pattern + --> $DIR/issue-43105.rs:18:9 + | +LL | const NUM: u8 = xyz(); + | ----- calling non-const fn `xyz` +... +LL | NUM => unimplemented!(), + | ^^^ + +error: aborting due to 2 previous errors + +Some errors occurred: E0015, E0080. +For more information about an error, try `rustc --explain E0015`. diff --git a/src/test/compile-fail/issue-43162.rs b/src/test/ui/issue-43162.rs similarity index 100% rename from src/test/compile-fail/issue-43162.rs rename to src/test/ui/issue-43162.rs diff --git a/src/test/ui/issue-43162.stderr b/src/test/ui/issue-43162.stderr new file mode 100644 index 0000000000000..4b3b4638f26ca --- /dev/null +++ b/src/test/ui/issue-43162.stderr @@ -0,0 +1,30 @@ +error[E0268]: `break` outside of loop + --> $DIR/issue-43162.rs:13:5 + | +LL | break true; //~ ERROR E0268 + | ^^^^^^^^^^ cannot break outside of a loop + +error[E0268]: `break` outside of loop + --> $DIR/issue-43162.rs:17:5 + | +LL | break {}; //~ ERROR E0268 + | ^^^^^^^^ cannot break outside of a loop + +error[E0308]: mismatched types + --> $DIR/issue-43162.rs:11:18 + | +LL | fn foo() -> bool { + | __________________^ +LL | | //~^ ERROR E0308 +LL | | break true; //~ ERROR E0268 + | | - help: consider removing this semicolon +LL | | } + | |_^ expected bool, found () + | + = note: expected type `bool` + found type `()` + +error: aborting due to 3 previous errors + +Some errors occurred: E0268, E0308. +For more information about an error, try `rustc --explain E0268`. diff --git a/src/test/compile-fail/issue-4321.rs b/src/test/ui/issue-4321.rs similarity index 100% rename from src/test/compile-fail/issue-4321.rs rename to src/test/ui/issue-4321.rs diff --git a/src/test/ui/issue-4321.stderr b/src/test/ui/issue-4321.stderr new file mode 100644 index 0000000000000..db52cd557f1be --- /dev/null +++ b/src/test/ui/issue-4321.stderr @@ -0,0 +1,9 @@ +error[E0004]: non-exhaustive patterns: `(true, false)` not covered + --> $DIR/issue-4321.rs:13:31 + | +LL | println!("foo {:}", match tup { //~ ERROR non-exhaustive patterns: `(true, false)` not covered + | ^^^ pattern `(true, false)` not covered + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0004`. diff --git a/src/test/compile-fail/issue-43250.rs b/src/test/ui/issue-43250.rs similarity index 100% rename from src/test/compile-fail/issue-43250.rs rename to src/test/ui/issue-43250.rs diff --git a/src/test/ui/issue-43250.stderr b/src/test/ui/issue-43250.stderr new file mode 100644 index 0000000000000..a05d4d41cc7d7 --- /dev/null +++ b/src/test/ui/issue-43250.stderr @@ -0,0 +1,14 @@ +error: arbitrary expressions aren't allowed in patterns + --> $DIR/issue-43250.rs:19:8 + | +LL | m!(y); + | ^ + +error: arbitrary expressions aren't allowed in patterns + --> $DIR/issue-43250.rs:21:8 + | +LL | m!(C); + | ^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-43355.rs b/src/test/ui/issue-43355.rs similarity index 100% rename from src/test/compile-fail/issue-43355.rs rename to src/test/ui/issue-43355.rs diff --git a/src/test/ui/issue-43355.stderr b/src/test/ui/issue-43355.stderr new file mode 100644 index 0000000000000..dbcf1b52b89c6 --- /dev/null +++ b/src/test/ui/issue-43355.stderr @@ -0,0 +1,16 @@ +error: conflicting implementations of trait `Trait1>` for type `A`: (E0119) + --> $DIR/issue-43355.rs:23:1 + | +LL | impl Trait1 for T where T: Trait2 { + | --------------------------------------------- first implementation here +... +LL | impl Trait1> for A { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `A` + | + = note: #[deny(incoherent_fundamental_impls)] on by default + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #46205 + = note: downstream crates may implement trait `Trait2>` for type `A` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-43424.rs b/src/test/ui/issue-43424.rs similarity index 100% rename from src/test/compile-fail/issue-43424.rs rename to src/test/ui/issue-43424.rs diff --git a/src/test/ui/issue-43424.stderr b/src/test/ui/issue-43424.stderr new file mode 100644 index 0000000000000..3a9a316470399 --- /dev/null +++ b/src/test/ui/issue-43424.stderr @@ -0,0 +1,8 @@ +error: unexpected generic arguments in path + --> $DIR/issue-43424.rs:20:4 + | +LL | m!(inline); //~ ERROR: unexpected generic arguments in path + | ^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-43431.rs b/src/test/ui/issue-43431.rs similarity index 100% rename from src/test/compile-fail/issue-43431.rs rename to src/test/ui/issue-43431.rs diff --git a/src/test/ui/issue-43431.stderr b/src/test/ui/issue-43431.stderr new file mode 100644 index 0000000000000..3eb8fac6c0ff5 --- /dev/null +++ b/src/test/ui/issue-43431.stderr @@ -0,0 +1,9 @@ +error[E0229]: associated type bindings are not allowed here + --> $DIR/issue-43431.rs:19:27 + | +LL | B>::call(self, (a,)) + | ^ associated type not allowed here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0229`. diff --git a/src/test/compile-fail/issue-4366-2.rs b/src/test/ui/issue-4366-2.rs similarity index 100% rename from src/test/compile-fail/issue-4366-2.rs rename to src/test/ui/issue-4366-2.rs diff --git a/src/test/ui/issue-4366-2.stderr b/src/test/ui/issue-4366-2.stderr new file mode 100644 index 0000000000000..1c9a9eb25c371 --- /dev/null +++ b/src/test/ui/issue-4366-2.stderr @@ -0,0 +1,26 @@ +error[E0412]: cannot find type `bar` in this scope + --> $DIR/issue-4366-2.rs:25:21 + | +LL | fn sub() -> bar { 1 } + | ^^^ not found in this scope +help: possible candidate is found in another module, you can import it into scope + | +LL | use a::b::bar; + | + +error[E0423]: expected function, found module `foo` + --> $DIR/issue-4366-2.rs:35:5 + | +LL | foo(); //~ ERROR expected function, found module `foo` + | ^^^ not a function +help: possible better candidates are found in other modules, you can import them into scope + | +LL | use foo::foo; + | +LL | use m1::foo; + | + +error: aborting due to 2 previous errors + +Some errors occurred: E0412, E0423. +For more information about an error, try `rustc --explain E0412`. diff --git a/src/test/compile-fail/issue-4366.rs b/src/test/ui/issue-4366.rs similarity index 100% rename from src/test/compile-fail/issue-4366.rs rename to src/test/ui/issue-4366.rs diff --git a/src/test/ui/issue-4366.stderr b/src/test/ui/issue-4366.stderr new file mode 100644 index 0000000000000..e78aec9d0e86f --- /dev/null +++ b/src/test/ui/issue-4366.stderr @@ -0,0 +1,15 @@ +error[E0425]: cannot find function `foo` in this scope + --> $DIR/issue-4366.rs:28:29 + | +LL | fn sub() -> isize { foo(); 1 } //~ ERROR cannot find function `foo` in this scope + | ^^^ not found in this scope +help: possible candidates are found in other modules, you can import them into scope + | +LL | use foo::foo; + | +LL | use m1::foo; + | + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-43733.rs b/src/test/ui/issue-43733.rs similarity index 100% rename from src/test/compile-fail/issue-43733.rs rename to src/test/ui/issue-43733.rs diff --git a/src/test/ui/issue-43733.stderr b/src/test/ui/issue-43733.stderr new file mode 100644 index 0000000000000..5f91d3d2266db --- /dev/null +++ b/src/test/ui/issue-43733.stderr @@ -0,0 +1,19 @@ +error[E0133]: call to unsafe function is unsafe and requires unsafe function or block + --> $DIR/issue-43733.rs:30:5 + | +LL | __KEY.get() //~ ERROR call to unsafe function is unsafe + | ^^^^^^^^^^^ call to unsafe function + | + = note: consult the function's documentation for information on how to avoid undefined behavior + +error[E0133]: call to unsafe function is unsafe and requires unsafe function or block + --> $DIR/issue-43733.rs:34:5 + | +LL | std::thread::LocalKey::new(__getit, Default::default); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function + | + = note: consult the function's documentation for information on how to avoid undefined behavior + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0133`. diff --git a/src/test/compile-fail/issue-43784-associated-type.rs b/src/test/ui/issue-43784-associated-type.rs similarity index 100% rename from src/test/compile-fail/issue-43784-associated-type.rs rename to src/test/ui/issue-43784-associated-type.rs diff --git a/src/test/ui/issue-43784-associated-type.stderr b/src/test/ui/issue-43784-associated-type.stderr new file mode 100644 index 0000000000000..798d8c6601668 --- /dev/null +++ b/src/test/ui/issue-43784-associated-type.stderr @@ -0,0 +1,16 @@ +error[E0601]: `main` function not found in crate `issue_43784_associated_type` + | + = note: consider adding a `main` function to `$DIR/issue-43784-associated-type.rs` + +error[E0277]: the trait bound `T: std::marker::Copy` is not satisfied + --> $DIR/issue-43784-associated-type.rs:23:9 + | +LL | impl Complete for T { //~ ERROR the trait bound `T: std::marker::Copy` is not satisfied + | ^^^^^^^^ the trait `std::marker::Copy` is not implemented for `T` + | + = help: consider adding a `where T: std::marker::Copy` bound + +error: aborting due to 2 previous errors + +Some errors occurred: E0277, E0601. +For more information about an error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-43784-supertrait.rs b/src/test/ui/issue-43784-supertrait.rs similarity index 100% rename from src/test/compile-fail/issue-43784-supertrait.rs rename to src/test/ui/issue-43784-supertrait.rs diff --git a/src/test/ui/issue-43784-supertrait.stderr b/src/test/ui/issue-43784-supertrait.stderr new file mode 100644 index 0000000000000..8646b315abdab --- /dev/null +++ b/src/test/ui/issue-43784-supertrait.stderr @@ -0,0 +1,16 @@ +error[E0601]: `main` function not found in crate `issue_43784_supertrait` + | + = note: consider adding a `main` function to `$DIR/issue-43784-supertrait.rs` + +error[E0277]: the trait bound `T: std::marker::Copy` is not satisfied + --> $DIR/issue-43784-supertrait.rs:18:9 + | +LL | impl Complete for T {} //~ ERROR the trait bound `T: std::marker::Copy` is not satisfied + | ^^^^^^^^ the trait `std::marker::Copy` is not implemented for `T` + | + = help: consider adding a `where T: std::marker::Copy` bound + +error: aborting due to 2 previous errors + +Some errors occurred: E0277, E0601. +For more information about an error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-43925.rs b/src/test/ui/issue-43925.rs similarity index 100% rename from src/test/compile-fail/issue-43925.rs rename to src/test/ui/issue-43925.rs diff --git a/src/test/ui/issue-43925.stderr b/src/test/ui/issue-43925.stderr new file mode 100644 index 0000000000000..995289aec0173 --- /dev/null +++ b/src/test/ui/issue-43925.stderr @@ -0,0 +1,8 @@ +error: invalid argument for `cfg(..)` + --> $DIR/issue-43925.rs:13:24 + | +LL | #[link(name="foo", cfg("rlib"))] //~ ERROR invalid argument for `cfg(..)` + | ^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-43926.rs b/src/test/ui/issue-43926.rs similarity index 100% rename from src/test/compile-fail/issue-43926.rs rename to src/test/ui/issue-43926.rs diff --git a/src/test/ui/issue-43926.stderr b/src/test/ui/issue-43926.stderr new file mode 100644 index 0000000000000..9719a87b31bc3 --- /dev/null +++ b/src/test/ui/issue-43926.stderr @@ -0,0 +1,8 @@ +error: `cfg()` must have an argument + --> $DIR/issue-43926.rs:11:1 + | +LL | #[link(name="foo", cfg())] //~ ERROR `cfg()` must have an argument + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-43988.rs b/src/test/ui/issue-43988.rs similarity index 100% rename from src/test/compile-fail/issue-43988.rs rename to src/test/ui/issue-43988.rs diff --git a/src/test/ui/issue-43988.stderr b/src/test/ui/issue-43988.stderr new file mode 100644 index 0000000000000..7237851f778e6 --- /dev/null +++ b/src/test/ui/issue-43988.stderr @@ -0,0 +1,79 @@ +warning: `repr` attribute must have a hint + --> $DIR/issue-43988.rs:34:5 + | +LL | #[repr] + | ^^^^^^^ needs a hint + | + = note: #[warn(bad_repr)] on by default + = help: valid hints include `#[repr(C)]`, `#[repr(packed)]`, `#[repr(rust)]` and `#[repr(transparent)]` + = note: for more information, visit + +warning: `repr` attribute must have a hint + --> $DIR/issue-43988.rs:46:14 + | +LL | let _z = #[repr] 1; + | ^^^^^^^ needs a hint + | + = help: valid hints include `#[repr(C)]`, `#[repr(packed)]`, `#[repr(rust)]` and `#[repr(transparent)]` + = note: for more information, visit + +error[E0518]: attribute should be applied to function or closure + --> $DIR/issue-43988.rs:15:5 + | +LL | #[inline] + | ^^^^^^^^^ +LL | let _a = 4; + | ----------- not a function or closure + +error[E0518]: attribute should be applied to function or closure + --> $DIR/issue-43988.rs:20:5 + | +LL | #[inline(XYZ)] + | ^^^^^^^^^^^^^^ +LL | let _b = 4; + | ----------- not a function or closure + +error[E0517]: attribute should not be applied to a statement + --> $DIR/issue-43988.rs:24:5 + | +LL | #[repr(nothing)] + | ^^^^^^^^^^^^^^^^ +LL | let _x = 0; + | ----------- not a struct, enum or union + +error[E0517]: attribute should not be applied to an expression + --> $DIR/issue-43988.rs:28:5 + | +LL | #[repr(something_not_real)] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +LL | / loop { +LL | | () +LL | | }; + | |_____- not defining a struct, enum or union + +error[E0517]: attribute should not be applied to a statement + --> $DIR/issue-43988.rs:34:5 + | +LL | #[repr] + | ^^^^^^^ +LL | let _y = "123"; + | --------------- not a struct, enum or union + +error[E0518]: attribute should be applied to function or closure + --> $DIR/issue-43988.rs:42:5 + | +LL | #[inline(ABC)] + | ^^^^^^^^^^^^^^ +LL | foo(); + | ----- not a function or closure + +error[E0517]: attribute should not be applied to an expression + --> $DIR/issue-43988.rs:46:14 + | +LL | let _z = #[repr] 1; + | ^^^^^^^ - not defining a struct, enum or union + +error: aborting due to 7 previous errors + +Some errors occurred: E0517, E0518. +For more information about an error, try `rustc --explain E0517`. diff --git a/src/test/compile-fail/issue-44021.rs b/src/test/ui/issue-44021.rs similarity index 100% rename from src/test/compile-fail/issue-44021.rs rename to src/test/ui/issue-44021.rs diff --git a/src/test/ui/issue-44021.stderr b/src/test/ui/issue-44021.stderr new file mode 100644 index 0000000000000..2c74531cf2441 --- /dev/null +++ b/src/test/ui/issue-44021.stderr @@ -0,0 +1,8 @@ +error: expected one of `:`, `@`, or `|`, found `}` + --> $DIR/issue-44021.rs:13:18 + | +LL | fn f() {|x, y} //~ ERROR expected one of `:`, `@`, or `|`, found `}` + | ^ expected one of `:`, `@`, or `|` here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-44239.rs b/src/test/ui/issue-44239.rs similarity index 100% rename from src/test/compile-fail/issue-44239.rs rename to src/test/ui/issue-44239.rs diff --git a/src/test/ui/issue-44239.stderr b/src/test/ui/issue-44239.stderr new file mode 100644 index 0000000000000..43d4968a89fd7 --- /dev/null +++ b/src/test/ui/issue-44239.stderr @@ -0,0 +1,9 @@ +error[E0435]: attempt to use a non-constant value in a constant + --> $DIR/issue-44239.rs:16:26 + | +LL | const N: usize = n; + | ^ non-constant value + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0435`. diff --git a/src/test/compile-fail/issue-44373.rs b/src/test/ui/issue-44373.rs similarity index 100% rename from src/test/compile-fail/issue-44373.rs rename to src/test/ui/issue-44373.rs diff --git a/src/test/ui/issue-44373.stderr b/src/test/ui/issue-44373.stderr new file mode 100644 index 0000000000000..17a634ba747a3 --- /dev/null +++ b/src/test/ui/issue-44373.stderr @@ -0,0 +1,13 @@ +error[E0597]: borrowed value does not live long enough + --> $DIR/issue-44373.rs:15:42 + | +LL | let _val: &'static [&'static u32] = &[&FOO]; //~ ERROR borrowed value does not live long enough + | ^^^^^^ temporary value does not live long enough +LL | } + | - temporary value only lives until here + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-44415.rs b/src/test/ui/issue-44415.rs similarity index 91% rename from src/test/compile-fail/issue-44415.rs rename to src/test/ui/issue-44415.rs index ecaf326b0504d..5d295510844ab 100644 --- a/src/test/compile-fail/issue-44415.rs +++ b/src/test/ui/issue-44415.rs @@ -8,7 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern: cycle detected when computing layout of +//~^^^^^^^^^^ ERROR cycle detected when computing layout of #![feature(const_fn)] #![feature(core_intrinsics)] diff --git a/src/test/ui/issue-44415.stderr b/src/test/ui/issue-44415.stderr new file mode 100644 index 0000000000000..ac2072c513ea0 --- /dev/null +++ b/src/test/ui/issue-44415.stderr @@ -0,0 +1,18 @@ +error[E0391]: cycle detected when computing layout of `Foo` + | +note: ...which requires normalizing `ParamEnvAnd { param_env: ParamEnv { caller_bounds: [], reveal: All }, value: [u8; _] }`... +note: ...which requires const-evaluating `Foo::bytes::{{constant}}`... + --> $DIR/issue-44415.rs:19:26 + | +LL | bytes: [u8; unsafe { intrinsics::size_of::() }], + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + = note: ...which again requires computing layout of `Foo`, completing the cycle +note: cycle used when const-evaluating `Foo::bytes::{{constant}}` + --> $DIR/issue-44415.rs:19:26 + | +LL | bytes: [u8; unsafe { intrinsics::size_of::() }], + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0391`. diff --git a/src/test/compile-fail/issue-45087-unreachable-unsafe.rs b/src/test/ui/issue-45087-unreachable-unsafe.rs similarity index 100% rename from src/test/compile-fail/issue-45087-unreachable-unsafe.rs rename to src/test/ui/issue-45087-unreachable-unsafe.rs diff --git a/src/test/ui/issue-45087-unreachable-unsafe.stderr b/src/test/ui/issue-45087-unreachable-unsafe.stderr new file mode 100644 index 0000000000000..8a967838bc3b2 --- /dev/null +++ b/src/test/ui/issue-45087-unreachable-unsafe.stderr @@ -0,0 +1,11 @@ +error[E0133]: dereference of raw pointer is unsafe and requires unsafe function or block + --> $DIR/issue-45087-unreachable-unsafe.rs:13:5 + | +LL | *(1 as *mut u32) = 42; + | ^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer + | + = note: raw pointers may be NULL, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0133`. diff --git a/src/test/compile-fail/issue-4517.rs b/src/test/ui/issue-4517.rs similarity index 100% rename from src/test/compile-fail/issue-4517.rs rename to src/test/ui/issue-4517.rs diff --git a/src/test/ui/issue-4517.stderr b/src/test/ui/issue-4517.stderr new file mode 100644 index 0000000000000..ca96c396fd0bf --- /dev/null +++ b/src/test/ui/issue-4517.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-4517.rs:15:9 + | +LL | bar(foo); + | ^^^ expected usize, found array of 4 elements + | + = note: expected type `usize` + found type `[u8; 4]` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/issue-45199.ast.nll.stderr b/src/test/ui/issue-45199.ast.nll.stderr new file mode 100644 index 0000000000000..ce39776252b6a --- /dev/null +++ b/src/test/ui/issue-45199.ast.nll.stderr @@ -0,0 +1,36 @@ +error[E0384]: cannot assign twice to immutable variable `b` + --> $DIR/issue-45199.rs:19:5 + | +LL | let b: Box; + | - consider changing this to `mut b` +LL | //[mir]~^ NOTE consider changing this to `mut b` +LL | b = Box::new(1); //[ast]~ NOTE first assignment + | - first assignment to `b` +LL | //[mir]~^ NOTE first assignment +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^ cannot assign twice to immutable variable + +error[E0384]: cannot assign twice to immutable variable `b` + --> $DIR/issue-45199.rs:29:5 + | +LL | let b = Box::new(1); //[ast]~ NOTE first assignment + | - + | | + | first assignment to `b` + | consider changing this to `mut b` +... +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^ cannot assign twice to immutable variable + +error[E0384]: cannot assign to immutable argument `b` + --> $DIR/issue-45199.rs:37:5 + | +LL | fn test_args(b: Box) { //[ast]~ NOTE first assignment + | - consider changing this to `mut b` +LL | //[mir]~^ NOTE consider changing this to `mut b` +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^ cannot assign to immutable argument + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0384`. diff --git a/src/test/ui/issue-45199.ast.stderr b/src/test/ui/issue-45199.ast.stderr new file mode 100644 index 0000000000000..ff8f78b511635 --- /dev/null +++ b/src/test/ui/issue-45199.ast.stderr @@ -0,0 +1,30 @@ +error[E0384]: cannot assign twice to immutable variable `b` + --> $DIR/issue-45199.rs:19:5 + | +LL | b = Box::new(1); //[ast]~ NOTE first assignment + | --------------- first assignment to `b` +LL | //[mir]~^ NOTE first assignment +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^^^^^^^^^^^^^^^ cannot assign twice to immutable variable + +error[E0384]: cannot assign twice to immutable variable `b` + --> $DIR/issue-45199.rs:29:5 + | +LL | let b = Box::new(1); //[ast]~ NOTE first assignment + | - first assignment to `b` +... +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^^^^^^^^^^^^^^^ cannot assign twice to immutable variable + +error[E0384]: cannot assign twice to immutable variable `b` + --> $DIR/issue-45199.rs:37:5 + | +LL | fn test_args(b: Box) { //[ast]~ NOTE first assignment + | - first assignment to `b` +LL | //[mir]~^ NOTE consider changing this to `mut b` +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^^^^^^^^^^^^^^^ cannot assign twice to immutable variable + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0384`. diff --git a/src/test/ui/issue-45199.mir.stderr b/src/test/ui/issue-45199.mir.stderr new file mode 100644 index 0000000000000..ce39776252b6a --- /dev/null +++ b/src/test/ui/issue-45199.mir.stderr @@ -0,0 +1,36 @@ +error[E0384]: cannot assign twice to immutable variable `b` + --> $DIR/issue-45199.rs:19:5 + | +LL | let b: Box; + | - consider changing this to `mut b` +LL | //[mir]~^ NOTE consider changing this to `mut b` +LL | b = Box::new(1); //[ast]~ NOTE first assignment + | - first assignment to `b` +LL | //[mir]~^ NOTE first assignment +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^ cannot assign twice to immutable variable + +error[E0384]: cannot assign twice to immutable variable `b` + --> $DIR/issue-45199.rs:29:5 + | +LL | let b = Box::new(1); //[ast]~ NOTE first assignment + | - + | | + | first assignment to `b` + | consider changing this to `mut b` +... +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^ cannot assign twice to immutable variable + +error[E0384]: cannot assign to immutable argument `b` + --> $DIR/issue-45199.rs:37:5 + | +LL | fn test_args(b: Box) { //[ast]~ NOTE first assignment + | - consider changing this to `mut b` +LL | //[mir]~^ NOTE consider changing this to `mut b` +LL | b = Box::new(2); //[ast]~ ERROR cannot assign twice to immutable variable + | ^ cannot assign to immutable argument + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0384`. diff --git a/src/test/compile-fail/issue-45199.rs b/src/test/ui/issue-45199.rs similarity index 100% rename from src/test/compile-fail/issue-45199.rs rename to src/test/ui/issue-45199.rs diff --git a/src/test/compile-fail/issue-45729-unsafe-in-generator.rs b/src/test/ui/issue-45729-unsafe-in-generator.rs similarity index 100% rename from src/test/compile-fail/issue-45729-unsafe-in-generator.rs rename to src/test/ui/issue-45729-unsafe-in-generator.rs diff --git a/src/test/ui/issue-45729-unsafe-in-generator.stderr b/src/test/ui/issue-45729-unsafe-in-generator.stderr new file mode 100644 index 0000000000000..3fad5209fd5ea --- /dev/null +++ b/src/test/ui/issue-45729-unsafe-in-generator.stderr @@ -0,0 +1,11 @@ +error[E0133]: dereference of raw pointer is unsafe and requires unsafe function or block + --> $DIR/issue-45729-unsafe-in-generator.rs:15:9 + | +LL | *(1 as *mut u32) = 42; + | ^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer + | + = note: raw pointers may be NULL, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0133`. diff --git a/src/test/compile-fail/issue-45801.rs b/src/test/ui/issue-45801.rs similarity index 100% rename from src/test/compile-fail/issue-45801.rs rename to src/test/ui/issue-45801.rs diff --git a/src/test/ui/issue-45801.stderr b/src/test/ui/issue-45801.stderr new file mode 100644 index 0000000000000..91c14be88338e --- /dev/null +++ b/src/test/ui/issue-45801.stderr @@ -0,0 +1,12 @@ +error[E0277]: the trait bound `Params: Plugin` is not satisfied + --> $DIR/issue-45801.rs:31:9 + | +LL | req.get_ref::(); + | ^^^^^^^ the trait `Plugin` is not implemented for `Params` + | + = help: the following implementations were found: + > + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-45965.rs b/src/test/ui/issue-45965.rs similarity index 100% rename from src/test/compile-fail/issue-45965.rs rename to src/test/ui/issue-45965.rs diff --git a/src/test/ui/issue-45965.stderr b/src/test/ui/issue-45965.stderr new file mode 100644 index 0000000000000..2b3870feef37c --- /dev/null +++ b/src/test/ui/issue-45965.stderr @@ -0,0 +1,9 @@ +error[E0618]: expected function, found `{float}` + --> $DIR/issue-45965.rs:12:30 + | +LL | let a = |r: f64| if r != 0.0(r != 0.0) { 1.0 } else { 0.0 }; + | ^^^^^^^^^^^^^ not a function + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0618`. diff --git a/src/test/ui/issue-46023.ast.nll.stderr b/src/test/ui/issue-46023.ast.nll.stderr new file mode 100644 index 0000000000000..2fc2924c2ec37 --- /dev/null +++ b/src/test/ui/issue-46023.ast.nll.stderr @@ -0,0 +1,9 @@ +error[E0594]: cannot assign to immutable item `x` + --> $DIR/issue-46023.rs:18:9 + | +LL | x = 1; + | ^^^^^ cannot assign + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/issue-46023.ast.stderr b/src/test/ui/issue-46023.ast.stderr new file mode 100644 index 0000000000000..42fe73d88e6b9 --- /dev/null +++ b/src/test/ui/issue-46023.ast.stderr @@ -0,0 +1,12 @@ +error[E0594]: cannot assign to captured outer variable in an `FnMut` closure + --> $DIR/issue-46023.rs:18:9 + | +LL | let x = 0; + | - help: consider making `x` mutable: `mut x` +... +LL | x = 1; + | ^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/issue-46023.mir.stderr b/src/test/ui/issue-46023.mir.stderr new file mode 100644 index 0000000000000..2fc2924c2ec37 --- /dev/null +++ b/src/test/ui/issue-46023.mir.stderr @@ -0,0 +1,9 @@ +error[E0594]: cannot assign to immutable item `x` + --> $DIR/issue-46023.rs:18:9 + | +LL | x = 1; + | ^^^^^ cannot assign + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/compile-fail/issue-46023.rs b/src/test/ui/issue-46023.rs similarity index 100% rename from src/test/compile-fail/issue-46023.rs rename to src/test/ui/issue-46023.rs diff --git a/src/test/compile-fail/issue-46036.rs b/src/test/ui/issue-46036.rs similarity index 100% rename from src/test/compile-fail/issue-46036.rs rename to src/test/ui/issue-46036.rs diff --git a/src/test/ui/issue-46036.stderr b/src/test/ui/issue-46036.stderr new file mode 100644 index 0000000000000..e0df49f582338 --- /dev/null +++ b/src/test/ui/issue-46036.stderr @@ -0,0 +1,14 @@ +error[E0597]: `a` does not live long enough + --> $DIR/issue-46036.rs:19:24 + | +LL | let foo = Foo { x: &a }; //~ ERROR E0597 + | ^^ borrowed value does not live long enough +LL | loop { } +LL | } + | - borrowed value only lives until here + | + = note: borrowed value must be valid for the static lifetime... + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0597`. diff --git a/src/test/compile-fail/issue-46311.rs b/src/test/ui/issue-46311.rs similarity index 100% rename from src/test/compile-fail/issue-46311.rs rename to src/test/ui/issue-46311.rs diff --git a/src/test/ui/issue-46311.stderr b/src/test/ui/issue-46311.stderr new file mode 100644 index 0000000000000..790399c75ee0f --- /dev/null +++ b/src/test/ui/issue-46311.stderr @@ -0,0 +1,8 @@ +error: invalid label name `'break` + --> $DIR/issue-46311.rs:12:5 + | +LL | 'break: loop { //~ ERROR invalid label name `'break` + | ^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-46438.rs b/src/test/ui/issue-46438.rs similarity index 100% rename from src/test/compile-fail/issue-46438.rs rename to src/test/ui/issue-46438.rs diff --git a/src/test/ui/issue-46438.stderr b/src/test/ui/issue-46438.stderr new file mode 100644 index 0000000000000..b0d6229d24b1f --- /dev/null +++ b/src/test/ui/issue-46438.stderr @@ -0,0 +1,8 @@ +error: expected a trait, found type + --> $DIR/issue-46438.rs:21:4 + | +LL | m!(&'static u8); //~ ERROR expected a trait, found type + | ^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/ui/issue-46604.ast.nll.stderr b/src/test/ui/issue-46604.ast.nll.stderr new file mode 100644 index 0000000000000..b947bec639737 --- /dev/null +++ b/src/test/ui/issue-46604.ast.nll.stderr @@ -0,0 +1,16 @@ +error[E0017]: references in statics may only refer to immutable values + --> $DIR/issue-46604.rs:14:25 + | +LL | static buf: &mut [u8] = &mut [1u8,2,3,4,5,7]; //[ast]~ ERROR E0017 + | ^^^^^^^^^^^^^^^^^^^^ statics require immutable values + +error[E0594]: cannot assign to immutable item `buf[..]` + --> $DIR/issue-46604.rs:20:5 + | +LL | buf[0]=2; //[ast]~ ERROR E0389 + | ^^^^^^^^ cannot assign + +error: aborting due to 2 previous errors + +Some errors occurred: E0017, E0594. +For more information about an error, try `rustc --explain E0017`. diff --git a/src/test/ui/issue-46604.ast.stderr b/src/test/ui/issue-46604.ast.stderr new file mode 100644 index 0000000000000..713ba476a1c27 --- /dev/null +++ b/src/test/ui/issue-46604.ast.stderr @@ -0,0 +1,16 @@ +error[E0017]: references in statics may only refer to immutable values + --> $DIR/issue-46604.rs:14:25 + | +LL | static buf: &mut [u8] = &mut [1u8,2,3,4,5,7]; //[ast]~ ERROR E0017 + | ^^^^^^^^^^^^^^^^^^^^ statics require immutable values + +error[E0389]: cannot assign to data in a `&` reference + --> $DIR/issue-46604.rs:20:5 + | +LL | buf[0]=2; //[ast]~ ERROR E0389 + | ^^^^^^^^ assignment into an immutable reference + +error: aborting due to 2 previous errors + +Some errors occurred: E0017, E0389. +For more information about an error, try `rustc --explain E0017`. diff --git a/src/test/ui/issue-46604.mir.stderr b/src/test/ui/issue-46604.mir.stderr new file mode 100644 index 0000000000000..b947bec639737 --- /dev/null +++ b/src/test/ui/issue-46604.mir.stderr @@ -0,0 +1,16 @@ +error[E0017]: references in statics may only refer to immutable values + --> $DIR/issue-46604.rs:14:25 + | +LL | static buf: &mut [u8] = &mut [1u8,2,3,4,5,7]; //[ast]~ ERROR E0017 + | ^^^^^^^^^^^^^^^^^^^^ statics require immutable values + +error[E0594]: cannot assign to immutable item `buf[..]` + --> $DIR/issue-46604.rs:20:5 + | +LL | buf[0]=2; //[ast]~ ERROR E0389 + | ^^^^^^^^ cannot assign + +error: aborting due to 2 previous errors + +Some errors occurred: E0017, E0594. +For more information about an error, try `rustc --explain E0017`. diff --git a/src/test/compile-fail/issue-46604.rs b/src/test/ui/issue-46604.rs similarity index 100% rename from src/test/compile-fail/issue-46604.rs rename to src/test/ui/issue-46604.rs diff --git a/src/test/compile-fail/issue-46771.rs b/src/test/ui/issue-46771.rs similarity index 100% rename from src/test/compile-fail/issue-46771.rs rename to src/test/ui/issue-46771.rs diff --git a/src/test/ui/issue-46771.stderr b/src/test/ui/issue-46771.stderr new file mode 100644 index 0000000000000..0d57d61e9ffe6 --- /dev/null +++ b/src/test/ui/issue-46771.stderr @@ -0,0 +1,11 @@ +error[E0618]: expected function, found `main::Foo` + --> $DIR/issue-46771.rs:13:23 + | +LL | struct Foo; + | ----------- `main::Foo` defined here +LL | (1 .. 2).find(|_| Foo(0) == 0); //~ ERROR expected function, found `main::Foo` + | ^^^^^^ not a function + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0618`. diff --git a/src/test/compile-fail/issue-46843.rs b/src/test/ui/issue-46843.rs similarity index 100% rename from src/test/compile-fail/issue-46843.rs rename to src/test/ui/issue-46843.rs diff --git a/src/test/ui/issue-46843.stderr b/src/test/ui/issue-46843.stderr new file mode 100644 index 0000000000000..9b752f41f59e4 --- /dev/null +++ b/src/test/ui/issue-46843.stderr @@ -0,0 +1,16 @@ +error[E0015]: calls in constants are limited to constant functions, tuple structs and tuple variants + --> $DIR/issue-46843.rs:17:26 + | +LL | pub const Q: i32 = match non_const() { //~ ERROR E0015 + | ^^^^^^^^^^^ + +error[E0019]: constant contains unimplemented expression type + --> $DIR/issue-46843.rs:18:5 + | +LL | Thing::This => 1, //~ ERROR unimplemented expression type + | ^^^^^^^^^^^ + +error: aborting due to 2 previous errors + +Some errors occurred: E0015, E0019. +For more information about an error, try `rustc --explain E0015`. diff --git a/src/test/compile-fail/issue-47309.rs b/src/test/ui/issue-47309.rs similarity index 100% rename from src/test/compile-fail/issue-47309.rs rename to src/test/ui/issue-47309.rs diff --git a/src/test/compile-fail/issue-4736.rs b/src/test/ui/issue-4736.rs similarity index 100% rename from src/test/compile-fail/issue-4736.rs rename to src/test/ui/issue-4736.rs diff --git a/src/test/ui/issue-4736.stderr b/src/test/ui/issue-4736.stderr new file mode 100644 index 0000000000000..6c0acc0b63f40 --- /dev/null +++ b/src/test/ui/issue-4736.stderr @@ -0,0 +1,9 @@ +error[E0560]: struct `NonCopyable` has no field named `p` + --> $DIR/issue-4736.rs:14:26 + | +LL | let z = NonCopyable{ p: () }; //~ ERROR struct `NonCopyable` has no field named `p` + | ^ field does not exist - did you mean `0`? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0560`. diff --git a/src/test/compile-fail/issue-47412.rs b/src/test/ui/issue-47412.rs similarity index 100% rename from src/test/compile-fail/issue-47412.rs rename to src/test/ui/issue-47412.rs diff --git a/src/test/ui/issue-47412.stderr b/src/test/ui/issue-47412.stderr new file mode 100644 index 0000000000000..6ca404003a581 --- /dev/null +++ b/src/test/ui/issue-47412.stderr @@ -0,0 +1,19 @@ +error[E0133]: access to union field is unsafe and requires unsafe function or block + --> $DIR/issue-47412.rs:21:5 + | +LL | match u.void {} + | ^^^^^^^^^^^^^^^ access to union field + | + = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior + +error[E0133]: dereference of raw pointer is unsafe and requires unsafe function or block + --> $DIR/issue-47412.rs:27:5 + | +LL | match *ptr {} + | ^^^^^^^^^^^^^ dereference of raw pointer + | + = note: raw pointers may be NULL, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0133`. diff --git a/src/test/compile-fail/issue-47715.rs b/src/test/ui/issue-47715.rs similarity index 100% rename from src/test/compile-fail/issue-47715.rs rename to src/test/ui/issue-47715.rs diff --git a/src/test/ui/issue-47715.stderr b/src/test/ui/issue-47715.stderr new file mode 100644 index 0000000000000..29b6afe7d0729 --- /dev/null +++ b/src/test/ui/issue-47715.stderr @@ -0,0 +1,27 @@ +error[E0562]: `impl Trait` not allowed outside of function and inherent method return types + --> $DIR/issue-47715.rs:19:37 + | +LL | struct Container> { + | ^^^^^^^^ + +error[E0562]: `impl Trait` not allowed outside of function and inherent method return types + --> $DIR/issue-47715.rs:24:30 + | +LL | enum Enum> { + | ^^^^^^^^ + +error[E0562]: `impl Trait` not allowed outside of function and inherent method return types + --> $DIR/issue-47715.rs:29:32 + | +LL | union Union + Copy> { + | ^^^^^^^^ + +error[E0562]: `impl Trait` not allowed outside of function and inherent method return types + --> $DIR/issue-47715.rs:34:30 + | +LL | type Type> = T; + | ^^^^^^^^ + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0562`. diff --git a/src/test/compile-fail/issue-48131.rs b/src/test/ui/issue-48131.rs similarity index 100% rename from src/test/compile-fail/issue-48131.rs rename to src/test/ui/issue-48131.rs diff --git a/src/test/ui/issue-48131.stderr b/src/test/ui/issue-48131.stderr new file mode 100644 index 0000000000000..d0ba1a1c37d0e --- /dev/null +++ b/src/test/ui/issue-48131.stderr @@ -0,0 +1,20 @@ +error: unnecessary `unsafe` block + --> $DIR/issue-48131.rs:18:9 + | +LL | unsafe { /* unnecessary */ } //~ ERROR unnecessary `unsafe` + | ^^^^^^ unnecessary `unsafe` block + | +note: lint level defined here + --> $DIR/issue-48131.rs:13:9 + | +LL | #![deny(unused_unsafe)] //~ NOTE + | ^^^^^^^^^^^^^ + +error: unnecessary `unsafe` block + --> $DIR/issue-48131.rs:29:13 + | +LL | unsafe { /* unnecessary */ } //~ ERROR unnecessary `unsafe` + | ^^^^^^ unnecessary `unsafe` block + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-48838.rs b/src/test/ui/issue-48838.rs similarity index 100% rename from src/test/compile-fail/issue-48838.rs rename to src/test/ui/issue-48838.rs diff --git a/src/test/ui/issue-48838.stderr b/src/test/ui/issue-48838.stderr new file mode 100644 index 0000000000000..2c7e682a982e2 --- /dev/null +++ b/src/test/ui/issue-48838.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-48838.rs:12:14 + | +LL | Square = |x| x, //~ ERROR mismatched types + | ^^^^^ expected isize, found closure + | + = note: expected type `isize` + found type `[closure@$DIR/issue-48838.rs:12:14: 12:19]` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-4968.rs b/src/test/ui/issue-4968.rs similarity index 100% rename from src/test/compile-fail/issue-4968.rs rename to src/test/ui/issue-4968.rs diff --git a/src/test/ui/issue-4968.stderr b/src/test/ui/issue-4968.stderr new file mode 100644 index 0000000000000..a9d58eda6e82e --- /dev/null +++ b/src/test/ui/issue-4968.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-4968.rs:15:16 + | +LL | match 42 { A => () } + | ^ expected integral variable, found tuple + | + = note: expected type `{integer}` + found type `(isize, isize)` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-4972.rs b/src/test/ui/issue-4972.rs similarity index 100% rename from src/test/compile-fail/issue-4972.rs rename to src/test/ui/issue-4972.rs diff --git a/src/test/ui/issue-4972.stderr b/src/test/ui/issue-4972.stderr new file mode 100644 index 0000000000000..e9c1bdb6f8621 --- /dev/null +++ b/src/test/ui/issue-4972.stderr @@ -0,0 +1,9 @@ +error[E0033]: type `std::boxed::Box<(dyn MyTrait + 'static)>` cannot be dereferenced + --> $DIR/issue-4972.rs:24:25 + | +LL | TraitWrapper::A(box ref map) => map, //~ ERROR cannot be dereferenced + | ^^^^^^^^^^^ type `std::boxed::Box<(dyn MyTrait + 'static)>` cannot be dereferenced + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0033`. diff --git a/src/test/compile-fail/issue-50471.rs b/src/test/ui/issue-50471.rs similarity index 100% rename from src/test/compile-fail/issue-50471.rs rename to src/test/ui/issue-50471.rs diff --git a/src/test/compile-fail/issue-50600.rs b/src/test/ui/issue-50600.rs similarity index 100% rename from src/test/compile-fail/issue-50600.rs rename to src/test/ui/issue-50600.rs diff --git a/src/test/ui/issue-50600.stderr b/src/test/ui/issue-50600.stderr new file mode 100644 index 0000000000000..a72dbace24862 --- /dev/null +++ b/src/test/ui/issue-50600.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-50600.rs:12:13 + | +LL | fn([u8; |x: u8| {}]), //~ ERROR mismatched types + | ^^^^^^^^^^ expected usize, found closure + | + = note: expected type `usize` + found type `[closure@$DIR/issue-50600.rs:12:13: 12:23]` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-5062.rs b/src/test/ui/issue-5062.rs similarity index 100% rename from src/test/compile-fail/issue-5062.rs rename to src/test/ui/issue-5062.rs diff --git a/src/test/ui/issue-5062.stderr b/src/test/ui/issue-5062.stderr new file mode 100644 index 0000000000000..988c5c137b4bf --- /dev/null +++ b/src/test/ui/issue-5062.stderr @@ -0,0 +1,9 @@ +error[E0282]: type annotations needed + --> $DIR/issue-5062.rs:11:29 + | +LL | fn main() { format!("{:?}", None); } + | ^^^^ cannot infer type for `T` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-5067.rs b/src/test/ui/issue-5067.rs similarity index 100% rename from src/test/compile-fail/issue-5067.rs rename to src/test/ui/issue-5067.rs diff --git a/src/test/ui/issue-5067.stderr b/src/test/ui/issue-5067.stderr new file mode 100644 index 0000000000000..2ea3ea5204c9c --- /dev/null +++ b/src/test/ui/issue-5067.stderr @@ -0,0 +1,62 @@ +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:14:8 + | +LL | ( $()* ) => {}; + | ^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:16:8 + | +LL | ( $()+ ) => {}; + | ^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:22:9 + | +LL | ( [$()*] ) => {}; + | ^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:24:9 + | +LL | ( [$()+] ) => {}; + | ^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:30:8 + | +LL | ( $($()* $(),* $(a)* $(a),* )* ) => {}; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:32:8 + | +LL | ( $($()* $(),* $(a)* $(a),* )+ ) => {}; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:38:12 + | +LL | ( $(a $()+)* ) => {}; + | ^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:40:12 + | +LL | ( $(a $()*)+ ) => {}; + | ^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:48:18 + | +LL | (a $e1:expr $($(, a $e2:expr)*)*) => ([$e1 $($(, $e2)*)*]); + | ^^^^^^^^^^^^^^^^^^ + +error: repetition matches empty token tree + --> $DIR/issue-5067.rs:60:8 + | +LL | ( $()* ) => {} + | ^^ + +error: aborting due to 10 previous errors + diff --git a/src/test/compile-fail/issue-50688.rs b/src/test/ui/issue-50688.rs similarity index 100% rename from src/test/compile-fail/issue-50688.rs rename to src/test/ui/issue-50688.rs diff --git a/src/test/ui/issue-50688.stderr b/src/test/ui/issue-50688.stderr new file mode 100644 index 0000000000000..094b0e1ec89b2 --- /dev/null +++ b/src/test/ui/issue-50688.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-50688.rs:12:9 + | +LL | [1; || {}]; //~ ERROR mismatched types + | ^^^^^ expected usize, found closure + | + = note: expected type `usize` + found type `[closure@$DIR/issue-50688.rs:12:9: 12:14]` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-5099.rs b/src/test/ui/issue-5099.rs similarity index 100% rename from src/test/compile-fail/issue-5099.rs rename to src/test/ui/issue-5099.rs diff --git a/src/test/ui/issue-5099.stderr b/src/test/ui/issue-5099.stderr new file mode 100644 index 0000000000000..26a26f731cf3e --- /dev/null +++ b/src/test/ui/issue-5099.stderr @@ -0,0 +1,9 @@ +error[E0425]: cannot find value `this` in this scope + --> $DIR/issue-5099.rs:12:31 + | +LL | trait B < A > { fn a() -> A { this.a } } //~ ERROR cannot find value `this` in this scope + | ^^^^ not found in this scope + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-5100.rs b/src/test/ui/issue-5100.rs similarity index 100% rename from src/test/compile-fail/issue-5100.rs rename to src/test/ui/issue-5100.rs diff --git a/src/test/ui/issue-5100.stderr b/src/test/ui/issue-5100.stderr new file mode 100644 index 0000000000000..6f5a84966bf35 --- /dev/null +++ b/src/test/ui/issue-5100.stderr @@ -0,0 +1,63 @@ +error[E0308]: mismatched types + --> $DIR/issue-5100.rs:18:9 + | +LL | A::B => (), + | ^^^^ expected tuple, found enum `A` + | + = note: expected type `(bool, bool)` + found type `A` + +error[E0308]: mismatched types + --> $DIR/issue-5100.rs:27:9 + | +LL | (true, false, false) => () + | ^^^^^^^^^^^^^^^^^^^^ expected a tuple with 2 elements, found one with 3 elements + | + = note: expected type `(bool, bool)` + found type `(_, _, _)` + +error[E0308]: mismatched types + --> $DIR/issue-5100.rs:35:9 + | +LL | (true, false, false) => () + | ^^^^^^^^^^^^^^^^^^^^ expected a tuple with 2 elements, found one with 3 elements + | + = note: expected type `(bool, bool)` + found type `(_, _, _)` + +error[E0308]: mismatched types + --> $DIR/issue-5100.rs:43:9 + | +LL | box (true, false) => () + | ^^^^^^^^^^^^^^^^^ expected tuple, found struct `std::boxed::Box` + | + = note: expected type `(bool, bool)` + found type `std::boxed::Box<_>` + +error[E0308]: mismatched types + --> $DIR/issue-5100.rs:50:9 + | +LL | &(true, false) => () + | ^^^^^^^^^^^^^^ expected tuple, found reference + | + = note: expected type `(bool, bool)` + found type `&_` + +error[E0618]: expected function, found `(char, char)` + --> $DIR/issue-5100.rs:58:14 + | +LL | let v = [('a', 'b') //~ ERROR expected function, found `(char, char)` + | ______________^ +LL | | ('c', 'd'), + | |_______________________^ not a function + +error[E0308]: mismatched types + --> $DIR/issue-5100.rs:65:19 + | +LL | let x: char = true; //~ ERROR mismatched types + | ^^^^ expected char, found bool + +error: aborting due to 7 previous errors + +Some errors occurred: E0308, E0618. +For more information about an error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-5153.rs b/src/test/ui/issue-5153.rs similarity index 100% rename from src/test/compile-fail/issue-5153.rs rename to src/test/ui/issue-5153.rs diff --git a/src/test/ui/issue-5153.stderr b/src/test/ui/issue-5153.stderr new file mode 100644 index 0000000000000..6f8dce109e1e8 --- /dev/null +++ b/src/test/ui/issue-5153.stderr @@ -0,0 +1,13 @@ +error[E0599]: no method named `foo` found for type `&dyn Foo` in the current scope + --> $DIR/issue-5153.rs:20:23 + | +LL | (&5isize as &Foo).foo(); + | ^^^ + | + = help: items from traits can only be used if the trait is implemented and in scope + = note: the following trait defines an item `foo`, perhaps you need to implement it: + candidate #1: `Foo` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-5216.rs b/src/test/ui/issue-5216.rs similarity index 100% rename from src/test/compile-fail/issue-5216.rs rename to src/test/ui/issue-5216.rs diff --git a/src/test/ui/issue-5216.stderr b/src/test/ui/issue-5216.stderr new file mode 100644 index 0000000000000..7ea329749a0a4 --- /dev/null +++ b/src/test/ui/issue-5216.stderr @@ -0,0 +1,21 @@ +error[E0308]: mismatched types + --> $DIR/issue-5216.rs:13:21 + | +LL | pub static C: S = S(f); //~ ERROR mismatched types + | ^ expected struct `std::boxed::Box`, found fn item + | + = note: expected type `std::boxed::Box<(dyn std::ops::FnMut() + 'static)>` + found type `fn() {f}` + +error[E0308]: mismatched types + --> $DIR/issue-5216.rs:18:19 + | +LL | pub static D: T = g; //~ ERROR mismatched types + | ^ expected struct `std::boxed::Box`, found fn item + | + = note: expected type `std::boxed::Box<(dyn std::ops::FnMut() + 'static)>` + found type `fn() {g}` + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/issue-52213.nll.stderr b/src/test/ui/issue-52213.nll.stderr new file mode 100644 index 0000000000000..c288cf9ed820c --- /dev/null +++ b/src/test/ui/issue-52213.nll.stderr @@ -0,0 +1,14 @@ +warning: not reporting region error due to nll + --> $DIR/issue-52213.rs:12:11 + | +LL | match (&t,) { //~ ERROR cannot infer an appropriate lifetime + | ^^^^^ + +error: unsatisfied lifetime constraints + --> $DIR/issue-52213.rs:13:11 + | +LL | ((u,),) => u, + | ^ free region requires that `'a` must outlive `'b` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-52213.rs b/src/test/ui/issue-52213.rs similarity index 100% rename from src/test/compile-fail/issue-52213.rs rename to src/test/ui/issue-52213.rs diff --git a/src/test/ui/issue-52213.stderr b/src/test/ui/issue-52213.stderr new file mode 100644 index 0000000000000..3c650881d7bdf --- /dev/null +++ b/src/test/ui/issue-52213.stderr @@ -0,0 +1,28 @@ +error[E0495]: cannot infer an appropriate lifetime due to conflicting requirements + --> $DIR/issue-52213.rs:12:11 + | +LL | match (&t,) { //~ ERROR cannot infer an appropriate lifetime + | ^^^^^ + | +note: first, the lifetime cannot outlive the lifetime 'a as defined on the function body at 11:23... + --> $DIR/issue-52213.rs:11:23 + | +LL | fn transmute_lifetime<'a, 'b, T>(t: &'a (T,)) -> &'b T { + | ^^ + = note: ...so that the types are compatible: + expected (&&(T,),) + found (&&'a (T,),) +note: but, the lifetime must be valid for the lifetime 'b as defined on the function body at 11:27... + --> $DIR/issue-52213.rs:11:27 + | +LL | fn transmute_lifetime<'a, 'b, T>(t: &'a (T,)) -> &'b T { + | ^^ +note: ...so that reference does not outlive borrowed content + --> $DIR/issue-52213.rs:13:20 + | +LL | ((u,),) => u, + | ^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0495`. diff --git a/src/test/compile-fail/issue-5358-1.rs b/src/test/ui/issue-5358-1.rs similarity index 100% rename from src/test/compile-fail/issue-5358-1.rs rename to src/test/ui/issue-5358-1.rs diff --git a/src/test/ui/issue-5358-1.stderr b/src/test/ui/issue-5358-1.stderr new file mode 100644 index 0000000000000..abaea462fcc5f --- /dev/null +++ b/src/test/ui/issue-5358-1.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-5358-1.rs:16:9 + | +LL | Either::Right(_) => {} + | ^^^^^^^^^^^^^^^^ expected struct `S`, found enum `Either` + | + = note: expected type `S` + found type `Either<_, _>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-5439.rs b/src/test/ui/issue-5439.rs similarity index 100% rename from src/test/compile-fail/issue-5439.rs rename to src/test/ui/issue-5439.rs diff --git a/src/test/ui/issue-5439.stderr b/src/test/ui/issue-5439.stderr new file mode 100644 index 0000000000000..87e20f3a03d03 --- /dev/null +++ b/src/test/ui/issue-5439.stderr @@ -0,0 +1,11 @@ +error[E0560]: struct `Foo` has no field named `nonexistent` + --> $DIR/issue-5439.rs:23:26 + | +LL | return box Foo { nonexistent: self, foo: i }; //~ ERROR: no field named + | ^^^^^^^^^^^ `Foo` does not have this field + | + = note: available fields are: `foo` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0560`. diff --git a/src/test/compile-fail/issue-5883.rs b/src/test/ui/issue-5883.rs similarity index 100% rename from src/test/compile-fail/issue-5883.rs rename to src/test/ui/issue-5883.rs diff --git a/src/test/ui/issue-5883.stderr b/src/test/ui/issue-5883.stderr new file mode 100644 index 0000000000000..43ce3697d8372 --- /dev/null +++ b/src/test/ui/issue-5883.stderr @@ -0,0 +1,24 @@ +error[E0277]: the size for values of type `(dyn A + 'static)` cannot be known at compilation time + --> $DIR/issue-5883.rs:17:15 + | +LL | fn new_struct(r: A+'static) + | ^ doesn't have a size known at compile-time + | + = help: the trait `std::marker::Sized` is not implemented for `(dyn A + 'static)` + = note: to learn more, visit + = note: all local variables must have a statically known size + +error[E0277]: the size for values of type `(dyn A + 'static)` cannot be known at compilation time + --> $DIR/issue-5883.rs:18:8 + | +LL | -> Struct { //~^ ERROR the size for values of type + | ^^^^^^ doesn't have a size known at compile-time + | + = help: within `Struct`, the trait `std::marker::Sized` is not implemented for `(dyn A + 'static)` + = note: to learn more, visit + = note: required because it appears within the type `Struct` + = note: the return type of a function must have a statically known size + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-5927.rs b/src/test/ui/issue-5927.rs similarity index 100% rename from src/test/compile-fail/issue-5927.rs rename to src/test/ui/issue-5927.rs diff --git a/src/test/ui/issue-5927.stderr b/src/test/ui/issue-5927.stderr new file mode 100644 index 0000000000000..f8b9b15678d49 --- /dev/null +++ b/src/test/ui/issue-5927.stderr @@ -0,0 +1,16 @@ +error[E0531]: cannot find tuple struct/variant `x` in this scope + --> $DIR/issue-5927.rs:14:9 + | +LL | x(1) => x(1) //~ ERROR cannot find tuple struct/variant `x` in this scope + | ^ not found in this scope + +error[E0425]: cannot find function `x` in this scope + --> $DIR/issue-5927.rs:14:17 + | +LL | x(1) => x(1) //~ ERROR cannot find tuple struct/variant `x` in this scope + | ^ not found in this scope + +error: aborting due to 2 previous errors + +Some errors occurred: E0425, E0531. +For more information about an error, try `rustc --explain E0425`. diff --git a/src/test/compile-fail/issue-5997-enum.rs b/src/test/ui/issue-5997-enum.rs similarity index 100% rename from src/test/compile-fail/issue-5997-enum.rs rename to src/test/ui/issue-5997-enum.rs diff --git a/src/test/ui/issue-5997-enum.stderr b/src/test/ui/issue-5997-enum.stderr new file mode 100644 index 0000000000000..9f26f653ebd9e --- /dev/null +++ b/src/test/ui/issue-5997-enum.stderr @@ -0,0 +1,13 @@ +error[E0401]: can't use type parameters from outer function + --> $DIR/issue-5997-enum.rs:12:16 + | +LL | fn f() -> bool { + | - - type variable from outer function + | | + | try adding a local type parameter in this method instead +LL | enum E { V(Z) } + | ^ use of type variable from outer function + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0401`. diff --git a/src/test/compile-fail/issue-5997-struct.rs b/src/test/ui/issue-5997-struct.rs similarity index 100% rename from src/test/compile-fail/issue-5997-struct.rs rename to src/test/ui/issue-5997-struct.rs diff --git a/src/test/ui/issue-5997-struct.stderr b/src/test/ui/issue-5997-struct.stderr new file mode 100644 index 0000000000000..fd6d67bd1280c --- /dev/null +++ b/src/test/ui/issue-5997-struct.stderr @@ -0,0 +1,13 @@ +error[E0401]: can't use type parameters from outer function + --> $DIR/issue-5997-struct.rs:12:14 + | +LL | fn f() -> bool { + | - - type variable from outer function + | | + | try adding a local type parameter in this method instead +LL | struct S(T); //~ ERROR can't use type parameters from outer function + | ^ use of type variable from outer function + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0401`. diff --git a/src/test/compile-fail/issue-6458-2.rs b/src/test/ui/issue-6458-2.rs similarity index 100% rename from src/test/compile-fail/issue-6458-2.rs rename to src/test/ui/issue-6458-2.rs diff --git a/src/test/ui/issue-6458-2.stderr b/src/test/ui/issue-6458-2.stderr new file mode 100644 index 0000000000000..e192c2c3be3cc --- /dev/null +++ b/src/test/ui/issue-6458-2.stderr @@ -0,0 +1,9 @@ +error[E0282]: type annotations needed + --> $DIR/issue-6458-2.rs:13:21 + | +LL | format!("{:?}", None); + | ^^^^ cannot infer type for `T` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. diff --git a/src/test/compile-fail/issue-6596-1.rs b/src/test/ui/issue-6596-1.rs similarity index 90% rename from src/test/compile-fail/issue-6596-1.rs rename to src/test/ui/issue-6596-1.rs index e988f404c3c6f..ce8a3a80e1f84 100644 --- a/src/test/compile-fail/issue-6596-1.rs +++ b/src/test/ui/issue-6596-1.rs @@ -8,11 +8,11 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern: unknown macro variable `nonexistent` macro_rules! e { ($inp:ident) => ( $nonexistent + //~^ ERROR unknown macro variable `nonexistent` ); } diff --git a/src/test/ui/issue-6596-1.stderr b/src/test/ui/issue-6596-1.stderr new file mode 100644 index 0000000000000..b7055ab19d0c5 --- /dev/null +++ b/src/test/ui/issue-6596-1.stderr @@ -0,0 +1,11 @@ +error: unknown macro variable `nonexistent` + --> $DIR/issue-6596-1.rs:14:9 + | +LL | $nonexistent + | ^^^^^^^^^^^^ unknown macro variable +... +LL | e!(foo); + | -------- in this macro invocation + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-6596-2.rs b/src/test/ui/issue-6596-2.rs similarity index 86% rename from src/test/compile-fail/issue-6596-2.rs rename to src/test/ui/issue-6596-2.rs index 0158ad4ba4e03..3e18de6178a63 100644 --- a/src/test/compile-fail/issue-6596-2.rs +++ b/src/test/ui/issue-6596-2.rs @@ -10,11 +10,11 @@ #![feature(macro_rules)] -// error-pattern: unknown macro variable `nonexistent` - macro_rules! g { ($inp:ident) => ( { $inp $nonexistent } + //~^ ERROR unknown macro variable `nonexistent` + //~| ERROR expected one of ); } diff --git a/src/test/ui/issue-6596-2.stderr b/src/test/ui/issue-6596-2.stderr new file mode 100644 index 0000000000000..f2ed17f35e697 --- /dev/null +++ b/src/test/ui/issue-6596-2.stderr @@ -0,0 +1,20 @@ +error: unknown macro variable `nonexistent` + --> $DIR/issue-6596-2.rs:15:16 + | +LL | { $inp $nonexistent } + | ^^^^^^^^^^^^ unknown macro variable +... +LL | g!(foo); + | -------- in this macro invocation + +error: expected one of `!`, `.`, `::`, `;`, `?`, `{`, `}`, or an operator, found `nonexistent` + --> $DIR/issue-6596-2.rs:15:16 + | +LL | { $inp $nonexistent } + | ^^^^^^^^^^^^ expected one of 8 possible tokens here +... +LL | g!(foo); + | -------- in this macro invocation + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-6642.rs b/src/test/ui/issue-6642.rs similarity index 100% rename from src/test/compile-fail/issue-6642.rs rename to src/test/ui/issue-6642.rs diff --git a/src/test/ui/issue-6642.stderr b/src/test/ui/issue-6642.stderr new file mode 100644 index 0000000000000..1762af52eb065 --- /dev/null +++ b/src/test/ui/issue-6642.stderr @@ -0,0 +1,11 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/issue-6642.rs:15:13 + | +LL | self.m() //~ ERROR can't capture dynamic environment in a fn item + | ^^^^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0434`. diff --git a/src/test/compile-fail/issue-6738.rs b/src/test/ui/issue-6738.rs similarity index 100% rename from src/test/compile-fail/issue-6738.rs rename to src/test/ui/issue-6738.rs diff --git a/src/test/ui/issue-6738.stderr b/src/test/ui/issue-6738.stderr new file mode 100644 index 0000000000000..8c0aff9d9abdb --- /dev/null +++ b/src/test/ui/issue-6738.stderr @@ -0,0 +1,13 @@ +error[E0368]: binary assignment operation `+=` cannot be applied to type `T` + --> $DIR/issue-6738.rs:16:9 + | +LL | self.x += v.x; + | ------^^^^^^^ + | | + | cannot use `+=` on type `T` + | + = note: `T` might need a bound for `std::ops::AddAssign` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0368`. diff --git a/src/test/ui/issue-6801.nll.stderr b/src/test/ui/issue-6801.nll.stderr new file mode 100644 index 0000000000000..5436397c68ead --- /dev/null +++ b/src/test/ui/issue-6801.nll.stderr @@ -0,0 +1,14 @@ +error[E0505]: cannot move out of `x` because it is borrowed + --> $DIR/issue-6801.rs:29:13 + | +LL | let sq = || { *x * *x }; + | -------------- borrow of `x` occurs here +LL | +LL | twice(x); //~ ERROR: cannot move out of + | ^ move out of `x` occurs here +LL | invoke(sq); + | -- borrow later used here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0505`. diff --git a/src/test/compile-fail/issue-6801.rs b/src/test/ui/issue-6801.rs similarity index 100% rename from src/test/compile-fail/issue-6801.rs rename to src/test/ui/issue-6801.rs diff --git a/src/test/ui/issue-6801.stderr b/src/test/ui/issue-6801.stderr new file mode 100644 index 0000000000000..8a1c669f0b2f6 --- /dev/null +++ b/src/test/ui/issue-6801.stderr @@ -0,0 +1,12 @@ +error[E0505]: cannot move out of `x` because it is borrowed + --> $DIR/issue-6801.rs:29:13 + | +LL | let sq = || { *x * *x }; + | -- borrow of `x` occurs here +LL | +LL | twice(x); //~ ERROR: cannot move out of + | ^ move out of `x` occurs here + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0505`. diff --git a/src/test/compile-fail/issue-6804.rs b/src/test/ui/issue-6804.rs similarity index 100% rename from src/test/compile-fail/issue-6804.rs rename to src/test/ui/issue-6804.rs diff --git a/src/test/ui/issue-6804.stderr b/src/test/ui/issue-6804.stderr new file mode 100644 index 0000000000000..45eefbfaf8ead --- /dev/null +++ b/src/test/ui/issue-6804.stderr @@ -0,0 +1,25 @@ +error: floating-point types cannot be used in patterns + --> $DIR/issue-6804.rs:21:9 + | +LL | NAN => {}, //~ ERROR floating-point types cannot be used + | ^^^ + | +note: lint level defined here + --> $DIR/issue-6804.rs:14:9 + | +LL | #![deny(illegal_floating_point_literal_pattern)] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: floating-point types cannot be used in patterns + --> $DIR/issue-6804.rs:27:10 + | +LL | [NAN, _] => {}, //~ ERROR floating-point types cannot be used + | ^^^ + | + = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! + = note: for more information, see issue #41620 + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/issue-6936.rs b/src/test/ui/issue-6936.rs similarity index 100% rename from src/test/compile-fail/issue-6936.rs rename to src/test/ui/issue-6936.rs diff --git a/src/test/ui/issue-6936.stderr b/src/test/ui/issue-6936.stderr new file mode 100644 index 0000000000000..48fcbf40622a2 --- /dev/null +++ b/src/test/ui/issue-6936.stderr @@ -0,0 +1,43 @@ +error[E0428]: the name `Foo` is defined multiple times + --> $DIR/issue-6936.rs:15:5 + | +LL | type Foo = ::T; + | --------------- previous definition of the type `Foo` here +LL | mod Foo {} //~ ERROR the name `Foo` is defined multiple times + | ^^^^^^^ `Foo` redefined here + | + = note: `Foo` must be defined only once in the type namespace of this module + +error[E0428]: the name `Foo` is defined multiple times + --> $DIR/issue-6936.rs:20:5 + | +LL | type Foo = ::T; + | --------------- previous definition of the type `Foo` here +LL | struct Foo; //~ ERROR the name `Foo` is defined multiple times + | ^^^^^^^^^^^ `Foo` redefined here + | + = note: `Foo` must be defined only once in the type namespace of this module + +error[E0428]: the name `Foo` is defined multiple times + --> $DIR/issue-6936.rs:25:5 + | +LL | type Foo = ::T; + | --------------- previous definition of the type `Foo` here +LL | enum Foo {} //~ ERROR the name `Foo` is defined multiple times + | ^^^^^^^^ `Foo` redefined here + | + = note: `Foo` must be defined only once in the type namespace of this module + +error[E0428]: the name `Bar` is defined multiple times + --> $DIR/issue-6936.rs:35:5 + | +LL | type Bar = T; + | ---------------- previous definition of the type `Bar` here +LL | mod Bar {} //~ ERROR the name `Bar` is defined multiple times + | ^^^^^^^ `Bar` redefined here + | + = note: `Bar` must be defined only once in the type namespace of this module + +error: aborting due to 4 previous errors + +For more information about this error, try `rustc --explain E0428`. diff --git a/src/test/compile-fail/issue-7013.rs b/src/test/ui/issue-7013.rs similarity index 100% rename from src/test/compile-fail/issue-7013.rs rename to src/test/ui/issue-7013.rs diff --git a/src/test/ui/issue-7013.stderr b/src/test/ui/issue-7013.stderr new file mode 100644 index 0000000000000..fec6e06a699a2 --- /dev/null +++ b/src/test/ui/issue-7013.stderr @@ -0,0 +1,14 @@ +error[E0277]: `std::rc::Rc>` cannot be sent between threads safely + --> $DIR/issue-7013.rs:36:19 + | +LL | let a = A {v: box B{v: None} as Box}; + | ^^^^^^^^^^^^^^ `std::rc::Rc>` cannot be sent between threads safely + | + = help: within `B`, the trait `std::marker::Send` is not implemented for `std::rc::Rc>` + = note: required because it appears within the type `std::option::Option>>` + = note: required because it appears within the type `B` + = note: required for the cast to the object type `dyn Foo + std::marker::Send` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/compile-fail/issue-7044.rs b/src/test/ui/issue-7044.rs similarity index 100% rename from src/test/compile-fail/issue-7044.rs rename to src/test/ui/issue-7044.rs diff --git a/src/test/ui/issue-7044.stderr b/src/test/ui/issue-7044.stderr new file mode 100644 index 0000000000000..02707b2d21ebe --- /dev/null +++ b/src/test/ui/issue-7044.stderr @@ -0,0 +1,13 @@ +error[E0428]: the name `X` is defined multiple times + --> $DIR/issue-7044.rs:12:1 + | +LL | static X: isize = 0; + | -------------------- previous definition of the value `X` here +LL | struct X; //~ ERROR the name `X` is defined multiple times + | ^^^^^^^^^ `X` redefined here + | + = note: `X` must be defined only once in the value namespace of this module + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0428`. diff --git a/src/test/compile-fail/issue-7061.rs b/src/test/ui/issue-7061.rs similarity index 100% rename from src/test/compile-fail/issue-7061.rs rename to src/test/ui/issue-7061.rs diff --git a/src/test/ui/issue-7061.stderr b/src/test/ui/issue-7061.stderr new file mode 100644 index 0000000000000..4f142ba95bc5e --- /dev/null +++ b/src/test/ui/issue-7061.stderr @@ -0,0 +1,14 @@ +error[E0308]: mismatched types + --> $DIR/issue-7061.rs:14:46 + | +LL | fn foo(&'a mut self) -> Box { self } + | -------------- ^^^^ expected struct `std::boxed::Box`, found mutable reference + | | + | expected `std::boxed::Box` because of return type + | + = note: expected type `std::boxed::Box` + found type `&'a mut BarStruct` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-7092.rs b/src/test/ui/issue-7092.rs similarity index 100% rename from src/test/compile-fail/issue-7092.rs rename to src/test/ui/issue-7092.rs diff --git a/src/test/ui/issue-7092.stderr b/src/test/ui/issue-7092.stderr new file mode 100644 index 0000000000000..3c8160982891d --- /dev/null +++ b/src/test/ui/issue-7092.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-7092.rs:16:9 + | +LL | Some(field) => + | ^^^^^^^^^^^ expected enum `Whatever`, found enum `std::option::Option` + | + = note: expected type `Whatever` + found type `std::option::Option<_>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-7246.rs b/src/test/ui/issue-7246.rs similarity index 100% rename from src/test/compile-fail/issue-7246.rs rename to src/test/ui/issue-7246.rs diff --git a/src/test/ui/issue-7246.stderr b/src/test/ui/issue-7246.stderr new file mode 100644 index 0000000000000..75c716e5a04fd --- /dev/null +++ b/src/test/ui/issue-7246.stderr @@ -0,0 +1,14 @@ +error: unreachable statement + --> $DIR/issue-7246.rs:17:5 + | +LL | if *ptr::null() {}; //~ ERROR unreachable + | ^^^^^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-7246.rs:11:9 + | +LL | #![deny(unreachable_code)] + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-7364.rs b/src/test/ui/issue-7364.rs similarity index 100% rename from src/test/compile-fail/issue-7364.rs rename to src/test/ui/issue-7364.rs diff --git a/src/test/ui/issue-7364.stderr b/src/test/ui/issue-7364.stderr new file mode 100644 index 0000000000000..b0d732bdb6fa6 --- /dev/null +++ b/src/test/ui/issue-7364.stderr @@ -0,0 +1,21 @@ +error[E0010]: allocations are not allowed in statics + --> $DIR/issue-7364.rs:16:37 + | +LL | static boxed: Box> = box RefCell::new(0); + | ^^^^^^^^^^^^^^^^^^^ allocation not allowed in statics + +error[E0277]: `std::cell::RefCell` cannot be shared between threads safely + --> $DIR/issue-7364.rs:16:1 + | +LL | static boxed: Box> = box RefCell::new(0); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::cell::RefCell` cannot be shared between threads safely + | + = help: the trait `std::marker::Sync` is not implemented for `std::cell::RefCell` + = note: required because of the requirements on the impl of `std::marker::Sync` for `std::ptr::Unique>` + = note: required because it appears within the type `std::boxed::Box>` + = note: shared static variables must have a type that implements `Sync` + +error: aborting due to 2 previous errors + +Some errors occurred: E0010, E0277. +For more information about an error, try `rustc --explain E0010`. diff --git a/src/test/compile-fail/issue-7607-1.rs b/src/test/ui/issue-7607-1.rs similarity index 100% rename from src/test/compile-fail/issue-7607-1.rs rename to src/test/ui/issue-7607-1.rs diff --git a/src/test/ui/issue-7607-1.stderr b/src/test/ui/issue-7607-1.stderr new file mode 100644 index 0000000000000..bebf1c1ae98cf --- /dev/null +++ b/src/test/ui/issue-7607-1.stderr @@ -0,0 +1,9 @@ +error[E0412]: cannot find type `Fo` in this scope + --> $DIR/issue-7607-1.rs:15:6 + | +LL | impl Fo { //~ ERROR cannot find type `Fo` in this scope + | ^^ did you mean `Fn`? + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0412`. diff --git a/src/test/compile-fail/issue-7867.rs b/src/test/ui/issue-7867.rs similarity index 100% rename from src/test/compile-fail/issue-7867.rs rename to src/test/ui/issue-7867.rs diff --git a/src/test/ui/issue-7867.stderr b/src/test/ui/issue-7867.stderr new file mode 100644 index 0000000000000..03ab54d112f2c --- /dev/null +++ b/src/test/ui/issue-7867.stderr @@ -0,0 +1,12 @@ +error[E0308]: mismatched types + --> $DIR/issue-7867.rs:17:9 + | +LL | A::B => (), + | ^^^^ expected tuple, found enum `A` + | + = note: expected type `(bool, bool)` + found type `A` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-7950.rs b/src/test/ui/issue-7950.rs similarity index 100% rename from src/test/compile-fail/issue-7950.rs rename to src/test/ui/issue-7950.rs diff --git a/src/test/ui/issue-7950.stderr b/src/test/ui/issue-7950.stderr new file mode 100644 index 0000000000000..750127981b1cc --- /dev/null +++ b/src/test/ui/issue-7950.stderr @@ -0,0 +1,12 @@ +error[E0599]: no function or associated item named `bar` found for type `Foo` in the current scope + --> $DIR/issue-7950.rs:16:5 + | +LL | struct Foo; + | ----------- function or associated item `bar` not found for this +... +LL | Foo::bar(); + | ^^^^^^^^ function or associated item not found in `Foo` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/compile-fail/issue-7970a.rs b/src/test/ui/issue-7970a.rs similarity index 100% rename from src/test/compile-fail/issue-7970a.rs rename to src/test/ui/issue-7970a.rs diff --git a/src/test/ui/issue-7970a.stderr b/src/test/ui/issue-7970a.stderr new file mode 100644 index 0000000000000..7ad95717185b8 --- /dev/null +++ b/src/test/ui/issue-7970a.stderr @@ -0,0 +1,8 @@ +error: unexpected end of macro invocation + --> $DIR/issue-7970a.rs:16:5 + | +LL | one_arg_macro!(); + | ^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-7970b.rs b/src/test/ui/issue-7970b.rs similarity index 100% rename from src/test/compile-fail/issue-7970b.rs rename to src/test/ui/issue-7970b.rs diff --git a/src/test/ui/issue-7970b.stderr b/src/test/ui/issue-7970b.stderr new file mode 100644 index 0000000000000..b2feb677863d9 --- /dev/null +++ b/src/test/ui/issue-7970b.stderr @@ -0,0 +1,8 @@ +error: unexpected end of macro invocation + --> $DIR/issue-7970b.rs:13:1 + | +LL | macro_rules! test {} + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-8153.rs b/src/test/ui/issue-8153.rs similarity index 100% rename from src/test/compile-fail/issue-8153.rs rename to src/test/ui/issue-8153.rs diff --git a/src/test/ui/issue-8153.stderr b/src/test/ui/issue-8153.stderr new file mode 100644 index 0000000000000..03fb89f8ccc97 --- /dev/null +++ b/src/test/ui/issue-8153.stderr @@ -0,0 +1,11 @@ +error[E0201]: duplicate definitions with name `bar`: + --> $DIR/issue-8153.rs:21:5 + | +LL | fn bar(&self) -> isize {1} + | -------------------------- previous definition of `bar` here +LL | fn bar(&self) -> isize {2} //~ ERROR duplicate definitions + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definition + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0201`. diff --git a/src/test/compile-fail/issue-8208.rs b/src/test/ui/issue-8208.rs similarity index 100% rename from src/test/compile-fail/issue-8208.rs rename to src/test/ui/issue-8208.rs diff --git a/src/test/ui/issue-8208.stderr b/src/test/ui/issue-8208.stderr new file mode 100644 index 0000000000000..73a9a6a51becd --- /dev/null +++ b/src/test/ui/issue-8208.stderr @@ -0,0 +1,21 @@ +error[E0432]: unresolved import `self::*` + --> $DIR/issue-8208.rs:11:5 + | +LL | use self::*; //~ ERROR: unresolved import `self::*` [E0432] + | ^^^^^^^ Cannot glob-import a module into itself. + +error[E0432]: unresolved import `foo::*` + --> $DIR/issue-8208.rs:15:9 + | +LL | use foo::*; //~ ERROR: unresolved import `foo::*` [E0432] + | ^^^^^^ Cannot glob-import a module into itself. + +error[E0432]: unresolved import `super::bar::*` + --> $DIR/issue-8208.rs:19:13 + | +LL | use super::bar::*; + | ^^^^^^^^^^^^^ Cannot glob-import a module into itself. + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0432`. diff --git a/src/test/compile-fail/issue-8460-const.rs b/src/test/ui/issue-8460-const.rs similarity index 100% rename from src/test/compile-fail/issue-8460-const.rs rename to src/test/ui/issue-8460-const.rs diff --git a/src/test/ui/issue-8460-const.stderr b/src/test/ui/issue-8460-const.stderr new file mode 100644 index 0000000000000..db35cde756923 --- /dev/null +++ b/src/test/ui/issue-8460-const.stderr @@ -0,0 +1,248 @@ +error: attempt to divide with overflow + --> $DIR/issue-8460-const.rs:17:36 + | +LL | assert!(thread::spawn(move|| { isize::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^^^ + | +note: lint level defined here + --> $DIR/issue-8460-const.rs:11:9 + | +LL | #![deny(const_err)] + | ^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:17:36 + | +LL | assert!(thread::spawn(move|| { isize::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^^^ attempt to divide with overflow + +error: attempt to divide with overflow + --> $DIR/issue-8460-const.rs:20:36 + | +LL | assert!(thread::spawn(move|| { i8::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:20:36 + | +LL | assert!(thread::spawn(move|| { i8::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^ attempt to divide with overflow + +error: attempt to divide with overflow + --> $DIR/issue-8460-const.rs:23:36 + | +LL | assert!(thread::spawn(move|| { i16::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:23:36 + | +LL | assert!(thread::spawn(move|| { i16::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^ attempt to divide with overflow + +error: attempt to divide with overflow + --> $DIR/issue-8460-const.rs:26:36 + | +LL | assert!(thread::spawn(move|| { i32::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:26:36 + | +LL | assert!(thread::spawn(move|| { i32::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^ attempt to divide with overflow + +error: attempt to divide with overflow + --> $DIR/issue-8460-const.rs:29:36 + | +LL | assert!(thread::spawn(move|| { i64::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:29:36 + | +LL | assert!(thread::spawn(move|| { i64::MIN / -1; }).join().is_err()); + | ^^^^^^^^^^^^^ attempt to divide with overflow + +error: attempt to divide by zero + --> $DIR/issue-8460-const.rs:32:36 + | +LL | assert!(thread::spawn(move|| { 1isize / 0; }).join().is_err()); + | ^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:32:36 + | +LL | assert!(thread::spawn(move|| { 1isize / 0; }).join().is_err()); + | ^^^^^^^^^^ attempt to divide by zero + +error: attempt to divide by zero + --> $DIR/issue-8460-const.rs:35:36 + | +LL | assert!(thread::spawn(move|| { 1i8 / 0; }).join().is_err()); + | ^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:35:36 + | +LL | assert!(thread::spawn(move|| { 1i8 / 0; }).join().is_err()); + | ^^^^^^^ attempt to divide by zero + +error: attempt to divide by zero + --> $DIR/issue-8460-const.rs:38:36 + | +LL | assert!(thread::spawn(move|| { 1i16 / 0; }).join().is_err()); + | ^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:38:36 + | +LL | assert!(thread::spawn(move|| { 1i16 / 0; }).join().is_err()); + | ^^^^^^^^ attempt to divide by zero + +error: attempt to divide by zero + --> $DIR/issue-8460-const.rs:41:36 + | +LL | assert!(thread::spawn(move|| { 1i32 / 0; }).join().is_err()); + | ^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:41:36 + | +LL | assert!(thread::spawn(move|| { 1i32 / 0; }).join().is_err()); + | ^^^^^^^^ attempt to divide by zero + +error: attempt to divide by zero + --> $DIR/issue-8460-const.rs:44:36 + | +LL | assert!(thread::spawn(move|| { 1i64 / 0; }).join().is_err()); + | ^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:44:36 + | +LL | assert!(thread::spawn(move|| { 1i64 / 0; }).join().is_err()); + | ^^^^^^^^ attempt to divide by zero + +error: attempt to calculate the remainder with overflow + --> $DIR/issue-8460-const.rs:47:36 + | +LL | assert!(thread::spawn(move|| { isize::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:47:36 + | +LL | assert!(thread::spawn(move|| { isize::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^^^ attempt to calculate the remainder with overflow + +error: attempt to calculate the remainder with overflow + --> $DIR/issue-8460-const.rs:50:36 + | +LL | assert!(thread::spawn(move|| { i8::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:50:36 + | +LL | assert!(thread::spawn(move|| { i8::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^ attempt to calculate the remainder with overflow + +error: attempt to calculate the remainder with overflow + --> $DIR/issue-8460-const.rs:53:36 + | +LL | assert!(thread::spawn(move|| { i16::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:53:36 + | +LL | assert!(thread::spawn(move|| { i16::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^ attempt to calculate the remainder with overflow + +error: attempt to calculate the remainder with overflow + --> $DIR/issue-8460-const.rs:56:36 + | +LL | assert!(thread::spawn(move|| { i32::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:56:36 + | +LL | assert!(thread::spawn(move|| { i32::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^ attempt to calculate the remainder with overflow + +error: attempt to calculate the remainder with overflow + --> $DIR/issue-8460-const.rs:59:36 + | +LL | assert!(thread::spawn(move|| { i64::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:59:36 + | +LL | assert!(thread::spawn(move|| { i64::MIN % -1; }).join().is_err()); + | ^^^^^^^^^^^^^ attempt to calculate the remainder with overflow + +error: attempt to calculate the remainder with a divisor of zero + --> $DIR/issue-8460-const.rs:62:36 + | +LL | assert!(thread::spawn(move|| { 1isize % 0; }).join().is_err()); + | ^^^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:62:36 + | +LL | assert!(thread::spawn(move|| { 1isize % 0; }).join().is_err()); + | ^^^^^^^^^^ attempt to calculate the remainder with a divisor of zero + +error: attempt to calculate the remainder with a divisor of zero + --> $DIR/issue-8460-const.rs:65:36 + | +LL | assert!(thread::spawn(move|| { 1i8 % 0; }).join().is_err()); + | ^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:65:36 + | +LL | assert!(thread::spawn(move|| { 1i8 % 0; }).join().is_err()); + | ^^^^^^^ attempt to calculate the remainder with a divisor of zero + +error: attempt to calculate the remainder with a divisor of zero + --> $DIR/issue-8460-const.rs:68:36 + | +LL | assert!(thread::spawn(move|| { 1i16 % 0; }).join().is_err()); + | ^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:68:36 + | +LL | assert!(thread::spawn(move|| { 1i16 % 0; }).join().is_err()); + | ^^^^^^^^ attempt to calculate the remainder with a divisor of zero + +error: attempt to calculate the remainder with a divisor of zero + --> $DIR/issue-8460-const.rs:71:36 + | +LL | assert!(thread::spawn(move|| { 1i32 % 0; }).join().is_err()); + | ^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:71:36 + | +LL | assert!(thread::spawn(move|| { 1i32 % 0; }).join().is_err()); + | ^^^^^^^^ attempt to calculate the remainder with a divisor of zero + +error: attempt to calculate the remainder with a divisor of zero + --> $DIR/issue-8460-const.rs:74:36 + | +LL | assert!(thread::spawn(move|| { 1i64 % 0; }).join().is_err()); + | ^^^^^^^^ + +error: this expression will panic at runtime + --> $DIR/issue-8460-const.rs:74:36 + | +LL | assert!(thread::spawn(move|| { 1i64 % 0; }).join().is_err()); + | ^^^^^^^^ attempt to calculate the remainder with a divisor of zero + +error: aborting due to 40 previous errors + diff --git a/src/test/compile-fail/issue-8640.rs b/src/test/ui/issue-8640.rs similarity index 100% rename from src/test/compile-fail/issue-8640.rs rename to src/test/ui/issue-8640.rs diff --git a/src/test/ui/issue-8640.stderr b/src/test/ui/issue-8640.stderr new file mode 100644 index 0000000000000..68fdea6e22805 --- /dev/null +++ b/src/test/ui/issue-8640.stderr @@ -0,0 +1,17 @@ +error[E0255]: the name `bar` is defined multiple times + --> $DIR/issue-8640.rs:15:5 + | +LL | use baz::bar; + | -------- previous import of the module `bar` here +LL | mod bar {} + | ^^^^^^^ `bar` redefined here + | + = note: `bar` must be defined only once in the type namespace of this module +help: You can use `as` to change the binding name of the import + | +LL | use baz::bar as other_bar; + | ^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0255`. diff --git a/src/test/compile-fail/issue-8727.rs b/src/test/ui/issue-8727.rs similarity index 82% rename from src/test/compile-fail/issue-8727.rs rename to src/test/ui/issue-8727.rs index 18b7948c46c7c..fc88a2c81b4e8 100644 --- a/src/test/compile-fail/issue-8727.rs +++ b/src/test/ui/issue-8727.rs @@ -8,14 +8,15 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// error-pattern:reached the recursion limit while instantiating `generic::() { generic::>(); } +//~^^^ ERROR reached the recursion limit while instantiating `generic:: $DIR/issue-8727.rs:14:1 + | +LL | fn generic() { + | ^^^^^^^^^^^^^^^ cannot return without recurring +LL | generic::>(); + | ---------------------- recursive call site + | + = note: #[warn(unconditional_recursion)] on by default + = help: a `loop` may express intention better if this is on purpose + +error: reached the recursion limit while instantiating `generic::>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + --> $DIR/issue-8727.rs:14:1 + | +LL | / fn generic() { +LL | | generic::>(); +LL | | } + | |_^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/issue-8761.rs b/src/test/ui/issue-8761.rs similarity index 100% rename from src/test/compile-fail/issue-8761.rs rename to src/test/ui/issue-8761.rs diff --git a/src/test/ui/issue-8761.stderr b/src/test/ui/issue-8761.stderr new file mode 100644 index 0000000000000..b8144df383576 --- /dev/null +++ b/src/test/ui/issue-8761.stderr @@ -0,0 +1,15 @@ +error[E0308]: mismatched types + --> $DIR/issue-8761.rs:12:9 + | +LL | A = 1i64, + | ^^^^ expected isize, found i64 + +error[E0308]: mismatched types + --> $DIR/issue-8761.rs:15:9 + | +LL | B = 2u8 + | ^^^ expected isize, found u8 + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-8767.rs b/src/test/ui/issue-8767.rs similarity index 100% rename from src/test/compile-fail/issue-8767.rs rename to src/test/ui/issue-8767.rs diff --git a/src/test/ui/issue-8767.stderr b/src/test/ui/issue-8767.stderr new file mode 100644 index 0000000000000..d03e20ba270f0 --- /dev/null +++ b/src/test/ui/issue-8767.stderr @@ -0,0 +1,9 @@ +error[E0412]: cannot find type `B` in this scope + --> $DIR/issue-8767.rs:11:6 + | +LL | impl B { //~ ERROR cannot find type `B` in this scope + | ^ not found in this scope + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0412`. diff --git a/src/test/compile-fail/issue-9575.rs b/src/test/ui/issue-9575.rs similarity index 100% rename from src/test/compile-fail/issue-9575.rs rename to src/test/ui/issue-9575.rs diff --git a/src/test/ui/issue-9575.stderr b/src/test/ui/issue-9575.stderr new file mode 100644 index 0000000000000..d52669777bdd7 --- /dev/null +++ b/src/test/ui/issue-9575.stderr @@ -0,0 +1,12 @@ +error[E0308]: start function has wrong type + --> $DIR/issue-9575.rs:14:1 + | +LL | fn start(argc: isize, argv: *const *const u8, crate_map: *const u8) -> isize { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ incorrect number of function parameters + | + = note: expected type `fn(isize, *const *const u8) -> isize` + found type `fn(isize, *const *const u8, *const u8) -> isize` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/compile-fail/issue-9725.rs b/src/test/ui/issue-9725.rs similarity index 100% rename from src/test/compile-fail/issue-9725.rs rename to src/test/ui/issue-9725.rs diff --git a/src/test/ui/issue-9725.stderr b/src/test/ui/issue-9725.stderr new file mode 100644 index 0000000000000..1d7fdad82a024 --- /dev/null +++ b/src/test/ui/issue-9725.stderr @@ -0,0 +1,18 @@ +error[E0416]: identifier `foo` is bound more than once in the same pattern + --> $DIR/issue-9725.rs:14:18 + | +LL | let A { foo, foo } = A { foo: 3 }; + | ^^^ used in a pattern more than once + +error[E0025]: field `foo` bound multiple times in the pattern + --> $DIR/issue-9725.rs:14:18 + | +LL | let A { foo, foo } = A { foo: 3 }; + | --- ^^^ multiple uses of `foo` in pattern + | | + | first use of `foo` + +error: aborting due to 2 previous errors + +Some errors occurred: E0025, E0416. +For more information about an error, try `rustc --explain E0025`. diff --git a/src/test/compile-fail/issue-9814.rs b/src/test/ui/issue-9814.rs similarity index 100% rename from src/test/compile-fail/issue-9814.rs rename to src/test/ui/issue-9814.rs diff --git a/src/test/ui/issue-9814.stderr b/src/test/ui/issue-9814.stderr new file mode 100644 index 0000000000000..2e85bd46fe610 --- /dev/null +++ b/src/test/ui/issue-9814.stderr @@ -0,0 +1,9 @@ +error[E0614]: type `Foo` cannot be dereferenced + --> $DIR/issue-9814.rs:17:13 + | +LL | let _ = *Foo::Bar(2); //~ ERROR type `Foo` cannot be dereferenced + | ^^^^^^^^^^^^ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0614`. diff --git a/src/test/compile-fail/issue-pr29383.rs b/src/test/ui/issue-pr29383.rs similarity index 100% rename from src/test/compile-fail/issue-pr29383.rs rename to src/test/ui/issue-pr29383.rs diff --git a/src/test/ui/issue-pr29383.stderr b/src/test/ui/issue-pr29383.stderr new file mode 100644 index 0000000000000..9b8956da7a2d1 --- /dev/null +++ b/src/test/ui/issue-pr29383.stderr @@ -0,0 +1,15 @@ +error[E0532]: expected tuple struct/variant, found unit variant `E::A` + --> $DIR/issue-pr29383.rs:19:14 + | +LL | Some(E::A(..)) => {} //~ ERROR expected tuple struct/variant, found unit variant `E::A` + | ^^^^ not a tuple struct/variant + +error[E0532]: expected tuple struct/variant, found unit variant `E::B` + --> $DIR/issue-pr29383.rs:20:14 + | +LL | Some(E::B(..)) => {} //~ ERROR expected tuple struct/variant, found unit variant `E::B` + | ^^^^ not a tuple struct/variant + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0532`.