diff --git a/src/test/compile-fail/E0001.rs b/src/test/ui/error-codes/E0001.rs similarity index 100% rename from src/test/compile-fail/E0001.rs rename to src/test/ui/error-codes/E0001.rs diff --git a/src/test/ui/error-codes/E0001.stderr b/src/test/ui/error-codes/E0001.stderr new file mode 100644 index 0000000000000..d7d67af1492c6 --- /dev/null +++ b/src/test/ui/error-codes/E0001.stderr @@ -0,0 +1,14 @@ +error: unreachable pattern + --> $DIR/E0001.rs:18:9 + | +18 | _ => {/* ... */} //~ ERROR unreachable pattern + | ^ + | +note: lint level defined here + --> $DIR/E0001.rs:11:9 + | +11 | #![deny(unreachable_patterns)] + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0004-2.rs b/src/test/ui/error-codes/E0004-2.rs similarity index 100% rename from src/test/compile-fail/E0004-2.rs rename to src/test/ui/error-codes/E0004-2.rs diff --git a/src/test/ui/error-codes/E0004-2.stderr b/src/test/ui/error-codes/E0004-2.stderr new file mode 100644 index 0000000000000..2f4d26e2f327c --- /dev/null +++ b/src/test/ui/error-codes/E0004-2.stderr @@ -0,0 +1,14 @@ +error[E0004]: non-exhaustive patterns: type std::option::Option is non-empty + --> $DIR/E0004-2.rs:14:11 + | +14 | match x { } //~ ERROR E0004 + | ^ + | +help: Please ensure that all possible cases are being handled; possibly adding wildcards or more match arms. + --> $DIR/E0004-2.rs:14:11 + | +14 | match x { } //~ ERROR E0004 + | ^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0004.rs b/src/test/ui/error-codes/E0004.rs similarity index 100% rename from src/test/compile-fail/E0004.rs rename to src/test/ui/error-codes/E0004.rs diff --git a/src/test/ui/error-codes/E0004.stderr b/src/test/ui/error-codes/E0004.stderr new file mode 100644 index 0000000000000..836afaf05ba9f --- /dev/null +++ b/src/test/ui/error-codes/E0004.stderr @@ -0,0 +1,8 @@ +error[E0004]: non-exhaustive patterns: `HastaLaVistaBaby` not covered + --> $DIR/E0004.rs:19:11 + | +19 | match x { //~ ERROR E0004 + | ^ pattern `HastaLaVistaBaby` not covered + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0005.rs b/src/test/ui/error-codes/E0005.rs similarity index 100% rename from src/test/compile-fail/E0005.rs rename to src/test/ui/error-codes/E0005.rs diff --git a/src/test/ui/error-codes/E0005.stderr b/src/test/ui/error-codes/E0005.stderr new file mode 100644 index 0000000000000..d052c12e9fe9d --- /dev/null +++ b/src/test/ui/error-codes/E0005.stderr @@ -0,0 +1,8 @@ +error[E0005]: refutable pattern in local binding: `None` not covered + --> $DIR/E0005.rs:13:9 + | +13 | let Some(y) = x; //~ ERROR E0005 + | ^^^^^^^ pattern `None` not covered + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0007.rs b/src/test/ui/error-codes/E0007.rs similarity index 100% rename from src/test/compile-fail/E0007.rs rename to src/test/ui/error-codes/E0007.rs diff --git a/src/test/ui/error-codes/E0007.stderr b/src/test/ui/error-codes/E0007.stderr new file mode 100644 index 0000000000000..1370cacd7cbfa --- /dev/null +++ b/src/test/ui/error-codes/E0007.stderr @@ -0,0 +1,14 @@ +error[E0007]: cannot bind by-move with sub-bindings + --> $DIR/E0007.rs:14:9 + | +14 | op_string @ Some(s) => {}, + | ^^^^^^^^^^^^^^^^^^^ binds an already bound by-move value by moving it + +error[E0303]: pattern bindings are not allowed after an `@` + --> $DIR/E0007.rs:14:26 + | +14 | op_string @ Some(s) => {}, + | ^ not allowed after `@` + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0008.rs b/src/test/ui/error-codes/E0008.rs similarity index 100% rename from src/test/compile-fail/E0008.rs rename to src/test/ui/error-codes/E0008.rs diff --git a/src/test/ui/error-codes/E0008.stderr b/src/test/ui/error-codes/E0008.stderr new file mode 100644 index 0000000000000..6ae4506a6e390 --- /dev/null +++ b/src/test/ui/error-codes/E0008.stderr @@ -0,0 +1,8 @@ +error[E0008]: cannot bind by-move into a pattern guard + --> $DIR/E0008.rs:13:14 + | +13 | Some(s) if s.len() == 0 => {}, + | ^ moves value into pattern guard + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0009.rs b/src/test/ui/error-codes/E0009.rs similarity index 100% rename from src/test/compile-fail/E0009.rs rename to src/test/ui/error-codes/E0009.rs diff --git a/src/test/ui/error-codes/E0009.stderr b/src/test/ui/error-codes/E0009.stderr new file mode 100644 index 0000000000000..31db957621d21 --- /dev/null +++ b/src/test/ui/error-codes/E0009.stderr @@ -0,0 +1,10 @@ +error[E0009]: cannot bind by-move and by-ref in the same pattern + --> $DIR/E0009.rs:15:15 + | +15 | Some((y, ref z)) => {}, + | ^ ----- both by-ref and by-move used + | | + | by-move pattern here + +error: aborting due to previous error + diff --git a/src/test/ui/error-codes/E0010-teach.rs b/src/test/ui/error-codes/E0010-teach.rs new file mode 100644 index 0000000000000..e5ccf32af1473 --- /dev/null +++ b/src/test/ui/error-codes/E0010-teach.rs @@ -0,0 +1,18 @@ +// Copyright 2016 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// compile-flags: -Z teach + +#![feature(box_syntax)] +#![allow(warnings)] + +const CON : Box = box 0; //~ ERROR E0010 + +fn main() {} diff --git a/src/test/ui/error-codes/E0010-teach.stderr b/src/test/ui/error-codes/E0010-teach.stderr new file mode 100644 index 0000000000000..46f8101ca65ad --- /dev/null +++ b/src/test/ui/error-codes/E0010-teach.stderr @@ -0,0 +1,10 @@ +error[E0010]: allocations are not allowed in constants + --> $DIR/E0010-teach.rs:16:24 + | +16 | const CON : Box = box 0; //~ ERROR E0010 + | ^^^^^ allocation not allowed in constants + | + = note: The value of statics and constants must be known at compile time, and they live for the entire lifetime of a program. Creating a boxed value allocates memory on the heap at runtime, and therefore cannot be done at compile time. + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0010.rs b/src/test/ui/error-codes/E0010.rs similarity index 100% rename from src/test/compile-fail/E0010.rs rename to src/test/ui/error-codes/E0010.rs diff --git a/src/test/ui/error-codes/E0010.stderr b/src/test/ui/error-codes/E0010.stderr new file mode 100644 index 0000000000000..5cef631e05ed6 --- /dev/null +++ b/src/test/ui/error-codes/E0010.stderr @@ -0,0 +1,8 @@ +error[E0010]: allocations are not allowed in constants + --> $DIR/E0010.rs:14:24 + | +14 | const CON : Box = box 0; //~ ERROR E0010 + | ^^^^^ allocation not allowed in constants + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0017.rs b/src/test/ui/error-codes/E0017.rs similarity index 100% rename from src/test/compile-fail/E0017.rs rename to src/test/ui/error-codes/E0017.rs diff --git a/src/test/ui/error-codes/E0017.stderr b/src/test/ui/error-codes/E0017.stderr new file mode 100644 index 0000000000000..f1fe1e58b34d7 --- /dev/null +++ b/src/test/ui/error-codes/E0017.stderr @@ -0,0 +1,26 @@ +error[E0017]: references in constants may only refer to immutable values + --> $DIR/E0017.rs:14:30 + | +14 | const CR: &'static mut i32 = &mut C; //~ ERROR E0017 + | ^^^^^^ constants require immutable values + +error[E0017]: references in statics may only refer to immutable values + --> $DIR/E0017.rs:15:39 + | +15 | static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0017 + | ^^^^^^ statics require immutable values + +error[E0596]: cannot borrow immutable static item as mutable + --> $DIR/E0017.rs:15:44 + | +15 | static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0017 + | ^ + +error[E0017]: references in statics may only refer to immutable values + --> $DIR/E0017.rs:17:38 + | +17 | static CONST_REF: &'static mut i32 = &mut C; //~ ERROR E0017 + | ^^^^^^ statics require immutable values + +error: aborting due to 4 previous errors + diff --git a/src/test/compile-fail/E0023.rs b/src/test/ui/error-codes/E0023.rs similarity index 100% rename from src/test/compile-fail/E0023.rs rename to src/test/ui/error-codes/E0023.rs diff --git a/src/test/ui/error-codes/E0023.stderr b/src/test/ui/error-codes/E0023.stderr new file mode 100644 index 0000000000000..582dffeb19ce2 --- /dev/null +++ b/src/test/ui/error-codes/E0023.stderr @@ -0,0 +1,20 @@ +error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 2 fields + --> $DIR/E0023.rs:20:9 + | +20 | Fruit::Apple(a) => {}, //~ ERROR E0023 + | ^^^^^^^^^^^^^^^ expected 2 fields, found 1 + +error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields + --> $DIR/E0023.rs:21:9 + | +21 | Fruit::Apple(a, b, c) => {}, //~ ERROR E0023 + | ^^^^^^^^^^^^^^^^^^^^^ expected 2 fields, found 3 + +error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field + --> $DIR/E0023.rs:22:9 + | +22 | Fruit::Pear(1, 2) => {}, //~ ERROR E0023 + | ^^^^^^^^^^^^^^^^^ expected 1 field, found 2 + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0025.rs b/src/test/ui/error-codes/E0025.rs similarity index 100% rename from src/test/compile-fail/E0025.rs rename to src/test/ui/error-codes/E0025.rs diff --git a/src/test/ui/error-codes/E0025.stderr b/src/test/ui/error-codes/E0025.stderr new file mode 100644 index 0000000000000..480cd2a5cc8a9 --- /dev/null +++ b/src/test/ui/error-codes/E0025.stderr @@ -0,0 +1,10 @@ +error[E0025]: field `a` bound multiple times in the pattern + --> $DIR/E0025.rs:18:21 + | +18 | let Foo { a: x, a: y, b: 0 } = x; + | ---- ^^^^ multiple uses of `a` in pattern + | | + | first use of `a` + +error: aborting due to previous error + diff --git a/src/test/ui/error-codes/E0026-teach.rs b/src/test/ui/error-codes/E0026-teach.rs new file mode 100644 index 0000000000000..e0ce44a8b6f5f --- /dev/null +++ b/src/test/ui/error-codes/E0026-teach.rs @@ -0,0 +1,24 @@ +// Copyright 2016 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// compile-flags: -Z teach + +struct Thing { + x: u32, + y: u32 +} + +fn main() { + let thing = Thing { x: 0, y: 0 }; + match thing { + Thing { x, y, z } => {} + //~^ ERROR struct `Thing` does not have a field named `z` [E0026] + } +} diff --git a/src/test/ui/error-codes/E0026-teach.stderr b/src/test/ui/error-codes/E0026-teach.stderr new file mode 100644 index 0000000000000..ee83cfb353515 --- /dev/null +++ b/src/test/ui/error-codes/E0026-teach.stderr @@ -0,0 +1,12 @@ +error[E0026]: struct `Thing` does not have a field named `z` + --> $DIR/E0026-teach.rs:21:23 + | +21 | Thing { x, y, z } => {} + | ^ struct `Thing` does not have field `z` + | + = note: This error indicates that a struct pattern attempted to extract a non-existent field from a struct. Struct fields are identified by the name used before the colon : so struct patterns should resemble the declaration of the struct type being matched. + + If you are using shorthand field patterns but want to refer to the struct field by a different name, you should rename it explicitly. + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0026.rs b/src/test/ui/error-codes/E0026.rs similarity index 100% rename from src/test/compile-fail/E0026.rs rename to src/test/ui/error-codes/E0026.rs diff --git a/src/test/ui/error-codes/E0026.stderr b/src/test/ui/error-codes/E0026.stderr new file mode 100644 index 0000000000000..c9819df3f9fbd --- /dev/null +++ b/src/test/ui/error-codes/E0026.stderr @@ -0,0 +1,8 @@ +error[E0026]: struct `Thing` does not have a field named `z` + --> $DIR/E0026.rs:19:23 + | +19 | Thing { x, y, z } => {} + | ^ struct `Thing` does not have field `z` + +error: aborting due to previous error + diff --git a/src/test/ui/error-codes/E0027-teach.rs b/src/test/ui/error-codes/E0027-teach.rs new file mode 100644 index 0000000000000..17e045bb8b086 --- /dev/null +++ b/src/test/ui/error-codes/E0027-teach.rs @@ -0,0 +1,25 @@ +// Copyright 2016 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// compile-flags: -Z teach + +struct Dog { + name: String, + age: u32, +} + +fn main() { + let d = Dog { name: "Rusty".to_string(), age: 8 }; + + match d { + Dog { age: x } => {} + //~^ ERROR pattern does not mention field `name` + } +} diff --git a/src/test/ui/error-codes/E0027-teach.stderr b/src/test/ui/error-codes/E0027-teach.stderr new file mode 100644 index 0000000000000..e9f9e4ba766f2 --- /dev/null +++ b/src/test/ui/error-codes/E0027-teach.stderr @@ -0,0 +1,10 @@ +error[E0027]: pattern does not mention field `name` + --> $DIR/E0027-teach.rs:22:9 + | +22 | Dog { age: x } => {} + | ^^^^^^^^^^^^^^ missing field `name` + | + = note: This error indicates that a pattern for a struct fails to specify a sub-pattern for every one of the struct's fields. Ensure that each field from the struct's definition is mentioned in the pattern, or use `..` to ignore unwanted fields. + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0027.rs b/src/test/ui/error-codes/E0027.rs similarity index 100% rename from src/test/compile-fail/E0027.rs rename to src/test/ui/error-codes/E0027.rs diff --git a/src/test/ui/error-codes/E0027.stderr b/src/test/ui/error-codes/E0027.stderr new file mode 100644 index 0000000000000..0f93a776b9ef1 --- /dev/null +++ b/src/test/ui/error-codes/E0027.stderr @@ -0,0 +1,8 @@ +error[E0027]: pattern does not mention field `name` + --> $DIR/E0027.rs:20:9 + | +20 | Dog { age: x } => {} + | ^^^^^^^^^^^^^^ missing field `name` + +error: aborting due to previous error + diff --git a/src/test/ui/error-codes/E0029-teach.rs b/src/test/ui/error-codes/E0029-teach.rs new file mode 100644 index 0000000000000..ca85f58133ccd --- /dev/null +++ b/src/test/ui/error-codes/E0029-teach.rs @@ -0,0 +1,22 @@ +// Copyright 2016 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// compile-flags: -Z teach + +fn main() { + let s = "hoho"; + + match s { + "hello" ... "world" => {} + //~^ ERROR only char and numeric types are allowed in range patterns + //~| ERROR non-reference pattern used to match a reference + _ => {} + } +} diff --git a/src/test/ui/error-codes/E0029-teach.stderr b/src/test/ui/error-codes/E0029-teach.stderr new file mode 100644 index 0000000000000..dbb8d972f5c22 --- /dev/null +++ b/src/test/ui/error-codes/E0029-teach.stderr @@ -0,0 +1,20 @@ +error[E0658]: non-reference pattern used to match a reference (see issue #42640) + --> $DIR/E0029-teach.rs:17:9 + | +17 | "hello" ... "world" => {} + | ^^^^^^^^^^^^^^^^^^^ help: consider using a reference: `&"hello" ... "world"` + | + = help: add #![feature(match_default_bindings)] to the crate attributes to enable + +error[E0029]: only char and numeric types are allowed in range patterns + --> $DIR/E0029-teach.rs:17:9 + | +17 | "hello" ... "world" => {} + | ^^^^^^^^^^^^^^^^^^^ ranges require char or numeric types + | + = note: start type: &'static str + = note: end type: &'static str + = note: In a match expression, only numbers and characters can be matched against a range. This is because the compiler checks that the range is non-empty at compile-time, and is unable to evaluate arbitrary comparison functions. If you want to capture values of an orderable type between two end-points, you can use a guard. + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0029.rs b/src/test/ui/error-codes/E0029.rs similarity index 100% rename from src/test/compile-fail/E0029.rs rename to src/test/ui/error-codes/E0029.rs diff --git a/src/test/ui/error-codes/E0029.stderr b/src/test/ui/error-codes/E0029.stderr new file mode 100644 index 0000000000000..02fbd20386f2d --- /dev/null +++ b/src/test/ui/error-codes/E0029.stderr @@ -0,0 +1,19 @@ +error[E0658]: non-reference pattern used to match a reference (see issue #42640) + --> $DIR/E0029.rs:15:9 + | +15 | "hello" ... "world" => {} + | ^^^^^^^^^^^^^^^^^^^ help: consider using a reference: `&"hello" ... "world"` + | + = help: add #![feature(match_default_bindings)] to the crate attributes to enable + +error[E0029]: only char and numeric types are allowed in range patterns + --> $DIR/E0029.rs:15:9 + | +15 | "hello" ... "world" => {} + | ^^^^^^^^^^^^^^^^^^^ ranges require char or numeric types + | + = note: start type: &'static str + = note: end type: &'static str + +error: aborting due to 2 previous errors + diff --git a/src/test/ui/error-codes/E0030-teach.rs b/src/test/ui/error-codes/E0030-teach.rs new file mode 100644 index 0000000000000..2af32eda62be9 --- /dev/null +++ b/src/test/ui/error-codes/E0030-teach.rs @@ -0,0 +1,18 @@ +// Copyright 2016 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// compile-flags: -Z teach + +fn main() { + match 5u32 { + 1000 ... 5 => {} + //~^ ERROR lower range bound must be less than or equal to upper + } +} diff --git a/src/test/ui/error-codes/E0030-teach.stderr b/src/test/ui/error-codes/E0030-teach.stderr new file mode 100644 index 0000000000000..40b3d790e1245 --- /dev/null +++ b/src/test/ui/error-codes/E0030-teach.stderr @@ -0,0 +1,10 @@ +error[E0030]: lower range bound must be less than or equal to upper + --> $DIR/E0030-teach.rs:15:9 + | +15 | 1000 ... 5 => {} + | ^^^^ lower bound larger than upper bound + | + = note: When matching against a range, the compiler verifies that the range is non-empty. Range patterns include both end-points, so this is equivalent to requiring the start of the range to be less than or equal to the end of the range. + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0030.rs b/src/test/ui/error-codes/E0030.rs similarity index 100% rename from src/test/compile-fail/E0030.rs rename to src/test/ui/error-codes/E0030.rs diff --git a/src/test/ui/error-codes/E0030.stderr b/src/test/ui/error-codes/E0030.stderr new file mode 100644 index 0000000000000..7bdecd0028e74 --- /dev/null +++ b/src/test/ui/error-codes/E0030.stderr @@ -0,0 +1,8 @@ +error[E0030]: lower range bound must be less than or equal to upper + --> $DIR/E0030.rs:14:9 + | +14 | 1000 ... 5 => {} + | ^^^^ lower bound larger than upper bound + +error: aborting due to previous error + diff --git a/src/test/ui/error-codes/E0033-teach.rs b/src/test/ui/error-codes/E0033-teach.rs new file mode 100644 index 0000000000000..51a1390bf79d1 --- /dev/null +++ b/src/test/ui/error-codes/E0033-teach.rs @@ -0,0 +1,25 @@ +// Copyright 2016 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// compile-flags: -Z teach + +trait SomeTrait { + fn foo(); +} + +fn main() { + let trait_obj: &SomeTrait = SomeTrait; + //~^ ERROR expected value, found trait `SomeTrait` + //~| ERROR E0038 + //~| method `foo` has no receiver + + let &invalid = trait_obj; + //~^ ERROR E0033 +} diff --git a/src/test/ui/error-codes/E0033-teach.stderr b/src/test/ui/error-codes/E0033-teach.stderr new file mode 100644 index 0000000000000..ea60fcb6ccf1c --- /dev/null +++ b/src/test/ui/error-codes/E0033-teach.stderr @@ -0,0 +1,26 @@ +error[E0423]: expected value, found trait `SomeTrait` + --> $DIR/E0033-teach.rs:18:33 + | +18 | let trait_obj: &SomeTrait = SomeTrait; + | ^^^^^^^^^ not a value + +error[E0038]: the trait `SomeTrait` cannot be made into an object + --> $DIR/E0033-teach.rs:18:20 + | +18 | let trait_obj: &SomeTrait = SomeTrait; + | ^^^^^^^^^^ the trait `SomeTrait` cannot be made into an object + | + = note: method `foo` has no receiver + +error[E0033]: type `&SomeTrait` cannot be dereferenced + --> $DIR/E0033-teach.rs:23:9 + | +23 | let &invalid = trait_obj; + | ^^^^^^^^ type `&SomeTrait` cannot be dereferenced + | + = note: This error indicates that a pointer to a trait type cannot be implicitly dereferenced by a pattern. Every trait defines a type, but because the size of trait implementors isn't fixed, this type has no compile-time size. Therefore, all accesses to trait types must be through pointers. If you encounter this error you should try to avoid dereferencing the pointer. + + You can read more about trait objects in the Trait Objects section of the Reference: https://doc.rust-lang.org/reference/types.html#trait-objects + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0033.rs b/src/test/ui/error-codes/E0033.rs similarity index 100% rename from src/test/compile-fail/E0033.rs rename to src/test/ui/error-codes/E0033.rs diff --git a/src/test/ui/error-codes/E0033.stderr b/src/test/ui/error-codes/E0033.stderr new file mode 100644 index 0000000000000..abc535ee2a647 --- /dev/null +++ b/src/test/ui/error-codes/E0033.stderr @@ -0,0 +1,22 @@ +error[E0423]: expected value, found trait `SomeTrait` + --> $DIR/E0033.rs:16:33 + | +16 | let trait_obj: &SomeTrait = SomeTrait; + | ^^^^^^^^^ not a value + +error[E0038]: the trait `SomeTrait` cannot be made into an object + --> $DIR/E0033.rs:16:20 + | +16 | let trait_obj: &SomeTrait = SomeTrait; + | ^^^^^^^^^^ the trait `SomeTrait` cannot be made into an object + | + = note: method `foo` has no receiver + +error[E0033]: type `&SomeTrait` cannot be dereferenced + --> $DIR/E0033.rs:21:9 + | +21 | let &invalid = trait_obj; + | ^^^^^^^^ type `&SomeTrait` cannot be dereferenced + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0034.rs b/src/test/ui/error-codes/E0034.rs similarity index 100% rename from src/test/compile-fail/E0034.rs rename to src/test/ui/error-codes/E0034.rs diff --git a/src/test/ui/error-codes/E0034.stderr b/src/test/ui/error-codes/E0034.stderr new file mode 100644 index 0000000000000..238fd0d67a080 --- /dev/null +++ b/src/test/ui/error-codes/E0034.stderr @@ -0,0 +1,19 @@ +error[E0034]: multiple applicable items in scope + --> $DIR/E0034.rs:30:5 + | +30 | Test::foo() //~ ERROR multiple applicable items in scope + | ^^^^^^^^^ multiple `foo` found + | +note: candidate #1 is defined in an impl of the trait `Trait1` for the type `Test` + --> $DIR/E0034.rs:22:5 + | +22 | fn foo() {} + | ^^^^^^^^ +note: candidate #2 is defined in an impl of the trait `Trait2` for the type `Test` + --> $DIR/E0034.rs:26:5 + | +26 | fn foo() {} + | ^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0038.rs b/src/test/ui/error-codes/E0038.rs similarity index 100% rename from src/test/compile-fail/E0038.rs rename to src/test/ui/error-codes/E0038.rs diff --git a/src/test/ui/error-codes/E0038.stderr b/src/test/ui/error-codes/E0038.stderr new file mode 100644 index 0000000000000..e9423561f3775 --- /dev/null +++ b/src/test/ui/error-codes/E0038.stderr @@ -0,0 +1,10 @@ +error[E0038]: the trait `Trait` cannot be made into an object + --> $DIR/E0038.rs:15:1 + | +15 | fn call_foo(x: Box) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Trait` cannot be made into an object + | + = note: method `foo` references the `Self` type in its arguments or return type + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0040.rs b/src/test/ui/error-codes/E0040.rs similarity index 100% rename from src/test/compile-fail/E0040.rs rename to src/test/ui/error-codes/E0040.rs diff --git a/src/test/ui/error-codes/E0040.stderr b/src/test/ui/error-codes/E0040.stderr new file mode 100644 index 0000000000000..73cb49fbf9878 --- /dev/null +++ b/src/test/ui/error-codes/E0040.stderr @@ -0,0 +1,8 @@ +error[E0040]: explicit use of destructor method + --> $DIR/E0040.rs:23:7 + | +23 | x.drop(); + | ^^^^ explicit destructor calls not allowed + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0044.rs b/src/test/ui/error-codes/E0044.rs similarity index 100% rename from src/test/compile-fail/E0044.rs rename to src/test/ui/error-codes/E0044.rs diff --git a/src/test/ui/error-codes/E0044.stderr b/src/test/ui/error-codes/E0044.stderr new file mode 100644 index 0000000000000..65a429c1fcacd --- /dev/null +++ b/src/test/ui/error-codes/E0044.stderr @@ -0,0 +1,14 @@ +error[E0044]: foreign items may not have type parameters + --> $DIR/E0044.rs:11:10 + | +11 | extern { fn some_func(x: T); } //~ ERROR E0044 + | ^^^^^^^^^^^^^^^^^^^^^^ + | +help: consider using specialization instead of type parameters + --> $DIR/E0044.rs:11:10 + | +11 | extern { fn some_func(x: T); } //~ ERROR E0044 + | ^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0045.rs b/src/test/ui/error-codes/E0045.rs similarity index 100% rename from src/test/compile-fail/E0045.rs rename to src/test/ui/error-codes/E0045.rs diff --git a/src/test/ui/error-codes/E0045.stderr b/src/test/ui/error-codes/E0045.stderr new file mode 100644 index 0000000000000..cd400564669f5 --- /dev/null +++ b/src/test/ui/error-codes/E0045.stderr @@ -0,0 +1,8 @@ +error[E0045]: variadic function must have C or cdecl calling convention + --> $DIR/E0045.rs:11:17 + | +11 | extern "Rust" { fn foo(x: u8, ...); } //~ ERROR E0045 + | ^^^^^^^^^^^^^^^^^^^ variadics require C or cdecl calling convention + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0049.rs b/src/test/ui/error-codes/E0049.rs similarity index 100% rename from src/test/compile-fail/E0049.rs rename to src/test/ui/error-codes/E0049.rs diff --git a/src/test/ui/error-codes/E0049.stderr b/src/test/ui/error-codes/E0049.stderr new file mode 100644 index 0000000000000..e6f72bab50ad4 --- /dev/null +++ b/src/test/ui/error-codes/E0049.stderr @@ -0,0 +1,11 @@ +error[E0049]: method `foo` has 0 type parameters but its trait declaration has 1 type parameter + --> $DIR/E0049.rs:18:5 + | +12 | fn foo(x: T) -> Self; + | --------------------------------- expected 1 type parameter +... +18 | fn foo(x: bool) -> Self { Bar } //~ ERROR E0049 + | ^^^^^^^^^^^^^^^^^^^^^^^ found 0 type parameters + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0050.rs b/src/test/ui/error-codes/E0050.rs similarity index 100% rename from src/test/compile-fail/E0050.rs rename to src/test/ui/error-codes/E0050.rs diff --git a/src/test/ui/error-codes/E0050.stderr b/src/test/ui/error-codes/E0050.stderr new file mode 100644 index 0000000000000..d95a2005b1876 --- /dev/null +++ b/src/test/ui/error-codes/E0050.stderr @@ -0,0 +1,29 @@ +error[E0050]: method `foo` has 1 parameter but the declaration in trait `Foo::foo` has 2 + --> $DIR/E0050.rs:20:12 + | +12 | fn foo(&self, x: u8) -> bool; + | -- trait requires 2 parameters +... +20 | fn foo(&self) -> bool { true } //~ ERROR E0050 + | ^^^^^ expected 2 parameters, found 1 + +error[E0050]: method `bar` has 1 parameter but the declaration in trait `Foo::bar` has 4 + --> $DIR/E0050.rs:21:12 + | +13 | fn bar(&self, x: u8, y: u8, z: u8); + | -- trait requires 4 parameters +... +21 | fn bar(&self) { } //~ ERROR E0050 + | ^^^^^ expected 4 parameters, found 1 + +error[E0050]: method `less` has 4 parameters but the declaration in trait `Foo::less` has 1 + --> $DIR/E0050.rs:22:37 + | +14 | fn less(&self); + | ----- trait requires 1 parameter +... +22 | fn less(&self, x: u8, y: u8, z: u8) { } //~ ERROR E0050 + | ^^ expected 1 parameter, found 4 + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0054.rs b/src/test/ui/error-codes/E0054.rs similarity index 100% rename from src/test/compile-fail/E0054.rs rename to src/test/ui/error-codes/E0054.rs diff --git a/src/test/ui/error-codes/E0054.stderr b/src/test/ui/error-codes/E0054.stderr new file mode 100644 index 0000000000000..fc331579ef5f5 --- /dev/null +++ b/src/test/ui/error-codes/E0054.stderr @@ -0,0 +1,10 @@ +error[E0054]: cannot cast as `bool` + --> $DIR/E0054.rs:13:24 + | +13 | let x_is_nonzero = x as bool; //~ ERROR E0054 + | ^^^^^^^^^ unsupported cast + | + = help: compare with zero instead + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0055.rs b/src/test/ui/error-codes/E0055.rs similarity index 100% rename from src/test/compile-fail/E0055.rs rename to src/test/ui/error-codes/E0055.rs diff --git a/src/test/ui/error-codes/E0055.stderr b/src/test/ui/error-codes/E0055.stderr new file mode 100644 index 0000000000000..001178e97c065 --- /dev/null +++ b/src/test/ui/error-codes/E0055.stderr @@ -0,0 +1,10 @@ +error[E0055]: reached the recursion limit while auto-dereferencing Foo + --> $DIR/E0055.rs:21:13 + | +21 | ref_foo.foo(); + | ^^^ deref recursion limit reached + | + = help: consider adding a `#![recursion_limit="4"]` attribute to your crate + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0057.rs b/src/test/ui/error-codes/E0057.rs similarity index 100% rename from src/test/compile-fail/E0057.rs rename to src/test/ui/error-codes/E0057.rs diff --git a/src/test/ui/error-codes/E0057.stderr b/src/test/ui/error-codes/E0057.stderr new file mode 100644 index 0000000000000..450c87ca0322b --- /dev/null +++ b/src/test/ui/error-codes/E0057.stderr @@ -0,0 +1,14 @@ +error[E0057]: this function takes 1 parameter but 0 parameters were supplied + --> $DIR/E0057.rs:13:13 + | +13 | let a = f(); //~ ERROR E0057 + | ^^^ expected 1 parameter + +error[E0057]: this function takes 1 parameter but 2 parameters were supplied + --> $DIR/E0057.rs:15:13 + | +15 | let c = f(2, 3); //~ ERROR E0057 + | ^^^^^^^ expected 1 parameter + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0059.rs b/src/test/ui/error-codes/E0059.rs similarity index 100% rename from src/test/compile-fail/E0059.rs rename to src/test/ui/error-codes/E0059.rs diff --git a/src/test/ui/error-codes/E0059.stderr b/src/test/ui/error-codes/E0059.stderr new file mode 100644 index 0000000000000..aca4b8881e28f --- /dev/null +++ b/src/test/ui/error-codes/E0059.stderr @@ -0,0 +1,8 @@ +error[E0059]: cannot use call notation; the first type parameter for the function trait is neither a tuple nor unit + --> $DIR/E0059.rs:13:41 + | +13 | fn foo>(f: F) -> F::Output { f(3) } //~ ERROR E0059 + | ^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0060.rs b/src/test/ui/error-codes/E0060.rs similarity index 100% rename from src/test/compile-fail/E0060.rs rename to src/test/ui/error-codes/E0060.rs diff --git a/src/test/ui/error-codes/E0060.stderr b/src/test/ui/error-codes/E0060.stderr new file mode 100644 index 0000000000000..8207220ba72c5 --- /dev/null +++ b/src/test/ui/error-codes/E0060.stderr @@ -0,0 +1,11 @@ +error[E0060]: this function takes at least 1 parameter but 0 parameters were supplied + --> $DIR/E0060.rs:16:14 + | +12 | fn printf(_: *const u8, ...) -> u32; + | ------------------------------------ defined here +... +16 | unsafe { printf(); } + | ^^^^^^^^ expected at least 1 parameter + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0061.rs b/src/test/ui/error-codes/E0061.rs similarity index 100% rename from src/test/compile-fail/E0061.rs rename to src/test/ui/error-codes/E0061.rs diff --git a/src/test/ui/error-codes/E0061.stderr b/src/test/ui/error-codes/E0061.stderr new file mode 100644 index 0000000000000..89d81b5acd76c --- /dev/null +++ b/src/test/ui/error-codes/E0061.stderr @@ -0,0 +1,20 @@ +error[E0061]: this function takes 2 parameters but 1 parameter was supplied + --> $DIR/E0061.rs:16:5 + | +11 | fn f(a: u16, b: &str) {} + | --------------------- defined here +... +16 | f(0); + | ^^^^ expected 2 parameters + +error[E0061]: this function takes 1 parameter but 0 parameters were supplied + --> $DIR/E0061.rs:20:5 + | +13 | fn f2(a: u16) {} + | ------------- defined here +... +20 | f2(); + | ^^^^ expected 1 parameter + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0062.rs b/src/test/ui/error-codes/E0062.rs similarity index 100% rename from src/test/compile-fail/E0062.rs rename to src/test/ui/error-codes/E0062.rs diff --git a/src/test/ui/error-codes/E0062.stderr b/src/test/ui/error-codes/E0062.stderr new file mode 100644 index 0000000000000..6c5ecf48045b1 --- /dev/null +++ b/src/test/ui/error-codes/E0062.stderr @@ -0,0 +1,10 @@ +error[E0062]: field `x` specified more than once + --> $DIR/E0062.rs:18:9 + | +17 | x: 0, + | ---- first use of `x` +18 | x: 0, + | ^^ used more than once + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0063.rs b/src/test/ui/error-codes/E0063.rs similarity index 100% rename from src/test/compile-fail/E0063.rs rename to src/test/ui/error-codes/E0063.rs diff --git a/src/test/ui/error-codes/E0063.stderr b/src/test/ui/error-codes/E0063.stderr new file mode 100644 index 0000000000000..023819cc778d0 --- /dev/null +++ b/src/test/ui/error-codes/E0063.stderr @@ -0,0 +1,26 @@ +error[E0063]: missing field `x` in initializer of `SingleFoo` + --> $DIR/E0063.rs:42:13 + | +42 | let w = SingleFoo { }; + | ^^^^^^^^^ missing `x` + +error[E0063]: missing fields `y`, `z` in initializer of `PluralFoo` + --> $DIR/E0063.rs:44:13 + | +44 | let x = PluralFoo {x: 1}; + | ^^^^^^^^^ missing `y`, `z` + +error[E0063]: missing fields `a`, `b`, `y` and 1 other field in initializer of `TruncatedFoo` + --> $DIR/E0063.rs:46:13 + | +46 | let y = TruncatedFoo{x:1}; + | ^^^^^^^^^^^^ missing `a`, `b`, `y` and 1 other field + +error[E0063]: missing fields `a`, `b`, `c` and 2 other fields in initializer of `TruncatedPluralFoo` + --> $DIR/E0063.rs:48:13 + | +48 | let z = TruncatedPluralFoo{x:1}; + | ^^^^^^^^^^^^^^^^^^ missing `a`, `b`, `c` and 2 other fields + +error: aborting due to 4 previous errors + diff --git a/src/test/compile-fail/E0067.rs b/src/test/ui/error-codes/E0067.rs similarity index 100% rename from src/test/compile-fail/E0067.rs rename to src/test/ui/error-codes/E0067.rs diff --git a/src/test/ui/error-codes/E0067.stderr b/src/test/ui/error-codes/E0067.stderr new file mode 100644 index 0000000000000..a4e15619e8ba8 --- /dev/null +++ b/src/test/ui/error-codes/E0067.stderr @@ -0,0 +1,16 @@ +error[E0368]: binary assignment operation `+=` cannot be applied to type `std::collections::LinkedList<_>` + --> $DIR/E0067.rs:14:5 + | +14 | LinkedList::new() += 1; //~ ERROR E0368 + | -----------------^^^^^ + | | + | cannot use `+=` on type `std::collections::LinkedList<_>` + +error[E0067]: invalid left-hand side expression + --> $DIR/E0067.rs:14:5 + | +14 | LinkedList::new() += 1; //~ ERROR E0368 + | ^^^^^^^^^^^^^^^^^ invalid expression for left-hand side + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0069.rs b/src/test/ui/error-codes/E0069.rs similarity index 100% rename from src/test/compile-fail/E0069.rs rename to src/test/ui/error-codes/E0069.rs diff --git a/src/test/ui/error-codes/E0069.stderr b/src/test/ui/error-codes/E0069.stderr new file mode 100644 index 0000000000000..8424531889f0f --- /dev/null +++ b/src/test/ui/error-codes/E0069.stderr @@ -0,0 +1,8 @@ +error[E0069]: `return;` in a function whose return type is not `()` + --> $DIR/E0069.rs:12:5 + | +12 | return; + | ^^^^^^ return type is not () + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0070.rs b/src/test/ui/error-codes/E0070.rs similarity index 100% rename from src/test/compile-fail/E0070.rs rename to src/test/ui/error-codes/E0070.rs diff --git a/src/test/ui/error-codes/E0070.stderr b/src/test/ui/error-codes/E0070.stderr new file mode 100644 index 0000000000000..e1316e2e1306c --- /dev/null +++ b/src/test/ui/error-codes/E0070.stderr @@ -0,0 +1,29 @@ +error[E0070]: invalid left-hand side expression + --> $DIR/E0070.rs:16:5 + | +16 | SOME_CONST = 14; //~ ERROR E0070 + | ^^^^^^^^^^^^^^^ left-hand of expression not valid + +error[E0070]: invalid left-hand side expression + --> $DIR/E0070.rs:17:5 + | +17 | 1 = 3; //~ ERROR E0070 + | ^^^^^ left-hand of expression not valid + +error[E0308]: mismatched types + --> $DIR/E0070.rs:18:25 + | +18 | some_other_func() = 4; //~ ERROR E0070 + | ^ expected (), found integral variable + | + = note: expected type `()` + found type `{integer}` + +error[E0070]: invalid left-hand side expression + --> $DIR/E0070.rs:18:5 + | +18 | some_other_func() = 4; //~ ERROR E0070 + | ^^^^^^^^^^^^^^^^^^^^^ left-hand of expression not valid + +error: aborting due to 4 previous errors + diff --git a/src/test/compile-fail/E0071.rs b/src/test/ui/error-codes/E0071.rs similarity index 100% rename from src/test/compile-fail/E0071.rs rename to src/test/ui/error-codes/E0071.rs diff --git a/src/test/ui/error-codes/E0071.stderr b/src/test/ui/error-codes/E0071.stderr new file mode 100644 index 0000000000000..020dad3ac9f8e --- /dev/null +++ b/src/test/ui/error-codes/E0071.stderr @@ -0,0 +1,8 @@ +error[E0071]: expected struct, variant or union type, found enum `Foo` + --> $DIR/E0071.rs:15:13 + | +15 | let u = FooAlias { value: 0 }; + | ^^^^^^^^ not a struct + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0075.rs b/src/test/ui/error-codes/E0075.rs similarity index 100% rename from src/test/compile-fail/E0075.rs rename to src/test/ui/error-codes/E0075.rs diff --git a/src/test/ui/error-codes/E0075.stderr b/src/test/ui/error-codes/E0075.stderr new file mode 100644 index 0000000000000..39d27d6f7e462 --- /dev/null +++ b/src/test/ui/error-codes/E0075.stderr @@ -0,0 +1,8 @@ +error[E0075]: SIMD vector cannot be empty + --> $DIR/E0075.rs:14:1 + | +14 | struct Bad; //~ ERROR E0075 + | ^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0076.rs b/src/test/ui/error-codes/E0076.rs similarity index 100% rename from src/test/compile-fail/E0076.rs rename to src/test/ui/error-codes/E0076.rs diff --git a/src/test/ui/error-codes/E0076.stderr b/src/test/ui/error-codes/E0076.stderr new file mode 100644 index 0000000000000..02ce47977c8a2 --- /dev/null +++ b/src/test/ui/error-codes/E0076.stderr @@ -0,0 +1,8 @@ +error[E0076]: SIMD vector should be homogeneous + --> $DIR/E0076.rs:14:1 + | +14 | struct Bad(u16, u32, u32); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ SIMD elements must have the same type + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0077.rs b/src/test/ui/error-codes/E0077.rs similarity index 100% rename from src/test/compile-fail/E0077.rs rename to src/test/ui/error-codes/E0077.rs diff --git a/src/test/ui/error-codes/E0077.stderr b/src/test/ui/error-codes/E0077.stderr new file mode 100644 index 0000000000000..7e7b55f9b7e77 --- /dev/null +++ b/src/test/ui/error-codes/E0077.stderr @@ -0,0 +1,8 @@ +error[E0077]: SIMD vector element type should be machine type + --> $DIR/E0077.rs:14:1 + | +14 | struct Bad(String); //~ ERROR E0077 + | ^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0080.rs b/src/test/ui/error-codes/E0080.rs similarity index 100% rename from src/test/compile-fail/E0080.rs rename to src/test/ui/error-codes/E0080.rs diff --git a/src/test/ui/error-codes/E0080.stderr b/src/test/ui/error-codes/E0080.stderr new file mode 100644 index 0000000000000..2ec2ad31b53bb --- /dev/null +++ b/src/test/ui/error-codes/E0080.stderr @@ -0,0 +1,28 @@ +warning: constant evaluation error: attempt to shift left with overflow + --> $DIR/E0080.rs:12:9 + | +12 | X = (1 << 500), //~ ERROR E0080 + | ^^^^^^^^^^ + | + = note: #[warn(const_err)] on by default + +error[E0080]: constant evaluation error + --> $DIR/E0080.rs:12:9 + | +12 | X = (1 << 500), //~ ERROR E0080 + | ^^^^^^^^^^ attempt to shift left with overflow + +warning: constant evaluation error: attempt to divide by zero + --> $DIR/E0080.rs:14:9 + | +14 | Y = (1 / 0) //~ ERROR E0080 + | ^^^^^^^ + +error[E0080]: constant evaluation error + --> $DIR/E0080.rs:14:9 + | +14 | Y = (1 / 0) //~ ERROR E0080 + | ^^^^^^^ attempt to divide by zero + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0081.rs b/src/test/ui/error-codes/E0081.rs similarity index 100% rename from src/test/compile-fail/E0081.rs rename to src/test/ui/error-codes/E0081.rs diff --git a/src/test/ui/error-codes/E0081.stderr b/src/test/ui/error-codes/E0081.stderr new file mode 100644 index 0000000000000..035638b2f31df --- /dev/null +++ b/src/test/ui/error-codes/E0081.stderr @@ -0,0 +1,10 @@ +error[E0081]: discriminant value `3isize` already exists + --> $DIR/E0081.rs:13:9 + | +12 | P = 3, + | - first use of `3isize` +13 | X = 3, + | ^ enum already has `3isize` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0084.rs b/src/test/ui/error-codes/E0084.rs similarity index 100% rename from src/test/compile-fail/E0084.rs rename to src/test/ui/error-codes/E0084.rs diff --git a/src/test/ui/error-codes/E0084.stderr b/src/test/ui/error-codes/E0084.stderr new file mode 100644 index 0000000000000..b39a129ba162e --- /dev/null +++ b/src/test/ui/error-codes/E0084.stderr @@ -0,0 +1,10 @@ +error[E0084]: unsupported representation for zero-variant enum + --> $DIR/E0084.rs:11:1 + | +11 | #[repr(i32)] //~ ERROR: E0084 + | ^^^^^^^^^^^^ +12 | enum Foo {} + | ----------- zero-variant enum + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0087.rs b/src/test/ui/error-codes/E0087.rs similarity index 100% rename from src/test/compile-fail/E0087.rs rename to src/test/ui/error-codes/E0087.rs diff --git a/src/test/ui/error-codes/E0087.stderr b/src/test/ui/error-codes/E0087.stderr new file mode 100644 index 0000000000000..20c8cd45dfada --- /dev/null +++ b/src/test/ui/error-codes/E0087.stderr @@ -0,0 +1,14 @@ +error[E0087]: too many type parameters provided: expected at most 0 type parameters, found 1 type parameter + --> $DIR/E0087.rs:15:11 + | +15 | foo::(); //~ ERROR expected at most 0 type parameters, found 1 type parameter [E0087] + | ^^^ expected 0 type parameters + +error[E0087]: too many type parameters provided: expected at most 1 type parameter, found 2 type parameters + --> $DIR/E0087.rs:17:16 + | +17 | bar::(); //~ ERROR expected at most 1 type parameter, found 2 type parameters [E0087] + | ^^^ expected 1 type parameter + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0088.rs b/src/test/ui/error-codes/E0088.rs similarity index 100% rename from src/test/compile-fail/E0088.rs rename to src/test/ui/error-codes/E0088.rs diff --git a/src/test/ui/error-codes/E0088.stderr b/src/test/ui/error-codes/E0088.stderr new file mode 100644 index 0000000000000..615df88f1bb2e --- /dev/null +++ b/src/test/ui/error-codes/E0088.stderr @@ -0,0 +1,14 @@ +error[E0088]: too many lifetime parameters provided: expected at most 0 lifetime parameters, found 1 lifetime parameter + --> $DIR/E0088.rs:15:9 + | +15 | f::<'static>(); //~ ERROR E0088 + | ^^^^^^^ expected 0 lifetime parameters + +error[E0088]: too many lifetime parameters provided: expected at most 1 lifetime parameter, found 2 lifetime parameters + --> $DIR/E0088.rs:16:18 + | +16 | g::<'static, 'static>(); //~ ERROR E0088 + | ^^^^^^^ expected 1 lifetime parameter + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0089.rs b/src/test/ui/error-codes/E0089.rs similarity index 100% rename from src/test/compile-fail/E0089.rs rename to src/test/ui/error-codes/E0089.rs diff --git a/src/test/ui/error-codes/E0089.stderr b/src/test/ui/error-codes/E0089.stderr new file mode 100644 index 0000000000000..38b45e27fa796 --- /dev/null +++ b/src/test/ui/error-codes/E0089.stderr @@ -0,0 +1,8 @@ +error[E0089]: too few type parameters provided: expected 2 type parameters, found 1 type parameter + --> $DIR/E0089.rs:14:5 + | +14 | foo::(); //~ ERROR expected 2 type parameters, found 1 type parameter [E0089] + | ^^^^^^^^^^ expected 2 type parameters + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0090.rs b/src/test/ui/error-codes/E0090.rs similarity index 100% rename from src/test/compile-fail/E0090.rs rename to src/test/ui/error-codes/E0090.rs diff --git a/src/test/ui/error-codes/E0090.stderr b/src/test/ui/error-codes/E0090.stderr new file mode 100644 index 0000000000000..050082d84df58 --- /dev/null +++ b/src/test/ui/error-codes/E0090.stderr @@ -0,0 +1,8 @@ +error[E0090]: too few lifetime parameters provided: expected 2 lifetime parameters, found 1 lifetime parameter + --> $DIR/E0090.rs:14:5 + | +14 | foo::<'static>(); //~ ERROR expected 2 lifetime parameters, found 1 lifetime parameter [E0090] + | ^^^^^^^^^^^^^^ expected 2 lifetime parameters + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0091.rs b/src/test/ui/error-codes/E0091.rs similarity index 100% rename from src/test/compile-fail/E0091.rs rename to src/test/ui/error-codes/E0091.rs diff --git a/src/test/ui/error-codes/E0091.stderr b/src/test/ui/error-codes/E0091.stderr new file mode 100644 index 0000000000000..7d951dd6dfd19 --- /dev/null +++ b/src/test/ui/error-codes/E0091.stderr @@ -0,0 +1,14 @@ +error[E0091]: type parameter `T` is unused + --> $DIR/E0091.rs:11:10 + | +11 | type Foo = u32; //~ ERROR E0091 + | ^ unused type parameter + +error[E0091]: type parameter `B` is unused + --> $DIR/E0091.rs:12:14 + | +12 | type Foo2 = Box; //~ ERROR E0091 + | ^ unused type parameter + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0092.rs b/src/test/ui/error-codes/E0092.rs similarity index 100% rename from src/test/compile-fail/E0092.rs rename to src/test/ui/error-codes/E0092.rs diff --git a/src/test/ui/error-codes/E0092.stderr b/src/test/ui/error-codes/E0092.stderr new file mode 100644 index 0000000000000..788f89944110a --- /dev/null +++ b/src/test/ui/error-codes/E0092.stderr @@ -0,0 +1,8 @@ +error[E0092]: unrecognized atomic operation function: `foo` + --> $DIR/E0092.rs:13:5 + | +13 | fn atomic_foo(); //~ ERROR E0092 + | ^^^^^^^^^^^^^^^^ unrecognized atomic operation + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0093.rs b/src/test/ui/error-codes/E0093.rs similarity index 100% rename from src/test/compile-fail/E0093.rs rename to src/test/ui/error-codes/E0093.rs diff --git a/src/test/ui/error-codes/E0093.stderr b/src/test/ui/error-codes/E0093.stderr new file mode 100644 index 0000000000000..959d64af433f5 --- /dev/null +++ b/src/test/ui/error-codes/E0093.stderr @@ -0,0 +1,8 @@ +error[E0093]: unrecognized intrinsic function: `foo` + --> $DIR/E0093.rs:13:5 + | +13 | fn foo(); + | ^^^^^^^^^ unrecognized intrinsic + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0094.rs b/src/test/ui/error-codes/E0094.rs similarity index 100% rename from src/test/compile-fail/E0094.rs rename to src/test/ui/error-codes/E0094.rs diff --git a/src/test/ui/error-codes/E0094.stderr b/src/test/ui/error-codes/E0094.stderr new file mode 100644 index 0000000000000..fdef3d8877bcf --- /dev/null +++ b/src/test/ui/error-codes/E0094.stderr @@ -0,0 +1,8 @@ +error[E0094]: intrinsic has wrong number of type parameters: found 2, expected 1 + --> $DIR/E0094.rs:13:15 + | +13 | fn size_of() -> usize; //~ ERROR E0094 + | ^^^^^^ expected 1 type parameter + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0106.rs b/src/test/ui/error-codes/E0106.rs similarity index 100% rename from src/test/compile-fail/E0106.rs rename to src/test/ui/error-codes/E0106.rs diff --git a/src/test/ui/error-codes/E0106.stderr b/src/test/ui/error-codes/E0106.stderr new file mode 100644 index 0000000000000..98442804708ea --- /dev/null +++ b/src/test/ui/error-codes/E0106.stderr @@ -0,0 +1,32 @@ +error[E0106]: missing lifetime specifier + --> $DIR/E0106.rs:12:8 + | +12 | x: &bool, + | ^ expected lifetime parameter + +error[E0106]: missing lifetime specifier + --> $DIR/E0106.rs:17:7 + | +17 | B(&bool), + | ^ expected lifetime parameter + +error[E0106]: missing lifetime specifier + --> $DIR/E0106.rs:20:14 + | +20 | type MyStr = &str; + | ^ expected lifetime parameter + +error[E0106]: missing lifetime specifier + --> $DIR/E0106.rs:27:10 + | +27 | baz: Baz, + | ^^^ expected lifetime parameter + +error[E0106]: missing lifetime specifiers + --> $DIR/E0106.rs:30:11 + | +30 | buzz: Buzz, + | ^^^^ expected 2 lifetime parameters + +error: aborting due to 5 previous errors + diff --git a/src/test/compile-fail/E0107.rs b/src/test/ui/error-codes/E0107.rs similarity index 100% rename from src/test/compile-fail/E0107.rs rename to src/test/ui/error-codes/E0107.rs diff --git a/src/test/ui/error-codes/E0107.stderr b/src/test/ui/error-codes/E0107.stderr new file mode 100644 index 0000000000000..6283486039c8d --- /dev/null +++ b/src/test/ui/error-codes/E0107.stderr @@ -0,0 +1,20 @@ +error[E0107]: wrong number of lifetime parameters: expected 2, found 1 + --> $DIR/E0107.rs:21:11 + | +21 | buzz: Buzz<'a>, + | ^^^^^^^^ expected 2 lifetime parameters + +error[E0107]: wrong number of lifetime parameters: expected 0, found 1 + --> $DIR/E0107.rs:24:10 + | +24 | bar: Bar<'a>, + | ^^^^^^^ unexpected lifetime parameter + +error[E0107]: wrong number of lifetime parameters: expected 1, found 3 + --> $DIR/E0107.rs:27:11 + | +27 | foo2: Foo<'a, 'b, 'c>, + | ^^^^^^^^^^^^^^^ 2 unexpected lifetime parameters + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0109.rs b/src/test/ui/error-codes/E0109.rs similarity index 100% rename from src/test/compile-fail/E0109.rs rename to src/test/ui/error-codes/E0109.rs diff --git a/src/test/ui/error-codes/E0109.stderr b/src/test/ui/error-codes/E0109.stderr new file mode 100644 index 0000000000000..59da11140b1e7 --- /dev/null +++ b/src/test/ui/error-codes/E0109.stderr @@ -0,0 +1,8 @@ +error[E0109]: type parameters are not allowed on this type + --> $DIR/E0109.rs:11:14 + | +11 | type X = u32; //~ ERROR E0109 + | ^^^ type parameter not allowed + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0110.rs b/src/test/ui/error-codes/E0110.rs similarity index 100% rename from src/test/compile-fail/E0110.rs rename to src/test/ui/error-codes/E0110.rs diff --git a/src/test/ui/error-codes/E0110.stderr b/src/test/ui/error-codes/E0110.stderr new file mode 100644 index 0000000000000..7417351c16d2c --- /dev/null +++ b/src/test/ui/error-codes/E0110.stderr @@ -0,0 +1,8 @@ +error[E0110]: lifetime parameters are not allowed on this type + --> $DIR/E0110.rs:11:14 + | +11 | type X = u32<'static>; //~ ERROR E0110 + | ^^^^^^^ lifetime parameter not allowed on this type + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0116.rs b/src/test/ui/error-codes/E0116.rs similarity index 100% rename from src/test/compile-fail/E0116.rs rename to src/test/ui/error-codes/E0116.rs diff --git a/src/test/ui/error-codes/E0116.stderr b/src/test/ui/error-codes/E0116.stderr new file mode 100644 index 0000000000000..c090060e7d67d --- /dev/null +++ b/src/test/ui/error-codes/E0116.stderr @@ -0,0 +1,10 @@ +error[E0116]: cannot define inherent `impl` for a type outside of the crate where the type is defined + --> $DIR/E0116.rs:11:1 + | +11 | impl Vec {} + | ^^^^^^^^^^^^^^^ impl for type defined outside of crate. + | + = note: define and implement a trait or new type instead + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0117.rs b/src/test/ui/error-codes/E0117.rs similarity index 100% rename from src/test/compile-fail/E0117.rs rename to src/test/ui/error-codes/E0117.rs diff --git a/src/test/ui/error-codes/E0117.stderr b/src/test/ui/error-codes/E0117.stderr new file mode 100644 index 0000000000000..9856692659a50 --- /dev/null +++ b/src/test/ui/error-codes/E0117.stderr @@ -0,0 +1,17 @@ +error[E0120]: the Drop trait may only be implemented on structures + --> $DIR/E0117.rs:11:15 + | +11 | impl Drop for u32 {} //~ ERROR E0117 + | ^^^ implementing Drop requires a struct + +error[E0117]: only traits defined in the current crate can be implemented for arbitrary types + --> $DIR/E0117.rs:11:1 + | +11 | impl Drop for u32 {} //~ ERROR E0117 + | ^^^^^^^^^^^^^^^^^^^^ impl doesn't use types inside crate + | + = note: the impl does not reference any types defined in this crate + = note: define and implement a trait or new type instead + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0118.rs b/src/test/ui/error-codes/E0118.rs similarity index 100% rename from src/test/compile-fail/E0118.rs rename to src/test/ui/error-codes/E0118.rs diff --git a/src/test/ui/error-codes/E0118.stderr b/src/test/ui/error-codes/E0118.stderr new file mode 100644 index 0000000000000..8c78890b88acc --- /dev/null +++ b/src/test/ui/error-codes/E0118.stderr @@ -0,0 +1,10 @@ +error[E0118]: no base type found for inherent implementation + --> $DIR/E0118.rs:11:6 + | +11 | impl (u8, u8) { //~ ERROR E0118 + | ^^^^^^^^ impl requires a base type + | + = note: either implement a trait on it or create a newtype to wrap it instead + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0119.rs b/src/test/ui/error-codes/E0119.rs similarity index 100% rename from src/test/compile-fail/E0119.rs rename to src/test/ui/error-codes/E0119.rs diff --git a/src/test/ui/error-codes/E0119.stderr b/src/test/ui/error-codes/E0119.stderr new file mode 100644 index 0000000000000..91bb74a10d67d --- /dev/null +++ b/src/test/ui/error-codes/E0119.stderr @@ -0,0 +1,11 @@ +error[E0119]: conflicting implementations of trait `MyTrait` for type `Foo`: + --> $DIR/E0119.rs:23:1 + | +15 | impl MyTrait for T { + | --------------------- first implementation here +... +23 | impl MyTrait for Foo { //~ ERROR E0119 + | ^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `Foo` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0120.rs b/src/test/ui/error-codes/E0120.rs similarity index 100% rename from src/test/compile-fail/E0120.rs rename to src/test/ui/error-codes/E0120.rs diff --git a/src/test/ui/error-codes/E0120.stderr b/src/test/ui/error-codes/E0120.stderr new file mode 100644 index 0000000000000..7c666d9fd0a6d --- /dev/null +++ b/src/test/ui/error-codes/E0120.stderr @@ -0,0 +1,8 @@ +error[E0120]: the Drop trait may only be implemented on structures + --> $DIR/E0120.rs:13:15 + | +13 | impl Drop for MyTrait { + | ^^^^^^^ implementing Drop requires a struct + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0121.rs b/src/test/ui/error-codes/E0121.rs similarity index 100% rename from src/test/compile-fail/E0121.rs rename to src/test/ui/error-codes/E0121.rs diff --git a/src/test/ui/error-codes/E0121.stderr b/src/test/ui/error-codes/E0121.stderr new file mode 100644 index 0000000000000..fa54d67856318 --- /dev/null +++ b/src/test/ui/error-codes/E0121.stderr @@ -0,0 +1,14 @@ +error[E0121]: the type placeholder `_` is not allowed within types on item signatures + --> $DIR/E0121.rs:11:13 + | +11 | fn foo() -> _ { 5 } //~ ERROR E0121 + | ^ not allowed in type signatures + +error[E0121]: the type placeholder `_` is not allowed within types on item signatures + --> $DIR/E0121.rs:13:13 + | +13 | static BAR: _ = "test"; //~ ERROR E0121 + | ^ not allowed in type signatures + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0124.rs b/src/test/ui/error-codes/E0124.rs similarity index 100% rename from src/test/compile-fail/E0124.rs rename to src/test/ui/error-codes/E0124.rs diff --git a/src/test/ui/error-codes/E0124.stderr b/src/test/ui/error-codes/E0124.stderr new file mode 100644 index 0000000000000..8e1ec51ea1cb7 --- /dev/null +++ b/src/test/ui/error-codes/E0124.stderr @@ -0,0 +1,10 @@ +error[E0124]: field `field1` is already declared + --> $DIR/E0124.rs:13:5 + | +12 | field1: i32, + | ----------- `field1` first declared here +13 | field1: i32, + | ^^^^^^^^^^^ field already declared + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0128.rs b/src/test/ui/error-codes/E0128.rs similarity index 100% rename from src/test/compile-fail/E0128.rs rename to src/test/ui/error-codes/E0128.rs diff --git a/src/test/ui/error-codes/E0128.stderr b/src/test/ui/error-codes/E0128.stderr new file mode 100644 index 0000000000000..fad2d0db8abdf --- /dev/null +++ b/src/test/ui/error-codes/E0128.stderr @@ -0,0 +1,8 @@ +error[E0128]: type parameters with a default cannot use forward declared identifiers + --> $DIR/E0128.rs:11:14 + | +11 | struct Foo { //~ ERROR E0128 + | ^ defaulted type parameters cannot be forward declared + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0130.rs b/src/test/ui/error-codes/E0130.rs similarity index 100% rename from src/test/compile-fail/E0130.rs rename to src/test/ui/error-codes/E0130.rs diff --git a/src/test/ui/error-codes/E0130.stderr b/src/test/ui/error-codes/E0130.stderr new file mode 100644 index 0000000000000..02aebe0362a13 --- /dev/null +++ b/src/test/ui/error-codes/E0130.stderr @@ -0,0 +1,8 @@ +error[E0130]: patterns aren't allowed in foreign function declarations + --> $DIR/E0130.rs:12:12 + | +12 | fn foo((a, b): (u32, u32)); + | ^^^^^^ pattern not allowed in foreign function + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0131.rs b/src/test/ui/error-codes/E0131.rs similarity index 100% rename from src/test/compile-fail/E0131.rs rename to src/test/ui/error-codes/E0131.rs diff --git a/src/test/ui/error-codes/E0131.stderr b/src/test/ui/error-codes/E0131.stderr new file mode 100644 index 0000000000000..d97e00fb82df1 --- /dev/null +++ b/src/test/ui/error-codes/E0131.stderr @@ -0,0 +1,8 @@ +error[E0131]: main function is not allowed to have type parameters + --> $DIR/E0131.rs:11:8 + | +11 | fn main() { + | ^^^ main cannot have type parameters + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0132.rs b/src/test/ui/error-codes/E0132.rs similarity index 100% rename from src/test/compile-fail/E0132.rs rename to src/test/ui/error-codes/E0132.rs diff --git a/src/test/ui/error-codes/E0132.stderr b/src/test/ui/error-codes/E0132.stderr new file mode 100644 index 0000000000000..5c66d67b907b3 --- /dev/null +++ b/src/test/ui/error-codes/E0132.stderr @@ -0,0 +1,8 @@ +error[E0132]: start function is not allowed to have type parameters + --> $DIR/E0132.rs:14:5 + | +14 | fn f< T >() {} //~ ERROR E0132 + | ^^^^^ start function cannot have type parameters + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0133.rs b/src/test/ui/error-codes/E0133.rs similarity index 100% rename from src/test/compile-fail/E0133.rs rename to src/test/ui/error-codes/E0133.rs diff --git a/src/test/ui/error-codes/E0133.stderr b/src/test/ui/error-codes/E0133.stderr new file mode 100644 index 0000000000000..4d2ebd111ddf6 --- /dev/null +++ b/src/test/ui/error-codes/E0133.stderr @@ -0,0 +1,8 @@ +error[E0133]: call to unsafe function requires unsafe function or block + --> $DIR/E0133.rs:14:5 + | +14 | f(); + | ^^^ call to unsafe function + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0137.rs b/src/test/ui/error-codes/E0137.rs similarity index 100% rename from src/test/compile-fail/E0137.rs rename to src/test/ui/error-codes/E0137.rs diff --git a/src/test/ui/error-codes/E0137.stderr b/src/test/ui/error-codes/E0137.stderr new file mode 100644 index 0000000000000..bc6bbffb18e72 --- /dev/null +++ b/src/test/ui/error-codes/E0137.stderr @@ -0,0 +1,11 @@ +error[E0137]: multiple functions with a #[main] attribute + --> $DIR/E0137.rs:17:1 + | +14 | fn foo() {} + | ----------- first #[main] function +... +17 | fn f() {} + | ^^^^^^^^^ additional #[main] function + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0138.rs b/src/test/ui/error-codes/E0138.rs similarity index 100% rename from src/test/compile-fail/E0138.rs rename to src/test/ui/error-codes/E0138.rs diff --git a/src/test/ui/error-codes/E0138.stderr b/src/test/ui/error-codes/E0138.stderr new file mode 100644 index 0000000000000..cee7cc5d90629 --- /dev/null +++ b/src/test/ui/error-codes/E0138.stderr @@ -0,0 +1,11 @@ +error[E0138]: multiple 'start' functions + --> $DIR/E0138.rs:17:1 + | +14 | fn foo(argc: isize, argv: *const *const u8) -> isize { 0 } + | ---------------------------------------------------------- previous `start` function here +... +17 | fn f(argc: isize, argv: *const *const u8) -> isize { 0 } + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ multiple `start` functions + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0152.rs b/src/test/ui/error-codes/E0152.rs similarity index 100% rename from src/test/compile-fail/E0152.rs rename to src/test/ui/error-codes/E0152.rs diff --git a/src/test/ui/error-codes/E0152.stderr b/src/test/ui/error-codes/E0152.stderr new file mode 100644 index 0000000000000..a1d5597f031f6 --- /dev/null +++ b/src/test/ui/error-codes/E0152.stderr @@ -0,0 +1,10 @@ +error[E0152]: duplicate lang item found: `panic_fmt`. + --> $DIR/E0152.rs:14:1 + | +14 | struct Foo; //~ ERROR E0152 + | ^^^^^^^^^^^ + | + = note: first defined in crate `std`. + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0161.rs b/src/test/ui/error-codes/E0161.rs similarity index 100% rename from src/test/compile-fail/E0161.rs rename to src/test/ui/error-codes/E0161.rs diff --git a/src/test/ui/error-codes/E0161.stderr b/src/test/ui/error-codes/E0161.stderr new file mode 100644 index 0000000000000..9914fdd2d6155 --- /dev/null +++ b/src/test/ui/error-codes/E0161.stderr @@ -0,0 +1,14 @@ +error[E0161]: cannot move a value of type str: the size of str cannot be statically determined + --> $DIR/E0161.rs:14:28 + | +14 | let _x: Box = box *"hello"; //~ ERROR E0161 + | ^^^^^^^^ + +error[E0507]: cannot move out of borrowed content + --> $DIR/E0161.rs:14:28 + | +14 | let _x: Box = box *"hello"; //~ ERROR E0161 + | ^^^^^^^^ cannot move out of borrowed content + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0162.rs b/src/test/ui/error-codes/E0162.rs similarity index 100% rename from src/test/compile-fail/E0162.rs rename to src/test/ui/error-codes/E0162.rs diff --git a/src/test/ui/error-codes/E0162.stderr b/src/test/ui/error-codes/E0162.stderr new file mode 100644 index 0000000000000..318a023d30213 --- /dev/null +++ b/src/test/ui/error-codes/E0162.stderr @@ -0,0 +1,8 @@ +error[E0162]: irrefutable if-let pattern + --> $DIR/E0162.rs:15:12 + | +15 | if let Irrefutable(x) = irr { //~ ERROR E0162 + | ^^^^^^^^^^^^^^ irrefutable pattern + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0164.rs b/src/test/ui/error-codes/E0164.rs similarity index 100% rename from src/test/compile-fail/E0164.rs rename to src/test/ui/error-codes/E0164.rs diff --git a/src/test/ui/error-codes/E0164.stderr b/src/test/ui/error-codes/E0164.stderr new file mode 100644 index 0000000000000..a515c83d14b2d --- /dev/null +++ b/src/test/ui/error-codes/E0164.stderr @@ -0,0 +1,8 @@ +error[E0164]: expected tuple struct/variant, found associated constant `::B` + --> $DIR/E0164.rs:20:9 + | +20 | Foo::B(i) => i, //~ ERROR E0164 + | ^^^^^^^^^ not a tuple variant or struct + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0165.rs b/src/test/ui/error-codes/E0165.rs similarity index 100% rename from src/test/compile-fail/E0165.rs rename to src/test/ui/error-codes/E0165.rs diff --git a/src/test/ui/error-codes/E0165.stderr b/src/test/ui/error-codes/E0165.stderr new file mode 100644 index 0000000000000..3c90f19a0dc7c --- /dev/null +++ b/src/test/ui/error-codes/E0165.stderr @@ -0,0 +1,8 @@ +error[E0165]: irrefutable while-let pattern + --> $DIR/E0165.rs:15:15 + | +15 | while let Irrefutable(x) = irr { //~ ERROR E0165 + | ^^^^^^^^^^^^^^ irrefutable pattern + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0184.rs b/src/test/ui/error-codes/E0184.rs similarity index 100% rename from src/test/compile-fail/E0184.rs rename to src/test/ui/error-codes/E0184.rs diff --git a/src/test/ui/error-codes/E0184.stderr b/src/test/ui/error-codes/E0184.stderr new file mode 100644 index 0000000000000..53bda3bb57591 --- /dev/null +++ b/src/test/ui/error-codes/E0184.stderr @@ -0,0 +1,8 @@ +error[E0184]: the trait `Copy` may not be implemented for this type; the type has a destructor + --> $DIR/E0184.rs:11:10 + | +11 | #[derive(Copy)] //~ ERROR E0184 + | ^^^^ Copy not allowed on types with destructors + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0185.rs b/src/test/ui/error-codes/E0185.rs similarity index 100% rename from src/test/compile-fail/E0185.rs rename to src/test/ui/error-codes/E0185.rs diff --git a/src/test/ui/error-codes/E0185.stderr b/src/test/ui/error-codes/E0185.stderr new file mode 100644 index 0000000000000..0d24a3712d558 --- /dev/null +++ b/src/test/ui/error-codes/E0185.stderr @@ -0,0 +1,11 @@ +error[E0185]: method `foo` has a `&self` declaration in the impl, but not in the trait + --> $DIR/E0185.rs:19:5 + | +12 | fn foo(); + | --------- trait method declared without `&self` +... +19 | fn foo(&self) {} + | ^^^^^^^^^^^^^ `&self` used in impl + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0186.rs b/src/test/ui/error-codes/E0186.rs similarity index 100% rename from src/test/compile-fail/E0186.rs rename to src/test/ui/error-codes/E0186.rs diff --git a/src/test/ui/error-codes/E0186.stderr b/src/test/ui/error-codes/E0186.stderr new file mode 100644 index 0000000000000..598057db3a662 --- /dev/null +++ b/src/test/ui/error-codes/E0186.stderr @@ -0,0 +1,11 @@ +error[E0186]: method `foo` has a `&self` declaration in the trait, but not in the impl + --> $DIR/E0186.rs:18:5 + | +12 | fn foo(&self); //~ `&self` used in trait + | -------------- `&self` used in trait +... +18 | fn foo() {} //~ ERROR E0186 + | ^^^^^^^^ expected `&self` in impl + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0191.rs b/src/test/ui/error-codes/E0191.rs similarity index 100% rename from src/test/compile-fail/E0191.rs rename to src/test/ui/error-codes/E0191.rs diff --git a/src/test/ui/error-codes/E0191.stderr b/src/test/ui/error-codes/E0191.stderr new file mode 100644 index 0000000000000..8f99a6ecffb99 --- /dev/null +++ b/src/test/ui/error-codes/E0191.stderr @@ -0,0 +1,8 @@ +error[E0191]: the value of the associated type `Bar` (from the trait `Trait`) must be specified + --> $DIR/E0191.rs:15:12 + | +15 | type Foo = Trait; //~ ERROR E0191 + | ^^^^^ missing associated type `Bar` value + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0192.rs b/src/test/ui/error-codes/E0192.rs similarity index 100% rename from src/test/compile-fail/E0192.rs rename to src/test/ui/error-codes/E0192.rs diff --git a/src/test/ui/error-codes/E0192.stderr b/src/test/ui/error-codes/E0192.stderr new file mode 100644 index 0000000000000..b592c87efa7a0 --- /dev/null +++ b/src/test/ui/error-codes/E0192.stderr @@ -0,0 +1,8 @@ +error[E0192]: negative impls are only allowed for auto traits (e.g., `Send` and `Sync`) + --> $DIR/E0192.rs:19:1 + | +19 | impl !Trait for Foo { } //~ ERROR E0192 + | ^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0194.rs b/src/test/ui/error-codes/E0194.rs similarity index 100% rename from src/test/compile-fail/E0194.rs rename to src/test/ui/error-codes/E0194.rs diff --git a/src/test/ui/error-codes/E0194.stderr b/src/test/ui/error-codes/E0194.stderr new file mode 100644 index 0000000000000..360e8c08a3c97 --- /dev/null +++ b/src/test/ui/error-codes/E0194.stderr @@ -0,0 +1,11 @@ +error[E0194]: type parameter `T` shadows another type parameter of the same name + --> $DIR/E0194.rs:13:26 + | +11 | trait Foo { + | - first `T` declared here +12 | fn do_something(&self) -> T; +13 | fn do_something_else(&self, bar: T); + | ^ shadows another type parameter + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0195.rs b/src/test/ui/error-codes/E0195.rs similarity index 100% rename from src/test/compile-fail/E0195.rs rename to src/test/ui/error-codes/E0195.rs diff --git a/src/test/ui/error-codes/E0195.stderr b/src/test/ui/error-codes/E0195.stderr new file mode 100644 index 0000000000000..3cce3d0799416 --- /dev/null +++ b/src/test/ui/error-codes/E0195.stderr @@ -0,0 +1,11 @@ +error[E0195]: lifetime parameters or bounds on method `bar` do not match the trait declaration + --> $DIR/E0195.rs:19:5 + | +12 | fn bar<'a,'b:'a>(x: &'a str, y: &'b str); + | ----------------------------------------- lifetimes in impl do not match this method in trait +... +19 | fn bar<'a,'b>(x: &'a str, y: &'b str) { //~ ERROR E0195 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetimes do not match method in trait + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0197.rs b/src/test/ui/error-codes/E0197.rs similarity index 100% rename from src/test/compile-fail/E0197.rs rename to src/test/ui/error-codes/E0197.rs diff --git a/src/test/ui/error-codes/E0197.stderr b/src/test/ui/error-codes/E0197.stderr new file mode 100644 index 0000000000000..277f523e497aa --- /dev/null +++ b/src/test/ui/error-codes/E0197.stderr @@ -0,0 +1,8 @@ +error[E0197]: inherent impls cannot be unsafe + --> $DIR/E0197.rs:13:1 + | +13 | unsafe impl Foo { } //~ ERROR E0197 + | ^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0198.rs b/src/test/ui/error-codes/E0198.rs similarity index 100% rename from src/test/compile-fail/E0198.rs rename to src/test/ui/error-codes/E0198.rs diff --git a/src/test/ui/error-codes/E0198.stderr b/src/test/ui/error-codes/E0198.stderr new file mode 100644 index 0000000000000..a85419e9a1397 --- /dev/null +++ b/src/test/ui/error-codes/E0198.stderr @@ -0,0 +1,8 @@ +error[E0198]: negative impls cannot be unsafe + --> $DIR/E0198.rs:15:1 + | +15 | unsafe impl !Send for Foo { } //~ ERROR E0198 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0199.rs b/src/test/ui/error-codes/E0199.rs similarity index 100% rename from src/test/compile-fail/E0199.rs rename to src/test/ui/error-codes/E0199.rs diff --git a/src/test/ui/error-codes/E0199.stderr b/src/test/ui/error-codes/E0199.stderr new file mode 100644 index 0000000000000..efbe066e52e7e --- /dev/null +++ b/src/test/ui/error-codes/E0199.stderr @@ -0,0 +1,8 @@ +error[E0199]: implementing the trait `Bar` is not unsafe + --> $DIR/E0199.rs:16:1 + | +16 | unsafe impl Bar for Foo { } //~ ERROR implementing the trait `Bar` is not unsafe [E0199] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0200.rs b/src/test/ui/error-codes/E0200.rs similarity index 100% rename from src/test/compile-fail/E0200.rs rename to src/test/ui/error-codes/E0200.rs diff --git a/src/test/ui/error-codes/E0200.stderr b/src/test/ui/error-codes/E0200.stderr new file mode 100644 index 0000000000000..fb71da23677bd --- /dev/null +++ b/src/test/ui/error-codes/E0200.stderr @@ -0,0 +1,8 @@ +error[E0200]: the trait `Bar` requires an `unsafe impl` declaration + --> $DIR/E0200.rs:15:1 + | +15 | impl Bar for Foo { } //~ ERROR E0200 + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0201.rs b/src/test/ui/error-codes/E0201.rs similarity index 100% rename from src/test/compile-fail/E0201.rs rename to src/test/ui/error-codes/E0201.rs diff --git a/src/test/ui/error-codes/E0201.stderr b/src/test/ui/error-codes/E0201.stderr new file mode 100644 index 0000000000000..01dbee6e09236 --- /dev/null +++ b/src/test/ui/error-codes/E0201.stderr @@ -0,0 +1,27 @@ +error[E0201]: duplicate definitions with name `bar`: + --> $DIR/E0201.rs:15:5 + | +14 | fn bar(&self) -> bool { self.0 > 5 } + | ------------------------------------ previous definition of `bar` here +15 | fn bar() {} //~ ERROR E0201 + | ^^^^^^^^^^^ duplicate definition + +error[E0201]: duplicate definitions with name `baz`: + --> $DIR/E0201.rs:27:5 + | +26 | fn baz(&self) -> bool { true } + | ------------------------------ previous definition of `baz` here +27 | fn baz(&self) -> bool { self.0 > 5 } //~ ERROR E0201 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definition + +error[E0201]: duplicate definitions with name `Quux`: + --> $DIR/E0201.rs:28:5 + | +24 | type Quux = u32; + | ---------------- previous definition of `Quux` here +... +28 | type Quux = u32; //~ ERROR E0201 + | ^^^^^^^^^^^^^^^^ duplicate definition + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0206.rs b/src/test/ui/error-codes/E0206.rs similarity index 100% rename from src/test/compile-fail/E0206.rs rename to src/test/ui/error-codes/E0206.rs diff --git a/src/test/ui/error-codes/E0206.stderr b/src/test/ui/error-codes/E0206.stderr new file mode 100644 index 0000000000000..8eeb94a42f4b8 --- /dev/null +++ b/src/test/ui/error-codes/E0206.stderr @@ -0,0 +1,23 @@ +error[E0206]: the trait `Copy` may not be implemented for this type + --> $DIR/E0206.rs:13:15 + | +13 | impl Copy for Foo { } + | ^^^ type is not a structure or enumeration + +error[E0206]: the trait `Copy` may not be implemented for this type + --> $DIR/E0206.rs:20:15 + | +20 | impl Copy for &'static Bar { } + | ^^^^^^^^^^^^ type is not a structure or enumeration + +error[E0117]: only traits defined in the current crate can be implemented for arbitrary types + --> $DIR/E0206.rs:13:1 + | +13 | impl Copy for Foo { } + | ^^^^^^^^^^^^^^^^^^^^^ impl doesn't use types inside crate + | + = note: the impl does not reference any types defined in this crate + = note: define and implement a trait or new type instead + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0207.rs b/src/test/ui/error-codes/E0207.rs similarity index 100% rename from src/test/compile-fail/E0207.rs rename to src/test/ui/error-codes/E0207.rs diff --git a/src/test/ui/error-codes/E0207.stderr b/src/test/ui/error-codes/E0207.stderr new file mode 100644 index 0000000000000..35f9109fe99ed --- /dev/null +++ b/src/test/ui/error-codes/E0207.stderr @@ -0,0 +1,8 @@ +error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates + --> $DIR/E0207.rs:13:6 + | +13 | impl Foo { //~ ERROR E0207 + | ^ unconstrained type parameter + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0214.rs b/src/test/ui/error-codes/E0214.rs similarity index 100% rename from src/test/compile-fail/E0214.rs rename to src/test/ui/error-codes/E0214.rs diff --git a/src/test/ui/error-codes/E0214.stderr b/src/test/ui/error-codes/E0214.stderr new file mode 100644 index 0000000000000..30f5b960a364e --- /dev/null +++ b/src/test/ui/error-codes/E0214.stderr @@ -0,0 +1,8 @@ +error[E0214]: parenthesized parameters may only be used with a trait + --> $DIR/E0214.rs:12:15 + | +12 | let v: Vec(&str) = vec!["foo"]; + | ^^^^^^ only traits may use parentheses + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0220.rs b/src/test/ui/error-codes/E0220.rs similarity index 100% rename from src/test/compile-fail/E0220.rs rename to src/test/ui/error-codes/E0220.rs diff --git a/src/test/ui/error-codes/E0220.stderr b/src/test/ui/error-codes/E0220.stderr new file mode 100644 index 0000000000000..70b017b782f2d --- /dev/null +++ b/src/test/ui/error-codes/E0220.stderr @@ -0,0 +1,14 @@ +error[E0220]: associated type `F` not found for `Trait` + --> $DIR/E0220.rs:15:18 + | +15 | type Foo = Trait; //~ ERROR E0220 + | ^^^^^ associated type `F` not found + +error[E0191]: the value of the associated type `Bar` (from the trait `Trait`) must be specified + --> $DIR/E0220.rs:15:12 + | +15 | type Foo = Trait; //~ ERROR E0220 + | ^^^^^^^^^^^^ missing associated type `Bar` value + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0221.rs b/src/test/ui/error-codes/E0221.rs similarity index 100% rename from src/test/compile-fail/E0221.rs rename to src/test/ui/error-codes/E0221.rs diff --git a/src/test/ui/error-codes/E0221.stderr b/src/test/ui/error-codes/E0221.stderr new file mode 100644 index 0000000000000..3dd9393d6b32a --- /dev/null +++ b/src/test/ui/error-codes/E0221.stderr @@ -0,0 +1,29 @@ +error[E0221]: ambiguous associated type `A` in bounds of `Self` + --> $DIR/E0221.rs:21:16 + | +15 | type A: T1; + | ----------- ambiguous `A` from `Foo` +... +19 | type A: T2; + | ----------- ambiguous `A` from `Bar` +20 | fn do_something() { +21 | let _: Self::A; + | ^^^^^^^ ambiguous associated type `A` + +error[E0221]: ambiguous associated type `Err` in bounds of `Self` + --> $DIR/E0221.rs:31:16 + | +29 | type Err: T3; + | ------------- ambiguous `Err` from `My` +30 | fn test() { +31 | let _: Self::Err; + | ^^^^^^^^^ ambiguous associated type `Err` + | +note: associated type `Self` could derive from `std::str::FromStr` + --> $DIR/E0221.rs:31:16 + | +31 | let _: Self::Err; + | ^^^^^^^^^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0223.rs b/src/test/ui/error-codes/E0223.rs similarity index 100% rename from src/test/compile-fail/E0223.rs rename to src/test/ui/error-codes/E0223.rs diff --git a/src/test/ui/error-codes/E0223.stderr b/src/test/ui/error-codes/E0223.stderr new file mode 100644 index 0000000000000..efd0d7806581c --- /dev/null +++ b/src/test/ui/error-codes/E0223.stderr @@ -0,0 +1,10 @@ +error[E0223]: ambiguous associated type + --> $DIR/E0223.rs:14:14 + | +14 | let foo: MyTrait::X; + | ^^^^^^^^^^ ambiguous associated type + | + = note: specify the type using the syntax `::X` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0225.rs b/src/test/ui/error-codes/E0225.rs similarity index 100% rename from src/test/compile-fail/E0225.rs rename to src/test/ui/error-codes/E0225.rs diff --git a/src/test/ui/error-codes/E0225.stderr b/src/test/ui/error-codes/E0225.stderr new file mode 100644 index 0000000000000..35d40cb1017d1 --- /dev/null +++ b/src/test/ui/error-codes/E0225.stderr @@ -0,0 +1,8 @@ +error[E0225]: only auto traits can be used as additional traits in a trait object + --> $DIR/E0225.rs:12:32 + | +12 | let _: Box; + | ^^^^^^^^^^^^^^ non-auto additional trait + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0229.rs b/src/test/ui/error-codes/E0229.rs similarity index 100% rename from src/test/compile-fail/E0229.rs rename to src/test/ui/error-codes/E0229.rs diff --git a/src/test/ui/error-codes/E0229.stderr b/src/test/ui/error-codes/E0229.stderr new file mode 100644 index 0000000000000..6d88ef88bffc3 --- /dev/null +++ b/src/test/ui/error-codes/E0229.stderr @@ -0,0 +1,8 @@ +error[E0229]: associated type bindings are not allowed here + --> $DIR/E0229.rs:23:25 + | +23 | fn baz(x: &>::A) {} + | ^^^^^ associated type not allowed here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0232.rs b/src/test/ui/error-codes/E0232.rs similarity index 100% rename from src/test/compile-fail/E0232.rs rename to src/test/ui/error-codes/E0232.rs diff --git a/src/test/ui/error-codes/E0232.stderr b/src/test/ui/error-codes/E0232.stderr new file mode 100644 index 0000000000000..e13ba62b073ce --- /dev/null +++ b/src/test/ui/error-codes/E0232.stderr @@ -0,0 +1,10 @@ +error[E0232]: `#[rustc_on_unimplemented]` requires a value + --> $DIR/E0232.rs:13:1 + | +13 | #[rustc_on_unimplemented] + | ^^^^^^^^^^^^^^^^^^^^^^^^^ value required here + | + = note: eg `#[rustc_on_unimplemented = "foo"]` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0243.rs b/src/test/ui/error-codes/E0243.rs similarity index 100% rename from src/test/compile-fail/E0243.rs rename to src/test/ui/error-codes/E0243.rs diff --git a/src/test/ui/error-codes/E0243.stderr b/src/test/ui/error-codes/E0243.stderr new file mode 100644 index 0000000000000..82a90fff34208 --- /dev/null +++ b/src/test/ui/error-codes/E0243.stderr @@ -0,0 +1,8 @@ +error[E0243]: wrong number of type arguments: expected 1, found 0 + --> $DIR/E0243.rs:12:17 + | +12 | struct Bar { x: Foo } + | ^^^ expected 1 type argument + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0244.rs b/src/test/ui/error-codes/E0244.rs similarity index 100% rename from src/test/compile-fail/E0244.rs rename to src/test/ui/error-codes/E0244.rs diff --git a/src/test/ui/error-codes/E0244.stderr b/src/test/ui/error-codes/E0244.stderr new file mode 100644 index 0000000000000..d873fbe9819f8 --- /dev/null +++ b/src/test/ui/error-codes/E0244.stderr @@ -0,0 +1,8 @@ +error[E0244]: wrong number of type arguments: expected 0, found 2 + --> $DIR/E0244.rs:12:23 + | +12 | struct Bar { x: Foo } + | ^^^^^^^^^ expected no type arguments + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0252.rs b/src/test/ui/error-codes/E0252.rs similarity index 100% rename from src/test/compile-fail/E0252.rs rename to src/test/ui/error-codes/E0252.rs diff --git a/src/test/ui/error-codes/E0252.stderr b/src/test/ui/error-codes/E0252.stderr new file mode 100644 index 0000000000000..f63597d697086 --- /dev/null +++ b/src/test/ui/error-codes/E0252.stderr @@ -0,0 +1,16 @@ +error[E0252]: the name `baz` is defined multiple times + --> $DIR/E0252.rs:12:5 + | +11 | use foo::baz; + | -------- previous import of the type `baz` here +12 | use bar::baz; //~ ERROR E0252 + | ^^^^^^^^ `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 + | +12 | use bar::baz as other_baz; //~ ERROR E0252 + | ^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0253.rs b/src/test/ui/error-codes/E0253.rs similarity index 100% rename from src/test/compile-fail/E0253.rs rename to src/test/ui/error-codes/E0253.rs diff --git a/src/test/ui/error-codes/E0253.stderr b/src/test/ui/error-codes/E0253.stderr new file mode 100644 index 0000000000000..e5a311537810d --- /dev/null +++ b/src/test/ui/error-codes/E0253.stderr @@ -0,0 +1,8 @@ +error[E0253]: `do_something` is not directly importable + --> $DIR/E0253.rs:17:5 + | +17 | use foo::MyTrait::do_something; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot be imported directly + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0254.rs b/src/test/ui/error-codes/E0254.rs similarity index 100% rename from src/test/compile-fail/E0254.rs rename to src/test/ui/error-codes/E0254.rs diff --git a/src/test/ui/error-codes/E0254.stderr b/src/test/ui/error-codes/E0254.stderr new file mode 100644 index 0000000000000..4181c7b1f7fb0 --- /dev/null +++ b/src/test/ui/error-codes/E0254.stderr @@ -0,0 +1,17 @@ +error[E0254]: the name `alloc` is defined multiple times + --> $DIR/E0254.rs:22:5 + | +14 | extern crate alloc; + | ------------------- previous import of the extern crate `alloc` here +... +22 | use foo::alloc; + | ^^^^^^^^^^ `alloc` reimported here + | + = note: `alloc` 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 + | +22 | use foo::alloc as other_alloc; + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0255.rs b/src/test/ui/error-codes/E0255.rs similarity index 100% rename from src/test/compile-fail/E0255.rs rename to src/test/ui/error-codes/E0255.rs diff --git a/src/test/ui/error-codes/E0255.stderr b/src/test/ui/error-codes/E0255.stderr new file mode 100644 index 0000000000000..924ac49695c63 --- /dev/null +++ b/src/test/ui/error-codes/E0255.stderr @@ -0,0 +1,17 @@ +error[E0255]: the name `foo` is defined multiple times + --> $DIR/E0255.rs:13:1 + | +11 | use bar::foo; + | -------- previous import of the value `foo` here +12 | +13 | fn foo() {} //~ ERROR E0255 + | ^^^^^^^^ `foo` redefined here + | + = note: `foo` 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 + | +11 | use bar::foo as other_foo; + | ^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0259.rs b/src/test/ui/error-codes/E0259.rs similarity index 100% rename from src/test/compile-fail/E0259.rs rename to src/test/ui/error-codes/E0259.rs diff --git a/src/test/ui/error-codes/E0259.stderr b/src/test/ui/error-codes/E0259.stderr new file mode 100644 index 0000000000000..e05e4e1cac74e --- /dev/null +++ b/src/test/ui/error-codes/E0259.stderr @@ -0,0 +1,16 @@ +error[E0259]: the name `alloc` is defined multiple times + --> $DIR/E0259.rs:16:1 + | +14 | extern crate alloc; + | ------------------- previous import of the extern crate `alloc` here +15 | +16 | extern crate libc as alloc; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | | + | `alloc` reimported here + | You can use `as` to change the binding name of the import + | + = note: `alloc` must be defined only once in the type namespace of this module + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0260.rs b/src/test/ui/error-codes/E0260.rs similarity index 100% rename from src/test/compile-fail/E0260.rs rename to src/test/ui/error-codes/E0260.rs diff --git a/src/test/ui/error-codes/E0260.stderr b/src/test/ui/error-codes/E0260.stderr new file mode 100644 index 0000000000000..3d899e636ee38 --- /dev/null +++ b/src/test/ui/error-codes/E0260.stderr @@ -0,0 +1,17 @@ +error[E0260]: the name `alloc` is defined multiple times + --> $DIR/E0260.rs:16:1 + | +14 | extern crate alloc; + | ------------------- previous import of the extern crate `alloc` here +15 | +16 | mod alloc { + | ^^^^^^^^^ `alloc` redefined here + | + = note: `alloc` 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 + | +14 | extern crate alloc as other_alloc; + | + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0261.rs b/src/test/ui/error-codes/E0261.rs similarity index 100% rename from src/test/compile-fail/E0261.rs rename to src/test/ui/error-codes/E0261.rs diff --git a/src/test/ui/error-codes/E0261.stderr b/src/test/ui/error-codes/E0261.stderr new file mode 100644 index 0000000000000..c8dd08211ecb0 --- /dev/null +++ b/src/test/ui/error-codes/E0261.stderr @@ -0,0 +1,14 @@ +error[E0261]: use of undeclared lifetime name `'a` + --> $DIR/E0261.rs:11:12 + | +11 | fn foo(x: &'a str) { } //~ ERROR E0261 + | ^^ undeclared lifetime + +error[E0261]: use of undeclared lifetime name `'a` + --> $DIR/E0261.rs:15:9 + | +15 | x: &'a str, //~ ERROR E0261 + | ^^ undeclared lifetime + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0262.rs b/src/test/ui/error-codes/E0262.rs similarity index 100% rename from src/test/compile-fail/E0262.rs rename to src/test/ui/error-codes/E0262.rs diff --git a/src/test/ui/error-codes/E0262.stderr b/src/test/ui/error-codes/E0262.stderr new file mode 100644 index 0000000000000..0910009d2c0dc --- /dev/null +++ b/src/test/ui/error-codes/E0262.stderr @@ -0,0 +1,8 @@ +error[E0262]: invalid lifetime parameter name: `'static` + --> $DIR/E0262.rs:11:8 + | +11 | fn foo<'static>(x: &'static str) { } //~ ERROR E0262 + | ^^^^^^^ 'static is a reserved lifetime name + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0263.rs b/src/test/ui/error-codes/E0263.rs similarity index 100% rename from src/test/compile-fail/E0263.rs rename to src/test/ui/error-codes/E0263.rs diff --git a/src/test/ui/error-codes/E0263.stderr b/src/test/ui/error-codes/E0263.stderr new file mode 100644 index 0000000000000..942718d50f727 --- /dev/null +++ b/src/test/ui/error-codes/E0263.stderr @@ -0,0 +1,10 @@ +error[E0263]: lifetime name `'a` declared twice in the same scope + --> $DIR/E0263.rs:11:16 + | +11 | fn foo<'a, 'b, 'a>(x: &'a str, y: &'b str) { + | -- ^^ declared twice + | | + | previous declaration here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0264.rs b/src/test/ui/error-codes/E0264.rs similarity index 100% rename from src/test/compile-fail/E0264.rs rename to src/test/ui/error-codes/E0264.rs diff --git a/src/test/ui/error-codes/E0264.stderr b/src/test/ui/error-codes/E0264.stderr new file mode 100644 index 0000000000000..b10494633edf3 --- /dev/null +++ b/src/test/ui/error-codes/E0264.stderr @@ -0,0 +1,8 @@ +error[E0264]: unknown external lang item: `cake` + --> $DIR/E0264.rs:15:5 + | +15 | fn cake(); //~ ERROR E0264 + | ^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0267.rs b/src/test/ui/error-codes/E0267.rs similarity index 100% rename from src/test/compile-fail/E0267.rs rename to src/test/ui/error-codes/E0267.rs diff --git a/src/test/ui/error-codes/E0267.stderr b/src/test/ui/error-codes/E0267.stderr new file mode 100644 index 0000000000000..2f6d9c72eeb1a --- /dev/null +++ b/src/test/ui/error-codes/E0267.stderr @@ -0,0 +1,8 @@ +error[E0267]: `break` inside of a closure + --> $DIR/E0267.rs:12:18 + | +12 | let w = || { break; }; //~ ERROR E0267 + | ^^^^^ cannot break inside of a closure + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0268.rs b/src/test/ui/error-codes/E0268.rs similarity index 100% rename from src/test/compile-fail/E0268.rs rename to src/test/ui/error-codes/E0268.rs diff --git a/src/test/ui/error-codes/E0268.stderr b/src/test/ui/error-codes/E0268.stderr new file mode 100644 index 0000000000000..cf89e46af047e --- /dev/null +++ b/src/test/ui/error-codes/E0268.stderr @@ -0,0 +1,8 @@ +error[E0268]: `break` outside of loop + --> $DIR/E0268.rs:12:5 + | +12 | break; //~ ERROR E0268 + | ^^^^^ cannot break outside of a loop + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0271.rs b/src/test/ui/error-codes/E0271.rs similarity index 100% rename from src/test/compile-fail/E0271.rs rename to src/test/ui/error-codes/E0271.rs diff --git a/src/test/ui/error-codes/E0271.stderr b/src/test/ui/error-codes/E0271.stderr new file mode 100644 index 0000000000000..c596b560ea7f8 --- /dev/null +++ b/src/test/ui/error-codes/E0271.stderr @@ -0,0 +1,16 @@ +error[E0271]: type mismatch resolving `::AssociatedType == u32` + --> $DIR/E0271.rs:20:5 + | +20 | foo(3_i8); //~ ERROR E0271 + | ^^^ expected reference, found u32 + | + = note: expected type `&'static str` + found type `u32` +note: required by `foo` + --> $DIR/E0271.rs:13:1 + | +13 | fn foo(t: T) where T: Trait { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0275.rs b/src/test/ui/error-codes/E0275.rs similarity index 100% rename from src/test/compile-fail/E0275.rs rename to src/test/ui/error-codes/E0275.rs diff --git a/src/test/ui/error-codes/E0275.stderr b/src/test/ui/error-codes/E0275.stderr new file mode 100644 index 0000000000000..2dbe5be215546 --- /dev/null +++ b/src/test/ui/error-codes/E0275.stderr @@ -0,0 +1,79 @@ +error[E0275]: overflow evaluating the requirement `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>: std::marker::Sized` + --> $DIR/E0275.rs:15:1 + | +15 | impl Foo for T where Bar: Foo {} //~ ERROR E0275 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = help: consider adding a `#![recursion_limit="128"]` attribute to your crate + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>>` + = note: required because of the requirements on the impl of `Foo` for `Bar>` + = note: required because of the requirements on the impl of `Foo` for `Bar` +note: required by `Foo` + --> $DIR/E0275.rs:11:1 + | +11 | trait Foo {} + | ^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0276.rs b/src/test/ui/error-codes/E0276.rs similarity index 100% rename from src/test/compile-fail/E0276.rs rename to src/test/ui/error-codes/E0276.rs diff --git a/src/test/ui/error-codes/E0276.stderr b/src/test/ui/error-codes/E0276.stderr new file mode 100644 index 0000000000000..bcbe81ac11a05 --- /dev/null +++ b/src/test/ui/error-codes/E0276.stderr @@ -0,0 +1,11 @@ +error[E0276]: impl has stricter requirements than trait + --> $DIR/E0276.rs:16:5 + | +12 | fn foo(x: T); + | ---------------- definition of `foo` from trait +... +16 | fn foo(x: T) where T: Copy {} //~ ERROR E0276 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl has extra requirement `T: std::marker::Copy` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0277-2.rs b/src/test/ui/error-codes/E0277-2.rs similarity index 100% rename from src/test/compile-fail/E0277-2.rs rename to src/test/ui/error-codes/E0277-2.rs diff --git a/src/test/ui/error-codes/E0277-2.stderr b/src/test/ui/error-codes/E0277-2.stderr new file mode 100644 index 0000000000000..6a0f21ef14438 --- /dev/null +++ b/src/test/ui/error-codes/E0277-2.stderr @@ -0,0 +1,18 @@ +error[E0277]: the trait bound `*const u8: std::marker::Send` is not satisfied in `Foo` + --> $DIR/E0277-2.rs:26:5 + | +26 | is_send::(); + | ^^^^^^^^^^^^^^ `*const u8` cannot be sent between threads safely + | + = help: within `Foo`, the trait `std::marker::Send` is not implemented for `*const u8` + = note: required because it appears within the type `Baz` + = note: required because it appears within the type `Bar` + = note: required because it appears within the type `Foo` +note: required by `is_send` + --> $DIR/E0277-2.rs:23:1 + | +23 | fn is_send() { } + | ^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0277.rs b/src/test/ui/error-codes/E0277.rs similarity index 100% rename from src/test/compile-fail/E0277.rs rename to src/test/ui/error-codes/E0277.rs diff --git a/src/test/ui/error-codes/E0277.stderr b/src/test/ui/error-codes/E0277.stderr new file mode 100644 index 0000000000000..38d14ed7bce25 --- /dev/null +++ b/src/test/ui/error-codes/E0277.stderr @@ -0,0 +1,24 @@ +error[E0277]: the trait bound `[u8]: std::marker::Sized` is not satisfied in `std::path::Path` + --> $DIR/E0277.rs:23:6 + | +23 | fn f(p: Path) { } + | ^ `[u8]` does not have a constant size known at compile-time + | + = help: within `std::path::Path`, the trait `std::marker::Sized` is not implemented for `[u8]` + = note: required because it appears within the type `std::path::Path` + = note: all local variables must have a statically known size + +error[E0277]: the trait bound `i32: Foo` is not satisfied + --> $DIR/E0277.rs:27:5 + | +27 | some_func(5i32); + | ^^^^^^^^^ the trait `Foo` is not implemented for `i32` + | +note: required by `some_func` + --> $DIR/E0277.rs:19:1 + | +19 | fn some_func(foo: T) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0282.rs b/src/test/ui/error-codes/E0282.rs similarity index 100% rename from src/test/compile-fail/E0282.rs rename to src/test/ui/error-codes/E0282.rs diff --git a/src/test/ui/error-codes/E0282.stderr b/src/test/ui/error-codes/E0282.stderr new file mode 100644 index 0000000000000..835162740da90 --- /dev/null +++ b/src/test/ui/error-codes/E0282.stderr @@ -0,0 +1,11 @@ +error[E0282]: type annotations needed + --> $DIR/E0282.rs:12:9 + | +12 | let x = "hello".chars().rev().collect(); //~ ERROR E0282 + | ^ + | | + | cannot infer type for `_` + | consider giving `x` a type + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0283.rs b/src/test/ui/error-codes/E0283.rs similarity index 100% rename from src/test/compile-fail/E0283.rs rename to src/test/ui/error-codes/E0283.rs diff --git a/src/test/ui/error-codes/E0283.stderr b/src/test/ui/error-codes/E0283.stderr new file mode 100644 index 0000000000000..9fdb6b178c4d7 --- /dev/null +++ b/src/test/ui/error-codes/E0283.stderr @@ -0,0 +1,14 @@ +error[E0283]: type annotations required: cannot resolve `_: Generator` + --> $DIR/E0283.rs:28:21 + | +28 | let cont: u32 = Generator::create(); //~ ERROR E0283 + | ^^^^^^^^^^^^^^^^^ + | +note: required by `Generator::create` + --> $DIR/E0283.rs:12:5 + | +12 | fn create() -> u32; + | ^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0296.rs b/src/test/ui/error-codes/E0296.rs similarity index 100% rename from src/test/compile-fail/E0296.rs rename to src/test/ui/error-codes/E0296.rs diff --git a/src/test/ui/error-codes/E0296.stderr b/src/test/ui/error-codes/E0296.stderr new file mode 100644 index 0000000000000..f6a2adc0ad3f7 --- /dev/null +++ b/src/test/ui/error-codes/E0296.stderr @@ -0,0 +1,8 @@ +error[E0296]: malformed recursion limit attribute, expected #![recursion_limit="N"] + --> $DIR/E0296.rs:11:1 + | +11 | #![recursion_limit] //~ ERROR E0296 + | ^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0297.rs b/src/test/ui/error-codes/E0297.rs similarity index 100% rename from src/test/compile-fail/E0297.rs rename to src/test/ui/error-codes/E0297.rs diff --git a/src/test/ui/error-codes/E0297.stderr b/src/test/ui/error-codes/E0297.stderr new file mode 100644 index 0000000000000..2dfed66ecaca6 --- /dev/null +++ b/src/test/ui/error-codes/E0297.stderr @@ -0,0 +1,8 @@ +error[E0005]: refutable pattern in `for` loop binding: `None` not covered + --> $DIR/E0297.rs:14:9 + | +14 | for Some(x) in xs {} + | ^^^^^^^ pattern `None` not covered + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0301.rs b/src/test/ui/error-codes/E0301.rs similarity index 100% rename from src/test/compile-fail/E0301.rs rename to src/test/ui/error-codes/E0301.rs diff --git a/src/test/ui/error-codes/E0301.stderr b/src/test/ui/error-codes/E0301.stderr new file mode 100644 index 0000000000000..ff4ee32d47b09 --- /dev/null +++ b/src/test/ui/error-codes/E0301.stderr @@ -0,0 +1,8 @@ +error[E0301]: cannot mutably borrow in a pattern guard + --> $DIR/E0301.rs:14:19 + | +14 | option if option.take().is_none() => {}, //~ ERROR E0301 + | ^^^^^^ borrowed mutably in pattern guard + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0302.rs b/src/test/ui/error-codes/E0302.rs similarity index 100% rename from src/test/compile-fail/E0302.rs rename to src/test/ui/error-codes/E0302.rs diff --git a/src/test/ui/error-codes/E0302.stderr b/src/test/ui/error-codes/E0302.stderr new file mode 100644 index 0000000000000..c7b33a490d1c9 --- /dev/null +++ b/src/test/ui/error-codes/E0302.stderr @@ -0,0 +1,8 @@ +error[E0302]: cannot assign in a pattern guard + --> $DIR/E0302.rs:14:21 + | +14 | option if { option = None; false } => { }, //~ ERROR E0302 + | ^^^^^^^^^^^^^ assignment in pattern guard + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0303.rs b/src/test/ui/error-codes/E0303.rs similarity index 100% rename from src/test/compile-fail/E0303.rs rename to src/test/ui/error-codes/E0303.rs diff --git a/src/test/ui/error-codes/E0303.stderr b/src/test/ui/error-codes/E0303.stderr new file mode 100644 index 0000000000000..6528c97a560df --- /dev/null +++ b/src/test/ui/error-codes/E0303.stderr @@ -0,0 +1,17 @@ +error[E0009]: cannot bind by-move and by-ref in the same pattern + --> $DIR/E0303.rs:13:34 + | +13 | ref op_string_ref @ Some(s) => {}, + | -------------------------^- + | | | + | | by-move pattern here + | both by-ref and by-move used + +error[E0303]: pattern bindings are not allowed after an `@` + --> $DIR/E0303.rs:13:34 + | +13 | ref op_string_ref @ Some(s) => {}, + | ^ not allowed after `@` + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0308-4.rs b/src/test/ui/error-codes/E0308-4.rs similarity index 100% rename from src/test/compile-fail/E0308-4.rs rename to src/test/ui/error-codes/E0308-4.rs diff --git a/src/test/ui/error-codes/E0308-4.stderr b/src/test/ui/error-codes/E0308-4.stderr new file mode 100644 index 0000000000000..1e4beeae17691 --- /dev/null +++ b/src/test/ui/error-codes/E0308-4.stderr @@ -0,0 +1,8 @@ +error[E0308]: mismatched types + --> $DIR/E0308-4.rs:14:9 + | +14 | 0u8...3i8 => (), //~ ERROR E0308 + | ^^^^^^^^^ expected u8, found i8 + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0308.rs b/src/test/ui/error-codes/E0308.rs similarity index 100% rename from src/test/compile-fail/E0308.rs rename to src/test/ui/error-codes/E0308.rs diff --git a/src/test/ui/error-codes/E0308.stderr b/src/test/ui/error-codes/E0308.stderr new file mode 100644 index 0000000000000..905b0210abfbf --- /dev/null +++ b/src/test/ui/error-codes/E0308.stderr @@ -0,0 +1,11 @@ +error[E0308]: intrinsic has wrong type + --> $DIR/E0308.rs:14:5 + | +14 | fn size_of(); //~ ERROR E0308 + | ^^^^^^^^^^^^^^^^ expected (), found usize + | + = note: expected type `unsafe extern "rust-intrinsic" fn()` + found type `unsafe extern "rust-intrinsic" fn() -> usize` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0365.rs b/src/test/ui/error-codes/E0365.rs similarity index 100% rename from src/test/compile-fail/E0365.rs rename to src/test/ui/error-codes/E0365.rs diff --git a/src/test/ui/error-codes/E0365.stderr b/src/test/ui/error-codes/E0365.stderr new file mode 100644 index 0000000000000..ccb13856df9e1 --- /dev/null +++ b/src/test/ui/error-codes/E0365.stderr @@ -0,0 +1,10 @@ +error[E0365]: `foo` is private, and cannot be re-exported + --> $DIR/E0365.rs:15:9 + | +15 | pub use foo as foo2; + | ^^^^^^^^^^^ re-export of private `foo` + | + = note: consider declaring type or module `foo` with `pub` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0370.rs b/src/test/ui/error-codes/E0370.rs similarity index 100% rename from src/test/compile-fail/E0370.rs rename to src/test/ui/error-codes/E0370.rs diff --git a/src/test/ui/error-codes/E0370.stderr b/src/test/ui/error-codes/E0370.stderr new file mode 100644 index 0000000000000..1f248f4ed2c21 --- /dev/null +++ b/src/test/ui/error-codes/E0370.stderr @@ -0,0 +1,10 @@ +error[E0370]: enum discriminant overflowed + --> $DIR/E0370.rs:17:5 + | +17 | Y, //~ ERROR E0370 + | ^ overflowed on value after 9223372036854775807i64 + | + = note: explicitly set `Y = -9223372036854775808i64` if that is desired outcome + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0374.rs b/src/test/ui/error-codes/E0374.rs similarity index 100% rename from src/test/compile-fail/E0374.rs rename to src/test/ui/error-codes/E0374.rs diff --git a/src/test/ui/error-codes/E0374.stderr b/src/test/ui/error-codes/E0374.stderr new file mode 100644 index 0000000000000..edd463d705c19 --- /dev/null +++ b/src/test/ui/error-codes/E0374.stderr @@ -0,0 +1,9 @@ +error[E0374]: the trait `CoerceUnsized` may only be implemented for a coercion between structures with one field being coerced, none found + --> $DIR/E0374.rs:18:1 + | +18 | / impl CoerceUnsized> for Foo //~ ERROR E0374 +19 | | where T: CoerceUnsized {} + | |________________________________^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0375.rs b/src/test/ui/error-codes/E0375.rs similarity index 100% rename from src/test/compile-fail/E0375.rs rename to src/test/ui/error-codes/E0375.rs diff --git a/src/test/ui/error-codes/E0375.stderr b/src/test/ui/error-codes/E0375.stderr new file mode 100644 index 0000000000000..a37591521c8ca --- /dev/null +++ b/src/test/ui/error-codes/E0375.stderr @@ -0,0 +1,11 @@ +error[E0375]: implementing the trait `CoerceUnsized` requires multiple coercions + --> $DIR/E0375.rs:22:12 + | +22 | impl CoerceUnsized> for Foo {} + | ^^^^^^^^^^^^^^^^^^^^^^^^ 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: b (T to U), c (U to T) + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0376.rs b/src/test/ui/error-codes/E0376.rs similarity index 100% rename from src/test/compile-fail/E0376.rs rename to src/test/ui/error-codes/E0376.rs diff --git a/src/test/ui/error-codes/E0376.stderr b/src/test/ui/error-codes/E0376.stderr new file mode 100644 index 0000000000000..d036adb4e2950 --- /dev/null +++ b/src/test/ui/error-codes/E0376.stderr @@ -0,0 +1,8 @@ +error[E0376]: the trait `CoerceUnsized` may only be implemented for a coercion between structures + --> $DIR/E0376.rs:18:1 + | +18 | impl CoerceUnsized for Foo {} //~ ERROR E0376 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0388.rs b/src/test/ui/error-codes/E0388.rs similarity index 100% rename from src/test/compile-fail/E0388.rs rename to src/test/ui/error-codes/E0388.rs diff --git a/src/test/ui/error-codes/E0388.stderr b/src/test/ui/error-codes/E0388.stderr new file mode 100644 index 0000000000000..ec210294cdbd4 --- /dev/null +++ b/src/test/ui/error-codes/E0388.stderr @@ -0,0 +1,26 @@ +error[E0017]: references in constants may only refer to immutable values + --> $DIR/E0388.rs:14:30 + | +14 | const CR: &'static mut i32 = &mut C; //~ ERROR E0017 + | ^^^^^^ constants require immutable values + +error[E0017]: references in statics may only refer to immutable values + --> $DIR/E0388.rs:15:39 + | +15 | static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0017 + | ^^^^^^ statics require immutable values + +error[E0596]: cannot borrow immutable static item as mutable + --> $DIR/E0388.rs:15:44 + | +15 | static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0017 + | ^ + +error[E0017]: references in statics may only refer to immutable values + --> $DIR/E0388.rs:17:38 + | +17 | static CONST_REF: &'static mut i32 = &mut C; //~ ERROR E0017 + | ^^^^^^ statics require immutable values + +error: aborting due to 4 previous errors + diff --git a/src/test/compile-fail/E0389.rs b/src/test/ui/error-codes/E0389.rs similarity index 100% rename from src/test/compile-fail/E0389.rs rename to src/test/ui/error-codes/E0389.rs diff --git a/src/test/ui/error-codes/E0389.stderr b/src/test/ui/error-codes/E0389.stderr new file mode 100644 index 0000000000000..e085329bac508 --- /dev/null +++ b/src/test/ui/error-codes/E0389.stderr @@ -0,0 +1,8 @@ +error[E0389]: cannot assign to data in a `&` reference + --> $DIR/E0389.rs:18:5 + | +18 | fancy_ref.num = 6; //~ ERROR E0389 + | ^^^^^^^^^^^^^^^^^ assignment into an immutable reference + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0390.rs b/src/test/ui/error-codes/E0390.rs similarity index 100% rename from src/test/compile-fail/E0390.rs rename to src/test/ui/error-codes/E0390.rs diff --git a/src/test/ui/error-codes/E0390.stderr b/src/test/ui/error-codes/E0390.stderr new file mode 100644 index 0000000000000..a10b0b87f37bd --- /dev/null +++ b/src/test/ui/error-codes/E0390.stderr @@ -0,0 +1,14 @@ +error[E0390]: only a single inherent implementation marked with `#[lang = "mut_ptr"]` is allowed for the `*mut T` primitive + --> $DIR/E0390.rs:15:1 + | +15 | impl *mut Foo {} //~ ERROR E0390 + | ^^^^^^^^^^^^^^^^ + | +help: consider using a trait to implement these methods + --> $DIR/E0390.rs:15:1 + | +15 | impl *mut Foo {} //~ ERROR E0390 + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0392.rs b/src/test/ui/error-codes/E0392.rs similarity index 100% rename from src/test/compile-fail/E0392.rs rename to src/test/ui/error-codes/E0392.rs diff --git a/src/test/ui/error-codes/E0392.stderr b/src/test/ui/error-codes/E0392.stderr new file mode 100644 index 0000000000000..6c466cbb52e38 --- /dev/null +++ b/src/test/ui/error-codes/E0392.stderr @@ -0,0 +1,10 @@ +error[E0392]: parameter `T` is never used + --> $DIR/E0392.rs:11:10 + | +11 | enum Foo { Bar } //~ ERROR E0392 + | ^ unused type parameter + | + = help: consider removing `T` or using a marker such as `std::marker::PhantomData` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0393.rs b/src/test/ui/error-codes/E0393.rs similarity index 100% rename from src/test/compile-fail/E0393.rs rename to src/test/ui/error-codes/E0393.rs diff --git a/src/test/ui/error-codes/E0393.stderr b/src/test/ui/error-codes/E0393.stderr new file mode 100644 index 0000000000000..10728e21901cd --- /dev/null +++ b/src/test/ui/error-codes/E0393.stderr @@ -0,0 +1,10 @@ +error[E0393]: the type parameter `T` must be explicitly specified + --> $DIR/E0393.rs:13:43 + | +13 | fn together_we_will_rule_the_galaxy(son: &A) {} + | ^ missing reference to `T` + | + = note: because of the default `Self` reference, type parameters must be specified on object types + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0394.rs b/src/test/ui/error-codes/E0394.rs similarity index 100% rename from src/test/compile-fail/E0394.rs rename to src/test/ui/error-codes/E0394.rs diff --git a/src/test/ui/error-codes/E0394.stderr b/src/test/ui/error-codes/E0394.stderr new file mode 100644 index 0000000000000..728cec1032558 --- /dev/null +++ b/src/test/ui/error-codes/E0394.stderr @@ -0,0 +1,10 @@ +error[E0394]: cannot refer to other statics by value, use the address-of operator or a constant instead + --> $DIR/E0394.rs:14:17 + | +14 | static B: u32 = A; + | ^ referring to another static by value + | + = note: use the address-of operator or a constant instead + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0395.rs b/src/test/ui/error-codes/E0395.rs similarity index 100% rename from src/test/compile-fail/E0395.rs rename to src/test/ui/error-codes/E0395.rs diff --git a/src/test/ui/error-codes/E0395.stderr b/src/test/ui/error-codes/E0395.stderr new file mode 100644 index 0000000000000..e6d76a696d3cf --- /dev/null +++ b/src/test/ui/error-codes/E0395.stderr @@ -0,0 +1,8 @@ +error[E0395]: raw pointers cannot be compared in statics + --> $DIR/E0395.rs:14:22 + | +14 | static BAZ: bool = { (&FOO as *const i32) == (&BAR as *const i32) }; //~ ERROR E0395 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ comparing raw pointers in static + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0396.rs b/src/test/ui/error-codes/E0396.rs similarity index 100% rename from src/test/compile-fail/E0396.rs rename to src/test/ui/error-codes/E0396.rs diff --git a/src/test/ui/error-codes/E0396.stderr b/src/test/ui/error-codes/E0396.stderr new file mode 100644 index 0000000000000..5c5c01cb98854 --- /dev/null +++ b/src/test/ui/error-codes/E0396.stderr @@ -0,0 +1,8 @@ +error[E0396]: raw pointers cannot be dereferenced in constants + --> $DIR/E0396.rs:13:28 + | +13 | const VALUE: u8 = unsafe { *REG_ADDR }; //~ ERROR E0396 + | ^^^^^^^^^ dereference of raw pointer in constant + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0401.rs b/src/test/ui/error-codes/E0401.rs similarity index 100% rename from src/test/compile-fail/E0401.rs rename to src/test/ui/error-codes/E0401.rs diff --git a/src/test/ui/error-codes/E0401.stderr b/src/test/ui/error-codes/E0401.stderr new file mode 100644 index 0000000000000..d63aa378eee7d --- /dev/null +++ b/src/test/ui/error-codes/E0401.stderr @@ -0,0 +1,8 @@ +error[E0401]: can't use type parameters from outer function; try using a local type parameter instead + --> $DIR/E0401.rs:12:15 + | +12 | fn bar(y: T) { //~ ERROR E0401 + | ^ use of type variable from outer function + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0403.rs b/src/test/ui/error-codes/E0403.rs similarity index 100% rename from src/test/compile-fail/E0403.rs rename to src/test/ui/error-codes/E0403.rs diff --git a/src/test/ui/error-codes/E0403.stderr b/src/test/ui/error-codes/E0403.stderr new file mode 100644 index 0000000000000..125af35cb5798 --- /dev/null +++ b/src/test/ui/error-codes/E0403.stderr @@ -0,0 +1,10 @@ +error[E0403]: the name `T` is already used for a type parameter in this type parameter list + --> $DIR/E0403.rs:11:11 + | +11 | fn foo(s: T, u: T) {} //~ ERROR E0403 + | - ^ already used + | | + | first use of `T` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0404.rs b/src/test/ui/error-codes/E0404.rs similarity index 100% rename from src/test/compile-fail/E0404.rs rename to src/test/ui/error-codes/E0404.rs diff --git a/src/test/ui/error-codes/E0404.stderr b/src/test/ui/error-codes/E0404.stderr new file mode 100644 index 0000000000000..c30d8c00b80e2 --- /dev/null +++ b/src/test/ui/error-codes/E0404.stderr @@ -0,0 +1,8 @@ +error[E0404]: expected trait, found struct `Foo` + --> $DIR/E0404.rs:14:6 + | +14 | impl Foo for Bar {} //~ ERROR E0404 + | ^^^ not a trait + +error: cannot continue compilation due to previous error + diff --git a/src/test/compile-fail/E0405.rs b/src/test/ui/error-codes/E0405.rs similarity index 100% rename from src/test/compile-fail/E0405.rs rename to src/test/ui/error-codes/E0405.rs diff --git a/src/test/ui/error-codes/E0405.stderr b/src/test/ui/error-codes/E0405.stderr new file mode 100644 index 0000000000000..29bab3f6dd99a --- /dev/null +++ b/src/test/ui/error-codes/E0405.stderr @@ -0,0 +1,8 @@ +error[E0405]: cannot find trait `SomeTrait` in this scope + --> $DIR/E0405.rs:13:6 + | +13 | impl SomeTrait for Foo {} //~ ERROR E0405 + | ^^^^^^^^^ not found in this scope + +error: cannot continue compilation due to previous error + diff --git a/src/test/compile-fail/E0407.rs b/src/test/ui/error-codes/E0407.rs similarity index 100% rename from src/test/compile-fail/E0407.rs rename to src/test/ui/error-codes/E0407.rs diff --git a/src/test/ui/error-codes/E0407.stderr b/src/test/ui/error-codes/E0407.stderr new file mode 100644 index 0000000000000..f71437cd6b07c --- /dev/null +++ b/src/test/ui/error-codes/E0407.stderr @@ -0,0 +1,8 @@ +error[E0407]: method `b` is not a member of trait `Foo` + --> $DIR/E0407.rs:19:5 + | +19 | fn b() {} + | ^^^^^^^^^ not a member of trait `Foo` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0408.rs b/src/test/ui/error-codes/E0408.rs similarity index 100% rename from src/test/compile-fail/E0408.rs rename to src/test/ui/error-codes/E0408.rs diff --git a/src/test/ui/error-codes/E0408.stderr b/src/test/ui/error-codes/E0408.stderr new file mode 100644 index 0000000000000..1c66bb0e5f07b --- /dev/null +++ b/src/test/ui/error-codes/E0408.stderr @@ -0,0 +1,10 @@ +error[E0408]: variable `y` is not bound in all patterns + --> $DIR/E0408.rs:15:19 + | +15 | Some(y) | None => {} //~ ERROR variable `y` is not bound in all patterns + | - ^^^^ pattern doesn't bind `y` + | | + | variable not in all patterns + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0411.rs b/src/test/ui/error-codes/E0411.rs similarity index 100% rename from src/test/compile-fail/E0411.rs rename to src/test/ui/error-codes/E0411.rs diff --git a/src/test/ui/error-codes/E0411.stderr b/src/test/ui/error-codes/E0411.stderr new file mode 100644 index 0000000000000..dda922b5b6891 --- /dev/null +++ b/src/test/ui/error-codes/E0411.stderr @@ -0,0 +1,8 @@ +error[E0411]: cannot find type `Self` in this scope + --> $DIR/E0411.rs:12:6 + | +12 | ::foo; //~ ERROR E0411 + | ^^^^ `Self` is only available in traits and impls + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0412.rs b/src/test/ui/error-codes/E0412.rs similarity index 100% rename from src/test/compile-fail/E0412.rs rename to src/test/ui/error-codes/E0412.rs diff --git a/src/test/ui/error-codes/E0412.stderr b/src/test/ui/error-codes/E0412.stderr new file mode 100644 index 0000000000000..6ee2125af04e8 --- /dev/null +++ b/src/test/ui/error-codes/E0412.stderr @@ -0,0 +1,8 @@ +error[E0412]: cannot find type `Something` in this scope + --> $DIR/E0412.rs:11:6 + | +11 | impl Something {} //~ ERROR E0412 + | ^^^^^^^^^ not found in this scope + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0415.rs b/src/test/ui/error-codes/E0415.rs similarity index 100% rename from src/test/compile-fail/E0415.rs rename to src/test/ui/error-codes/E0415.rs diff --git a/src/test/ui/error-codes/E0415.stderr b/src/test/ui/error-codes/E0415.stderr new file mode 100644 index 0000000000000..5e5cfe16e5038 --- /dev/null +++ b/src/test/ui/error-codes/E0415.stderr @@ -0,0 +1,8 @@ +error[E0415]: identifier `f` is bound more than once in this parameter list + --> $DIR/E0415.rs:11:16 + | +11 | fn foo(f: i32, f: i32) {} //~ ERROR E0415 + | ^ used as parameter more than once + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0416.rs b/src/test/ui/error-codes/E0416.rs similarity index 100% rename from src/test/compile-fail/E0416.rs rename to src/test/ui/error-codes/E0416.rs diff --git a/src/test/ui/error-codes/E0416.stderr b/src/test/ui/error-codes/E0416.stderr new file mode 100644 index 0000000000000..a48a3ade5c9a4 --- /dev/null +++ b/src/test/ui/error-codes/E0416.stderr @@ -0,0 +1,8 @@ +error[E0416]: identifier `x` is bound more than once in the same pattern + --> $DIR/E0416.rs:13:13 + | +13 | (x, x) => {} //~ ERROR E0416 + | ^ used in a pattern more than once + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0423.rs b/src/test/ui/error-codes/E0423.rs similarity index 100% rename from src/test/compile-fail/E0423.rs rename to src/test/ui/error-codes/E0423.rs diff --git a/src/test/ui/error-codes/E0423.stderr b/src/test/ui/error-codes/E0423.stderr new file mode 100644 index 0000000000000..aee398efeddee --- /dev/null +++ b/src/test/ui/error-codes/E0423.stderr @@ -0,0 +1,8 @@ +error[E0423]: expected function, found struct `Foo` + --> $DIR/E0423.rs:14:13 + | +14 | let f = Foo(); //~ ERROR E0423 + | ^^^ did you mean `Foo { /* fields */ }`? + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0424.rs b/src/test/ui/error-codes/E0424.rs similarity index 100% rename from src/test/compile-fail/E0424.rs rename to src/test/ui/error-codes/E0424.rs diff --git a/src/test/ui/error-codes/E0424.stderr b/src/test/ui/error-codes/E0424.stderr new file mode 100644 index 0000000000000..d1fd432f4f032 --- /dev/null +++ b/src/test/ui/error-codes/E0424.stderr @@ -0,0 +1,8 @@ +error[E0424]: expected value, found module `self` + --> $DIR/E0424.rs:17:9 + | +17 | self.bar(); //~ ERROR E0424 + | ^^^^ `self` value is only available in methods with `self` parameter + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0425.rs b/src/test/ui/error-codes/E0425.rs similarity index 100% rename from src/test/compile-fail/E0425.rs rename to src/test/ui/error-codes/E0425.rs diff --git a/src/test/ui/error-codes/E0425.stderr b/src/test/ui/error-codes/E0425.stderr new file mode 100644 index 0000000000000..250ecaeb368ee --- /dev/null +++ b/src/test/ui/error-codes/E0425.stderr @@ -0,0 +1,8 @@ +error[E0425]: cannot find value `elf` in this scope + --> $DIR/E0425.rs:13:9 + | +13 | elf; //~ ERROR E0425 + | ^^^ not found in this scope + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0426.rs b/src/test/ui/error-codes/E0426.rs similarity index 100% rename from src/test/compile-fail/E0426.rs rename to src/test/ui/error-codes/E0426.rs diff --git a/src/test/ui/error-codes/E0426.stderr b/src/test/ui/error-codes/E0426.stderr new file mode 100644 index 0000000000000..bb05effd732cd --- /dev/null +++ b/src/test/ui/error-codes/E0426.stderr @@ -0,0 +1,8 @@ +error[E0426]: use of undeclared label `'a` + --> $DIR/E0426.rs:13:15 + | +13 | break 'a; + | ^^ undeclared label `'a` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0428.rs b/src/test/ui/error-codes/E0428.rs similarity index 100% rename from src/test/compile-fail/E0428.rs rename to src/test/ui/error-codes/E0428.rs diff --git a/src/test/ui/error-codes/E0428.stderr b/src/test/ui/error-codes/E0428.stderr new file mode 100644 index 0000000000000..c739536c0ab55 --- /dev/null +++ b/src/test/ui/error-codes/E0428.stderr @@ -0,0 +1,12 @@ +error[E0428]: the name `Bar` is defined multiple times + --> $DIR/E0428.rs:12:1 + | +11 | struct Bar; //~ previous definition of the type `Bar` here + | ----------- previous definition of the type `Bar` here +12 | struct Bar; //~ ERROR E0428 + | ^^^^^^^^^^^ `Bar` redefined here + | + = note: `Bar` must be defined only once in the type namespace of this module + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0429.rs b/src/test/ui/error-codes/E0429.rs similarity index 100% rename from src/test/compile-fail/E0429.rs rename to src/test/ui/error-codes/E0429.rs diff --git a/src/test/ui/error-codes/E0429.stderr b/src/test/ui/error-codes/E0429.stderr new file mode 100644 index 0000000000000..96cf50500fdb4 --- /dev/null +++ b/src/test/ui/error-codes/E0429.stderr @@ -0,0 +1,8 @@ +error[E0429]: `self` imports are only allowed within a { } list + --> $DIR/E0429.rs:11:5 + | +11 | use std::fmt::self; //~ ERROR E0429 + | ^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0430.rs b/src/test/ui/error-codes/E0430.rs similarity index 100% rename from src/test/compile-fail/E0430.rs rename to src/test/ui/error-codes/E0430.rs diff --git a/src/test/ui/error-codes/E0430.stderr b/src/test/ui/error-codes/E0430.stderr new file mode 100644 index 0000000000000..b5c80aa23f62d --- /dev/null +++ b/src/test/ui/error-codes/E0430.stderr @@ -0,0 +1,24 @@ +error[E0430]: `self` import can only appear once in an import list + --> $DIR/E0430.rs:11:16 + | +11 | use std::fmt::{self, self}; //~ ERROR E0430 + | ^^^^ ---- another `self` import appears here + | | + | can only appear once in an import list + +error[E0252]: the name `fmt` is defined multiple times + --> $DIR/E0430.rs:11:22 + | +11 | use std::fmt::{self, self}; //~ ERROR E0430 + | ---- ^^^^ `fmt` reimported here + | | + | previous import of the module `fmt` here + | + = note: `fmt` 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 + | +11 | use std::fmt::{self, self as other_fmt}; //~ ERROR E0430 + | ^^^^^^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0431.rs b/src/test/ui/error-codes/E0431.rs similarity index 100% rename from src/test/compile-fail/E0431.rs rename to src/test/ui/error-codes/E0431.rs diff --git a/src/test/ui/error-codes/E0431.stderr b/src/test/ui/error-codes/E0431.stderr new file mode 100644 index 0000000000000..c7a786b7402d2 --- /dev/null +++ b/src/test/ui/error-codes/E0431.stderr @@ -0,0 +1,8 @@ +error[E0431]: `self` import can only appear in an import list with a non-empty prefix + --> $DIR/E0431.rs:11:6 + | +11 | use {self}; //~ ERROR E0431 + | ^^^^ can only appear in an import list with a non-empty prefix + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0432.rs b/src/test/ui/error-codes/E0432.rs similarity index 100% rename from src/test/compile-fail/E0432.rs rename to src/test/ui/error-codes/E0432.rs diff --git a/src/test/ui/error-codes/E0432.stderr b/src/test/ui/error-codes/E0432.stderr new file mode 100644 index 0000000000000..6d808f038a333 --- /dev/null +++ b/src/test/ui/error-codes/E0432.stderr @@ -0,0 +1,8 @@ +error[E0432]: unresolved import `something` + --> $DIR/E0432.rs:11:5 + | +11 | use something::Foo; //~ ERROR E0432 + | ^^^^^^^^^ Maybe a missing `extern crate something;`? + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0433.rs b/src/test/ui/error-codes/E0433.rs similarity index 100% rename from src/test/compile-fail/E0433.rs rename to src/test/ui/error-codes/E0433.rs diff --git a/src/test/ui/error-codes/E0433.stderr b/src/test/ui/error-codes/E0433.stderr new file mode 100644 index 0000000000000..691c5922f8fbc --- /dev/null +++ b/src/test/ui/error-codes/E0433.stderr @@ -0,0 +1,8 @@ +error[E0433]: failed to resolve. Use of undeclared type or module `HashMap` + --> $DIR/E0433.rs:12:15 + | +12 | let map = HashMap::new(); //~ ERROR E0433 + | ^^^^^^^ Use of undeclared type or module `HashMap` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0434.rs b/src/test/ui/error-codes/E0434.rs similarity index 100% rename from src/test/compile-fail/E0434.rs rename to src/test/ui/error-codes/E0434.rs diff --git a/src/test/ui/error-codes/E0434.stderr b/src/test/ui/error-codes/E0434.stderr new file mode 100644 index 0000000000000..06880acdb3573 --- /dev/null +++ b/src/test/ui/error-codes/E0434.stderr @@ -0,0 +1,10 @@ +error[E0434]: can't capture dynamic environment in a fn item + --> $DIR/E0434.rs:14:9 + | +14 | y //~ ERROR E0434 + | ^ + | + = help: use the `|| { ... }` closure form instead + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0435.rs b/src/test/ui/error-codes/E0435.rs similarity index 100% rename from src/test/compile-fail/E0435.rs rename to src/test/ui/error-codes/E0435.rs diff --git a/src/test/ui/error-codes/E0435.stderr b/src/test/ui/error-codes/E0435.stderr new file mode 100644 index 0000000000000..855903b7ec35e --- /dev/null +++ b/src/test/ui/error-codes/E0435.stderr @@ -0,0 +1,8 @@ +error[E0435]: attempt to use a non-constant value in a constant + --> $DIR/E0435.rs:13:17 + | +13 | let _: [u8; foo]; //~ ERROR E0435 + | ^^^ non-constant value + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0437.rs b/src/test/ui/error-codes/E0437.rs similarity index 100% rename from src/test/compile-fail/E0437.rs rename to src/test/ui/error-codes/E0437.rs diff --git a/src/test/ui/error-codes/E0437.stderr b/src/test/ui/error-codes/E0437.stderr new file mode 100644 index 0000000000000..ffad571d06125 --- /dev/null +++ b/src/test/ui/error-codes/E0437.stderr @@ -0,0 +1,8 @@ +error[E0437]: type `Bar` is not a member of trait `Foo` + --> $DIR/E0437.rs:14:5 + | +14 | type Bar = bool; //~ ERROR E0437 + | ^^^^^^^^^^^^^^^^ not a member of trait `Foo` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0438.rs b/src/test/ui/error-codes/E0438.rs similarity index 100% rename from src/test/compile-fail/E0438.rs rename to src/test/ui/error-codes/E0438.rs diff --git a/src/test/ui/error-codes/E0438.stderr b/src/test/ui/error-codes/E0438.stderr new file mode 100644 index 0000000000000..df587395356f1 --- /dev/null +++ b/src/test/ui/error-codes/E0438.stderr @@ -0,0 +1,8 @@ +error[E0438]: const `BAR` is not a member of trait `Bar` + --> $DIR/E0438.rs:15:5 + | +15 | const BAR: bool = true; //~ ERROR E0438 + | ^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `Bar` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0439.rs b/src/test/ui/error-codes/E0439.rs similarity index 100% rename from src/test/compile-fail/E0439.rs rename to src/test/ui/error-codes/E0439.rs diff --git a/src/test/ui/error-codes/E0439.stderr b/src/test/ui/error-codes/E0439.stderr new file mode 100644 index 0000000000000..77930d5e08d94 --- /dev/null +++ b/src/test/ui/error-codes/E0439.stderr @@ -0,0 +1,8 @@ +error[E0439]: invalid `simd_shuffle`, needs length: `simd_shuffle` + --> $DIR/E0439.rs:14:5 + | +14 | fn simd_shuffle(a: A, b: A, c: [u32; 8]) -> B; //~ ERROR E0439 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0440.rs b/src/test/ui/error-codes/E0440.rs similarity index 100% rename from src/test/compile-fail/E0440.rs rename to src/test/ui/error-codes/E0440.rs diff --git a/src/test/ui/error-codes/E0440.stderr b/src/test/ui/error-codes/E0440.stderr new file mode 100644 index 0000000000000..83210a996e0e1 --- /dev/null +++ b/src/test/ui/error-codes/E0440.stderr @@ -0,0 +1,8 @@ +error[E0440]: platform-specific intrinsic has wrong number of type parameters: found 1, expected 0 + --> $DIR/E0440.rs:18:5 + | +18 | fn x86_mm_movemask_pd(x: f64x2) -> i32; //~ ERROR E0440 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0441.rs b/src/test/ui/error-codes/E0441.rs similarity index 100% rename from src/test/compile-fail/E0441.rs rename to src/test/ui/error-codes/E0441.rs diff --git a/src/test/ui/error-codes/E0441.stderr b/src/test/ui/error-codes/E0441.stderr new file mode 100644 index 0000000000000..34a387e64597a --- /dev/null +++ b/src/test/ui/error-codes/E0441.stderr @@ -0,0 +1,8 @@ +error[E0441]: unrecognized platform-specific intrinsic function: `x86_mm_adds_ep16` + --> $DIR/E0441.rs:18:5 + | +18 | fn x86_mm_adds_ep16(x: i16x8, y: i16x8) -> i16x8; //~ ERROR E0441 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0442.rs b/src/test/ui/error-codes/E0442.rs similarity index 100% rename from src/test/compile-fail/E0442.rs rename to src/test/ui/error-codes/E0442.rs diff --git a/src/test/ui/error-codes/E0442.stderr b/src/test/ui/error-codes/E0442.stderr new file mode 100644 index 0000000000000..6f19fd17eb2df --- /dev/null +++ b/src/test/ui/error-codes/E0442.stderr @@ -0,0 +1,20 @@ +error[E0442]: intrinsic argument 1 has wrong type: found vector with length 16, expected length 8 + --> $DIR/E0442.rs:23:5 + | +23 | fn x86_mm_adds_epi16(x: i8x16, y: i32x4) -> i64x2; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0442]: intrinsic argument 2 has wrong type: found vector with length 4, expected length 8 + --> $DIR/E0442.rs:23:5 + | +23 | fn x86_mm_adds_epi16(x: i8x16, y: i32x4) -> i64x2; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0442]: intrinsic return value has wrong type: found vector with length 2, expected length 8 + --> $DIR/E0442.rs:23:5 + | +23 | fn x86_mm_adds_epi16(x: i8x16, y: i32x4) -> i64x2; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0443.rs b/src/test/ui/error-codes/E0443.rs similarity index 100% rename from src/test/compile-fail/E0443.rs rename to src/test/ui/error-codes/E0443.rs diff --git a/src/test/ui/error-codes/E0443.stderr b/src/test/ui/error-codes/E0443.stderr new file mode 100644 index 0000000000000..ebf8ef5ccf102 --- /dev/null +++ b/src/test/ui/error-codes/E0443.stderr @@ -0,0 +1,8 @@ +error[E0443]: intrinsic return value has wrong type: found `i64x8`, expected `i16x8` which was used for this vector type previously in this signature + --> $DIR/E0443.rs:20:5 + | +20 | fn x86_mm_adds_epi16(x: i16x8, y: i16x8) -> i64x8; //~ ERROR E0443 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0444.rs b/src/test/ui/error-codes/E0444.rs similarity index 100% rename from src/test/compile-fail/E0444.rs rename to src/test/ui/error-codes/E0444.rs diff --git a/src/test/ui/error-codes/E0444.stderr b/src/test/ui/error-codes/E0444.stderr new file mode 100644 index 0000000000000..e44d9457045c4 --- /dev/null +++ b/src/test/ui/error-codes/E0444.stderr @@ -0,0 +1,8 @@ +error[E0444]: platform-specific intrinsic has invalid number of arguments: found 3, expected 1 + --> $DIR/E0444.rs:18:5 + | +18 | fn x86_mm_movemask_pd(x: f64x2, y: f64x2, z: f64x2) -> i32; //~ ERROR E0444 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0445.rs b/src/test/ui/error-codes/E0445.rs similarity index 100% rename from src/test/compile-fail/E0445.rs rename to src/test/ui/error-codes/E0445.rs diff --git a/src/test/ui/error-codes/E0445.stderr b/src/test/ui/error-codes/E0445.stderr new file mode 100644 index 0000000000000..7b599543e00c6 --- /dev/null +++ b/src/test/ui/error-codes/E0445.stderr @@ -0,0 +1,20 @@ +error[E0445]: private trait `Foo` in public interface + --> $DIR/E0445.rs:15:1 + | +15 | pub trait Bar : Foo {} + | ^^^^^^^^^^^^^^^^^^^^^^ can't leak private trait + +error[E0445]: private trait `Foo` in public interface + --> $DIR/E0445.rs:18:1 + | +18 | pub struct Bar2(pub T); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak private trait + +error[E0445]: private trait `Foo` in public interface + --> $DIR/E0445.rs:21:1 + | +21 | pub fn foo (t: T) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak private trait + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0446.rs b/src/test/ui/error-codes/E0446.rs similarity index 100% rename from src/test/compile-fail/E0446.rs rename to src/test/ui/error-codes/E0446.rs diff --git a/src/test/ui/error-codes/E0446.stderr b/src/test/ui/error-codes/E0446.stderr new file mode 100644 index 0000000000000..1b61ca9b1773b --- /dev/null +++ b/src/test/ui/error-codes/E0446.stderr @@ -0,0 +1,10 @@ +error[E0446]: private type `Foo::Bar` in public interface + --> $DIR/E0446.rs:14:5 + | +14 | / pub fn bar() -> Bar { //~ ERROR E0446 +15 | | Bar(0) +16 | | } + | |_____^ can't leak private type + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0449.rs b/src/test/ui/error-codes/E0449.rs similarity index 100% rename from src/test/compile-fail/E0449.rs rename to src/test/ui/error-codes/E0449.rs diff --git a/src/test/ui/error-codes/E0449.stderr b/src/test/ui/error-codes/E0449.stderr new file mode 100644 index 0000000000000..2270167303a80 --- /dev/null +++ b/src/test/ui/error-codes/E0449.stderr @@ -0,0 +1,24 @@ +error[E0449]: unnecessary visibility qualifier + --> $DIR/E0449.rs:17:1 + | +17 | pub impl Bar {} //~ ERROR E0449 + | ^^^^^^^^^^^^^^^ `pub` not needed here + | + = note: place qualifiers on individual impl items instead + +error[E0449]: unnecessary visibility qualifier + --> $DIR/E0449.rs:19:1 + | +19 | / pub impl Foo for Bar { //~ ERROR E0449 +20 | | pub fn foo() {} //~ ERROR E0449 +21 | | } + | |_^ `pub` not needed here + +error[E0449]: unnecessary visibility qualifier + --> $DIR/E0449.rs:20:5 + | +20 | pub fn foo() {} //~ ERROR E0449 + | ^^^^^^^^^^^^^^^ `pub` not needed here + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0451.rs b/src/test/ui/error-codes/E0451.rs similarity index 100% rename from src/test/compile-fail/E0451.rs rename to src/test/ui/error-codes/E0451.rs diff --git a/src/test/ui/error-codes/E0451.stderr b/src/test/ui/error-codes/E0451.stderr new file mode 100644 index 0000000000000..0c29bee849b3b --- /dev/null +++ b/src/test/ui/error-codes/E0451.stderr @@ -0,0 +1,14 @@ +error[E0451]: field `b` of struct `Bar::Foo` is private + --> $DIR/E0451.rs:24:23 + | +24 | let Bar::Foo{a:a, b:b} = foo; //~ ERROR E0451 + | ^^^ field `b` is private + +error[E0451]: field `b` of struct `Bar::Foo` is private + --> $DIR/E0451.rs:28:29 + | +28 | let f = Bar::Foo{ a: 0, b: 0 }; //~ ERROR E0451 + | ^^^^ field `b` is private + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0452.rs b/src/test/ui/error-codes/E0452.rs similarity index 100% rename from src/test/compile-fail/E0452.rs rename to src/test/ui/error-codes/E0452.rs diff --git a/src/test/ui/error-codes/E0452.stderr b/src/test/ui/error-codes/E0452.stderr new file mode 100644 index 0000000000000..d63d0edc2c60c --- /dev/null +++ b/src/test/ui/error-codes/E0452.stderr @@ -0,0 +1,8 @@ +error[E0452]: malformed lint attribute + --> $DIR/E0452.rs:11:10 + | +11 | #![allow(foo = "")] //~ ERROR E0452 + | ^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0453.rs b/src/test/ui/error-codes/E0453.rs similarity index 100% rename from src/test/compile-fail/E0453.rs rename to src/test/ui/error-codes/E0453.rs diff --git a/src/test/ui/error-codes/E0453.stderr b/src/test/ui/error-codes/E0453.stderr new file mode 100644 index 0000000000000..467784f336745 --- /dev/null +++ b/src/test/ui/error-codes/E0453.stderr @@ -0,0 +1,11 @@ +error[E0453]: allow(non_snake_case) overruled by outer forbid(non_snake_case) + --> $DIR/E0453.rs:13:9 + | +11 | #![forbid(non_snake_case)] + | -------------- `forbid` level set here +12 | +13 | #[allow(non_snake_case)] + | ^^^^^^^^^^^^^^ overruled by previous forbid + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0454.rs b/src/test/ui/error-codes/E0454.rs similarity index 100% rename from src/test/compile-fail/E0454.rs rename to src/test/ui/error-codes/E0454.rs diff --git a/src/test/ui/error-codes/E0454.stderr b/src/test/ui/error-codes/E0454.stderr new file mode 100644 index 0000000000000..aee8b53e39dd5 --- /dev/null +++ b/src/test/ui/error-codes/E0454.stderr @@ -0,0 +1,8 @@ +error[E0454]: #[link(name = "")] given with empty name + --> $DIR/E0454.rs:11:1 + | +11 | #[link(name = "")] extern {} + | ^^^^^^^^^^^^^^^^^^ empty name given + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0458.rs b/src/test/ui/error-codes/E0458.rs similarity index 100% rename from src/test/compile-fail/E0458.rs rename to src/test/ui/error-codes/E0458.rs diff --git a/src/test/ui/error-codes/E0458.stderr b/src/test/ui/error-codes/E0458.stderr new file mode 100644 index 0000000000000..9cdd0d5f3003a --- /dev/null +++ b/src/test/ui/error-codes/E0458.stderr @@ -0,0 +1,14 @@ +error[E0458]: unknown kind: `wonderful_unicorn` + --> $DIR/E0458.rs:11:1 + | +11 | #[link(kind = "wonderful_unicorn")] extern {} //~ ERROR E0458 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unknown kind + +error[E0459]: #[link(...)] specified without `name = "foo"` + --> $DIR/E0458.rs:11:1 + | +11 | #[link(kind = "wonderful_unicorn")] extern {} //~ ERROR E0458 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `name` argument + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0459.rs b/src/test/ui/error-codes/E0459.rs similarity index 100% rename from src/test/compile-fail/E0459.rs rename to src/test/ui/error-codes/E0459.rs diff --git a/src/test/ui/error-codes/E0459.stderr b/src/test/ui/error-codes/E0459.stderr new file mode 100644 index 0000000000000..512788e1948a7 --- /dev/null +++ b/src/test/ui/error-codes/E0459.stderr @@ -0,0 +1,8 @@ +error[E0459]: #[link(...)] specified without `name = "foo"` + --> $DIR/E0459.rs:11:1 + | +11 | #[link(kind = "dylib")] extern {} //~ ERROR E0459 + | ^^^^^^^^^^^^^^^^^^^^^^^ missing `name` argument + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0463.rs b/src/test/ui/error-codes/E0463.rs similarity index 100% rename from src/test/compile-fail/E0463.rs rename to src/test/ui/error-codes/E0463.rs diff --git a/src/test/ui/error-codes/E0463.stderr b/src/test/ui/error-codes/E0463.stderr new file mode 100644 index 0000000000000..208c00cc7c977 --- /dev/null +++ b/src/test/ui/error-codes/E0463.stderr @@ -0,0 +1,8 @@ +error[E0463]: can't find crate for `cookie_monster` + --> $DIR/E0463.rs:12:11 + | +12 | #![plugin(cookie_monster)] + | ^^^^^^^^^^^^^^ can't find crate + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0478.rs b/src/test/ui/error-codes/E0478.rs similarity index 100% rename from src/test/compile-fail/E0478.rs rename to src/test/ui/error-codes/E0478.rs diff --git a/src/test/ui/error-codes/E0478.stderr b/src/test/ui/error-codes/E0478.stderr new file mode 100644 index 0000000000000..f909fa48c2769 --- /dev/null +++ b/src/test/ui/error-codes/E0478.stderr @@ -0,0 +1,19 @@ +error[E0478]: lifetime bound not satisfied + --> $DIR/E0478.rs:14:5 + | +14 | child: Box + 'SnowWhite>, //~ ERROR E0478 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +note: lifetime parameter instantiated with the lifetime 'SnowWhite as defined on the struct at 13:1 + --> $DIR/E0478.rs:13:1 + | +13 | struct Prince<'kiss, 'SnowWhite> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +note: but lifetime parameter must outlive the lifetime 'kiss as defined on the struct at 13:1 + --> $DIR/E0478.rs:13:1 + | +13 | struct Prince<'kiss, 'SnowWhite> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0492.rs b/src/test/ui/error-codes/E0492.rs similarity index 100% rename from src/test/compile-fail/E0492.rs rename to src/test/ui/error-codes/E0492.rs diff --git a/src/test/ui/error-codes/E0492.stderr b/src/test/ui/error-codes/E0492.stderr new file mode 100644 index 0000000000000..c19896623128f --- /dev/null +++ b/src/test/ui/error-codes/E0492.stderr @@ -0,0 +1,8 @@ +error[E0492]: cannot borrow a constant which may contain interior mutability, create a static instead + --> $DIR/E0492.rs:14:34 + | +14 | static B: &'static AtomicUsize = &A; //~ ERROR E0492 + | ^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0494.rs b/src/test/ui/error-codes/E0494.rs similarity index 100% rename from src/test/compile-fail/E0494.rs rename to src/test/ui/error-codes/E0494.rs diff --git a/src/test/ui/error-codes/E0494.stderr b/src/test/ui/error-codes/E0494.stderr new file mode 100644 index 0000000000000..1d5ded5bd9aa1 --- /dev/null +++ b/src/test/ui/error-codes/E0494.stderr @@ -0,0 +1,8 @@ +error[E0494]: cannot refer to the interior of another static, use a constant instead + --> $DIR/E0494.rs:16:27 + | +16 | static A : &'static u32 = &S.a; //~ ERROR E0494 + | ^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0496.rs b/src/test/ui/error-codes/E0496.rs similarity index 100% rename from src/test/compile-fail/E0496.rs rename to src/test/ui/error-codes/E0496.rs diff --git a/src/test/ui/error-codes/E0496.stderr b/src/test/ui/error-codes/E0496.stderr new file mode 100644 index 0000000000000..ab9a08a534897 --- /dev/null +++ b/src/test/ui/error-codes/E0496.stderr @@ -0,0 +1,10 @@ +error[E0496]: lifetime name `'a` shadows a lifetime name that is already in scope + --> $DIR/E0496.rs:16:10 + | +15 | impl<'a> Foo<'a> { + | -- first declared here +16 | fn f<'a>(x: &'a i32) { //~ ERROR E0496 + | ^^ lifetime 'a already in scope + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0499.rs b/src/test/ui/error-codes/E0499.rs similarity index 100% rename from src/test/compile-fail/E0499.rs rename to src/test/ui/error-codes/E0499.rs diff --git a/src/test/ui/error-codes/E0499.stderr b/src/test/ui/error-codes/E0499.stderr new file mode 100644 index 0000000000000..c3057d9b558d7 --- /dev/null +++ b/src/test/ui/error-codes/E0499.stderr @@ -0,0 +1,12 @@ +error[E0499]: cannot borrow `i` as mutable more than once at a time + --> $DIR/E0499.rs:14:22 + | +13 | let mut x = &mut i; + | - first mutable borrow occurs here +14 | let mut a = &mut i; //~ ERROR E0499 + | ^ second mutable borrow occurs here +15 | } + | - first borrow ends here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0502.rs b/src/test/ui/error-codes/E0502.rs similarity index 100% rename from src/test/compile-fail/E0502.rs rename to src/test/ui/error-codes/E0502.rs diff --git a/src/test/ui/error-codes/E0502.stderr b/src/test/ui/error-codes/E0502.stderr new file mode 100644 index 0000000000000..e578cffe56463 --- /dev/null +++ b/src/test/ui/error-codes/E0502.stderr @@ -0,0 +1,12 @@ +error[E0502]: cannot borrow `*a` as mutable because `a` is also borrowed as immutable + --> $DIR/E0502.rs:14:9 + | +13 | let ref y = a; + | ----- immutable borrow occurs here +14 | bar(a); //~ ERROR E0502 + | ^ mutable borrow occurs here +15 | } + | - immutable borrow ends here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0503.rs b/src/test/ui/error-codes/E0503.rs similarity index 100% rename from src/test/compile-fail/E0503.rs rename to src/test/ui/error-codes/E0503.rs diff --git a/src/test/ui/error-codes/E0503.stderr b/src/test/ui/error-codes/E0503.stderr new file mode 100644 index 0000000000000..112e2c477802e --- /dev/null +++ b/src/test/ui/error-codes/E0503.stderr @@ -0,0 +1,10 @@ +error[E0503]: cannot use `value` because it was mutably borrowed + --> $DIR/E0503.rs:14:16 + | +13 | let _borrow = &mut value; + | ----- borrow of `value` occurs here +14 | let _sum = value + 1; //~ ERROR E0503 + | ^^^^^ use of borrowed `value` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0504.rs b/src/test/ui/error-codes/E0504.rs similarity index 100% rename from src/test/compile-fail/E0504.rs rename to src/test/ui/error-codes/E0504.rs diff --git a/src/test/ui/error-codes/E0504.stderr b/src/test/ui/error-codes/E0504.stderr new file mode 100644 index 0000000000000..0f1b183dba92f --- /dev/null +++ b/src/test/ui/error-codes/E0504.stderr @@ -0,0 +1,11 @@ +error[E0504]: cannot move `fancy_num` into closure because it is borrowed + --> $DIR/E0504.rs:20:40 + | +17 | let fancy_ref = &fancy_num; + | --------- borrow of `fancy_num` occurs here +... +20 | println!("child function: {}", fancy_num.num); //~ ERROR E0504 + | ^^^^^^^^^ move into closure occurs here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0505.rs b/src/test/ui/error-codes/E0505.rs similarity index 100% rename from src/test/compile-fail/E0505.rs rename to src/test/ui/error-codes/E0505.rs diff --git a/src/test/ui/error-codes/E0505.stderr b/src/test/ui/error-codes/E0505.stderr new file mode 100644 index 0000000000000..dfb327d48eaa5 --- /dev/null +++ b/src/test/ui/error-codes/E0505.stderr @@ -0,0 +1,10 @@ +error[E0505]: cannot move out of `x` because it is borrowed + --> $DIR/E0505.rs:19:13 + | +18 | let _ref_to_val: &Value = &x; + | - borrow of `x` occurs here +19 | eat(x); //~ ERROR E0505 + | ^ move out of `x` occurs here + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0507.rs b/src/test/ui/error-codes/E0507.rs similarity index 100% rename from src/test/compile-fail/E0507.rs rename to src/test/ui/error-codes/E0507.rs diff --git a/src/test/ui/error-codes/E0507.stderr b/src/test/ui/error-codes/E0507.stderr new file mode 100644 index 0000000000000..407ebb8fc7be5 --- /dev/null +++ b/src/test/ui/error-codes/E0507.stderr @@ -0,0 +1,8 @@ +error[E0507]: cannot move out of borrowed content + --> $DIR/E0507.rs:22:5 + | +22 | x.borrow().nothing_is_true(); //~ ERROR E0507 + | ^^^^^^^^^^ cannot move out of borrowed content + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0509.rs b/src/test/ui/error-codes/E0509.rs similarity index 100% rename from src/test/compile-fail/E0509.rs rename to src/test/ui/error-codes/E0509.rs diff --git a/src/test/ui/error-codes/E0509.stderr b/src/test/ui/error-codes/E0509.stderr new file mode 100644 index 0000000000000..6da0fdbeb34e1 --- /dev/null +++ b/src/test/ui/error-codes/E0509.stderr @@ -0,0 +1,11 @@ +error[E0509]: cannot move out of type `DropStruct`, which implements the `Drop` trait + --> $DIR/E0509.rs:26:23 + | +26 | let fancy_field = drop_struct.fancy; //~ ERROR E0509 + | ^^^^^^^^^^^^^^^^^ + | | + | cannot move out of here + | help: consider using a reference instead: `&drop_struct.fancy` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0511.rs b/src/test/ui/error-codes/E0511.rs similarity index 100% rename from src/test/compile-fail/E0511.rs rename to src/test/ui/error-codes/E0511.rs diff --git a/src/test/ui/error-codes/E0511.stderr b/src/test/ui/error-codes/E0511.stderr new file mode 100644 index 0000000000000..b714350393b6a --- /dev/null +++ b/src/test/ui/error-codes/E0511.stderr @@ -0,0 +1,8 @@ +error[E0511]: invalid monomorphization of `simd_add` intrinsic: expected SIMD input type, found non-SIMD `i32` + --> $DIR/E0511.rs:18:14 + | +18 | unsafe { simd_add(0, 1); } //~ ERROR E0511 + | ^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0512.rs b/src/test/ui/error-codes/E0512.rs similarity index 100% rename from src/test/compile-fail/E0512.rs rename to src/test/ui/error-codes/E0512.rs diff --git a/src/test/ui/error-codes/E0512.stderr b/src/test/ui/error-codes/E0512.stderr new file mode 100644 index 0000000000000..ad25bb216a390 --- /dev/null +++ b/src/test/ui/error-codes/E0512.stderr @@ -0,0 +1,11 @@ +error[E0512]: transmute called with types of different sizes + --> $DIR/E0512.rs:14:23 + | +14 | unsafe { takes_u8(::std::mem::transmute(0u16)); } //~ ERROR E0512 + | ^^^^^^^^^^^^^^^^^^^^^ + | + = note: source type: u16 (16 bits) + = note: target type: u8 (8 bits) + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0516.rs b/src/test/ui/error-codes/E0516.rs similarity index 100% rename from src/test/compile-fail/E0516.rs rename to src/test/ui/error-codes/E0516.rs diff --git a/src/test/ui/error-codes/E0516.stderr b/src/test/ui/error-codes/E0516.stderr new file mode 100644 index 0000000000000..620929653f665 --- /dev/null +++ b/src/test/ui/error-codes/E0516.stderr @@ -0,0 +1,8 @@ +error[E0516]: `typeof` is a reserved keyword but unimplemented + --> $DIR/E0516.rs:12:12 + | +12 | let x: typeof(92) = 92; //~ ERROR E0516 + | ^^^^^^^^^^ reserved keyword + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0517.rs b/src/test/ui/error-codes/E0517.rs similarity index 100% rename from src/test/compile-fail/E0517.rs rename to src/test/ui/error-codes/E0517.rs diff --git a/src/test/ui/error-codes/E0517.stderr b/src/test/ui/error-codes/E0517.stderr new file mode 100644 index 0000000000000..968c47fa7a26f --- /dev/null +++ b/src/test/ui/error-codes/E0517.stderr @@ -0,0 +1,35 @@ +error[E0517]: attribute should be applied to struct, enum or union + --> $DIR/E0517.rs:11:8 + | +11 | #[repr(C)] //~ ERROR: E0517 + | ^ +12 | type Foo = u8; + | -------------- not a struct, enum or union + +error[E0517]: attribute should be applied to struct or union + --> $DIR/E0517.rs:14:8 + | +14 | #[repr(packed)] //~ ERROR: E0517 + | ^^^^^^ +15 | enum Foo2 {Bar, Baz} + | -------------------- not a struct or union + +error[E0517]: attribute should be applied to enum + --> $DIR/E0517.rs:17:8 + | +17 | #[repr(u8)] //~ ERROR: E0517 + | ^^ +18 | struct Foo3 {bar: bool, baz: bool} + | ---------------------------------- not an enum + +error[E0517]: attribute should be applied to struct, enum or union + --> $DIR/E0517.rs:20:8 + | +20 | #[repr(C)] //~ ERROR: E0517 + | ^ +21 | / impl Foo3 { +22 | | } + | |_- not a struct, enum or union + +error: aborting due to 4 previous errors + diff --git a/src/test/compile-fail/E0518.rs b/src/test/ui/error-codes/E0518.rs similarity index 100% rename from src/test/compile-fail/E0518.rs rename to src/test/ui/error-codes/E0518.rs diff --git a/src/test/ui/error-codes/E0518.stderr b/src/test/ui/error-codes/E0518.stderr new file mode 100644 index 0000000000000..99a4a63cc9f2e --- /dev/null +++ b/src/test/ui/error-codes/E0518.stderr @@ -0,0 +1,19 @@ +error[E0518]: attribute should be applied to function + --> $DIR/E0518.rs:11:1 + | +11 | #[inline(always)] //~ ERROR: E0518 + | ^^^^^^^^^^^^^^^^^ +12 | struct Foo; + | ----------- not a function + +error[E0518]: attribute should be applied to function + --> $DIR/E0518.rs:14:1 + | +14 | #[inline(never)] //~ ERROR: E0518 + | ^^^^^^^^^^^^^^^^ +15 | / impl Foo { +16 | | } + | |_- not a function + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0520.rs b/src/test/ui/error-codes/E0520.rs similarity index 100% rename from src/test/compile-fail/E0520.rs rename to src/test/ui/error-codes/E0520.rs diff --git a/src/test/ui/error-codes/E0520.stderr b/src/test/ui/error-codes/E0520.stderr new file mode 100644 index 0000000000000..272c38859ab0a --- /dev/null +++ b/src/test/ui/error-codes/E0520.stderr @@ -0,0 +1,15 @@ +error[E0520]: `fly` specializes an item from a parent `impl`, but that item is not marked `default` + --> $DIR/E0520.rs:26:5 + | +21 | / impl SpaceLlama for T { +22 | | fn fly(&self) {} +23 | | } + | |_- parent `impl` is here +... +26 | default fn fly(&self) {} + | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot specialize default item `fly` + | + = note: to specialize, `fly` in the parent `impl` must be marked `default` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0522.rs b/src/test/ui/error-codes/E0522.rs similarity index 100% rename from src/test/compile-fail/E0522.rs rename to src/test/ui/error-codes/E0522.rs diff --git a/src/test/ui/error-codes/E0522.stderr b/src/test/ui/error-codes/E0522.stderr new file mode 100644 index 0000000000000..819fab0088f55 --- /dev/null +++ b/src/test/ui/error-codes/E0522.stderr @@ -0,0 +1,10 @@ +error[E0601]: main function not found + +error[E0522]: definition of an unknown language item: `cookie` + --> $DIR/E0522.rs:13:1 + | +13 | #[lang = "cookie"] + | ^^^^^^^^^^^^^^^^^^ definition of unknown language item `cookie` + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0527.rs b/src/test/ui/error-codes/E0527.rs similarity index 100% rename from src/test/compile-fail/E0527.rs rename to src/test/ui/error-codes/E0527.rs diff --git a/src/test/ui/error-codes/E0527.stderr b/src/test/ui/error-codes/E0527.stderr new file mode 100644 index 0000000000000..7cd705e6d0b9d --- /dev/null +++ b/src/test/ui/error-codes/E0527.stderr @@ -0,0 +1,8 @@ +error[E0527]: pattern requires 2 elements but array has 4 + --> $DIR/E0527.rs:16:10 + | +16 | &[a, b] => { + | ^^^^^^ expected 4 elements + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0528.rs b/src/test/ui/error-codes/E0528.rs similarity index 100% rename from src/test/compile-fail/E0528.rs rename to src/test/ui/error-codes/E0528.rs diff --git a/src/test/ui/error-codes/E0528.stderr b/src/test/ui/error-codes/E0528.stderr new file mode 100644 index 0000000000000..ff75b07ced602 --- /dev/null +++ b/src/test/ui/error-codes/E0528.stderr @@ -0,0 +1,8 @@ +error[E0528]: pattern requires at least 3 elements but array has 2 + --> $DIR/E0528.rs:16:10 + | +16 | &[a, b, c, rest..] => { + | ^^^^^^^^^^^^^^^^^ pattern cannot match array of 2 elements + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0529.rs b/src/test/ui/error-codes/E0529.rs similarity index 100% rename from src/test/compile-fail/E0529.rs rename to src/test/ui/error-codes/E0529.rs diff --git a/src/test/ui/error-codes/E0529.stderr b/src/test/ui/error-codes/E0529.stderr new file mode 100644 index 0000000000000..be9039be2b668 --- /dev/null +++ b/src/test/ui/error-codes/E0529.stderr @@ -0,0 +1,8 @@ +error[E0529]: expected an array or slice, found `f32` + --> $DIR/E0529.rs:16:9 + | +16 | [a, b] => { + | ^^^^^^ pattern cannot match with input type `f32` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0530.rs b/src/test/ui/error-codes/E0530.rs similarity index 100% rename from src/test/compile-fail/E0530.rs rename to src/test/ui/error-codes/E0530.rs diff --git a/src/test/ui/error-codes/E0530.stderr b/src/test/ui/error-codes/E0530.stderr new file mode 100644 index 0000000000000..7c0306cc772fa --- /dev/null +++ b/src/test/ui/error-codes/E0530.stderr @@ -0,0 +1,11 @@ +error[E0530]: match bindings cannot shadow statics + --> $DIR/E0530.rs:16:9 + | +12 | static TEST: i32 = 0; + | --------------------- a static `TEST` is defined here +... +16 | TEST => {} //~ ERROR E0530 + | ^^^^ cannot be named the same as a static + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0532.rs b/src/test/ui/error-codes/E0532.rs similarity index 100% rename from src/test/compile-fail/E0532.rs rename to src/test/ui/error-codes/E0532.rs diff --git a/src/test/ui/error-codes/E0532.stderr b/src/test/ui/error-codes/E0532.stderr new file mode 100644 index 0000000000000..4eb91ce35d44a --- /dev/null +++ b/src/test/ui/error-codes/E0532.stderr @@ -0,0 +1,8 @@ +error[E0532]: expected tuple struct/variant, found constant `StructConst1` + --> $DIR/E0532.rs:15:9 + | +15 | StructConst1(_) => { }, + | ^^^^^^^^^^^^ not a tuple struct/variant + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0534.rs b/src/test/ui/error-codes/E0534.rs similarity index 100% rename from src/test/compile-fail/E0534.rs rename to src/test/ui/error-codes/E0534.rs diff --git a/src/test/ui/error-codes/E0534.stderr b/src/test/ui/error-codes/E0534.stderr new file mode 100644 index 0000000000000..fe7a5483e59df --- /dev/null +++ b/src/test/ui/error-codes/E0534.stderr @@ -0,0 +1,8 @@ +error[E0534]: expected one argument + --> $DIR/E0534.rs:11:1 + | +11 | #[inline()] //~ ERROR E0534 + | ^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0558.rs b/src/test/ui/error-codes/E0558.rs similarity index 100% rename from src/test/compile-fail/E0558.rs rename to src/test/ui/error-codes/E0558.rs diff --git a/src/test/ui/error-codes/E0558.stderr b/src/test/ui/error-codes/E0558.stderr new file mode 100644 index 0000000000000..c116201794d47 --- /dev/null +++ b/src/test/ui/error-codes/E0558.stderr @@ -0,0 +1,8 @@ +error[E0558]: export_name attribute has invalid format + --> $DIR/E0558.rs:11:1 + | +11 | #[export_name] + | ^^^^^^^^^^^^^^ did you mean #[export_name="*"]? + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0559.rs b/src/test/ui/error-codes/E0559.rs similarity index 100% rename from src/test/compile-fail/E0559.rs rename to src/test/ui/error-codes/E0559.rs diff --git a/src/test/ui/error-codes/E0559.stderr b/src/test/ui/error-codes/E0559.stderr new file mode 100644 index 0000000000000..5d145a9518095 --- /dev/null +++ b/src/test/ui/error-codes/E0559.stderr @@ -0,0 +1,10 @@ +error[E0559]: variant `Field::Fool` has no field named `joke` + --> $DIR/E0559.rs:16:27 + | +16 | let s = Field::Fool { joke: 0 }; + | ^^^^^ `Field::Fool` does not have this field + | + = note: available fields are: `x` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0560.rs b/src/test/ui/error-codes/E0560.rs similarity index 100% rename from src/test/compile-fail/E0560.rs rename to src/test/ui/error-codes/E0560.rs diff --git a/src/test/ui/error-codes/E0560.stderr b/src/test/ui/error-codes/E0560.stderr new file mode 100644 index 0000000000000..a0185aa8af64b --- /dev/null +++ b/src/test/ui/error-codes/E0560.stderr @@ -0,0 +1,10 @@ +error[E0560]: struct `Simba` has no field named `father` + --> $DIR/E0560.rs:16:32 + | +16 | let s = Simba { mother: 1, father: 0 }; + | ^^^^^^^ `Simba` does not have this field + | + = note: available fields are: `mother` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0565-1.rs b/src/test/ui/error-codes/E0565-1.rs similarity index 100% rename from src/test/compile-fail/E0565-1.rs rename to src/test/ui/error-codes/E0565-1.rs diff --git a/src/test/ui/error-codes/E0565-1.stderr b/src/test/ui/error-codes/E0565-1.stderr new file mode 100644 index 0000000000000..65b917ad4bd32 --- /dev/null +++ b/src/test/ui/error-codes/E0565-1.stderr @@ -0,0 +1,8 @@ +error[E0565]: unsupported literal + --> $DIR/E0565-1.rs:14:14 + | +14 | #[deprecated("since")] //~ ERROR E0565 + | ^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0565.rs b/src/test/ui/error-codes/E0565.rs similarity index 100% rename from src/test/compile-fail/E0565.rs rename to src/test/ui/error-codes/E0565.rs diff --git a/src/test/ui/error-codes/E0565.stderr b/src/test/ui/error-codes/E0565.stderr new file mode 100644 index 0000000000000..0041b7689a671 --- /dev/null +++ b/src/test/ui/error-codes/E0565.stderr @@ -0,0 +1,8 @@ +error[E0565]: unsupported literal + --> $DIR/E0565.rs:14:8 + | +14 | #[repr("C")] //~ ERROR E0565 + | ^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0572.rs b/src/test/ui/error-codes/E0572.rs similarity index 100% rename from src/test/compile-fail/E0572.rs rename to src/test/ui/error-codes/E0572.rs diff --git a/src/test/ui/error-codes/E0572.stderr b/src/test/ui/error-codes/E0572.stderr new file mode 100644 index 0000000000000..cad313b90a613 --- /dev/null +++ b/src/test/ui/error-codes/E0572.stderr @@ -0,0 +1,8 @@ +error[E0572]: return statement outside of function body + --> $DIR/E0572.rs:11:18 + | +11 | const FOO: u32 = return 0; //~ ERROR E0572 + | ^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0582.rs b/src/test/ui/error-codes/E0582.rs similarity index 100% rename from src/test/compile-fail/E0582.rs rename to src/test/ui/error-codes/E0582.rs diff --git a/src/test/ui/error-codes/E0582.stderr b/src/test/ui/error-codes/E0582.stderr new file mode 100644 index 0000000000000..ac20683402302 --- /dev/null +++ b/src/test/ui/error-codes/E0582.stderr @@ -0,0 +1,14 @@ +error[E0582]: binding for associated type `Output` references lifetime `'a`, which does not appear in the trait input types + --> $DIR/E0582.rs:38:30 + | +38 | where F: for<'a> Fn() -> Option<&'a i32> + | ^^^^^^^^^^^^^^^ + +error[E0582]: binding for associated type `Item` references lifetime `'a`, which does not appear in the trait input types + --> $DIR/E0582.rs:46:31 + | +46 | where F: for<'a> Iterator + | ^^^^^^^^^^^^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0585.rs b/src/test/ui/error-codes/E0585.rs similarity index 100% rename from src/test/compile-fail/E0585.rs rename to src/test/ui/error-codes/E0585.rs diff --git a/src/test/ui/error-codes/E0585.stderr b/src/test/ui/error-codes/E0585.stderr new file mode 100644 index 0000000000000..49967f4ad81d5 --- /dev/null +++ b/src/test/ui/error-codes/E0585.stderr @@ -0,0 +1,10 @@ +error[E0585]: found a documentation comment that doesn't document anything + --> $DIR/E0585.rs:12:5 + | +12 | /// Hello! I'm useless... + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = help: doc comments must come before what they document, maybe a comment was intended with `//`? + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0586.rs b/src/test/ui/error-codes/E0586.rs similarity index 100% rename from src/test/compile-fail/E0586.rs rename to src/test/ui/error-codes/E0586.rs diff --git a/src/test/ui/error-codes/E0586.stderr b/src/test/ui/error-codes/E0586.stderr new file mode 100644 index 0000000000000..3cf16bdc3c318 --- /dev/null +++ b/src/test/ui/error-codes/E0586.stderr @@ -0,0 +1,10 @@ +error[E0586]: inclusive range with no end + --> $DIR/E0586.rs:13:22 + | +13 | let x = &tmp[1..=]; //~ ERROR E0586 + | ^ + | + = help: inclusive ranges must be bounded at the end (`..=b` or `a..=b`) + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0597.rs b/src/test/ui/error-codes/E0597.rs similarity index 100% rename from src/test/compile-fail/E0597.rs rename to src/test/ui/error-codes/E0597.rs diff --git a/src/test/ui/error-codes/E0597.stderr b/src/test/ui/error-codes/E0597.stderr new file mode 100644 index 0000000000000..7316ee6475f18 --- /dev/null +++ b/src/test/ui/error-codes/E0597.stderr @@ -0,0 +1,13 @@ +error[E0597]: `y` does not live long enough + --> $DIR/E0597.rs:18:17 + | +18 | x.x = Some(&y); + | ^ borrowed value does not live long enough +19 | //~^ `y` does not live long enough [E0597] +20 | } + | - `y` dropped here while still borrowed + | + = note: values in a scope are dropped in the opposite order they are created + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0599.rs b/src/test/ui/error-codes/E0599.rs similarity index 100% rename from src/test/compile-fail/E0599.rs rename to src/test/ui/error-codes/E0599.rs diff --git a/src/test/ui/error-codes/E0599.stderr b/src/test/ui/error-codes/E0599.stderr new file mode 100644 index 0000000000000..0274506926f8d --- /dev/null +++ b/src/test/ui/error-codes/E0599.stderr @@ -0,0 +1,11 @@ +error[E0599]: no associated item named `NotEvenReal` found for type `Foo` in the current scope + --> $DIR/E0599.rs:14:15 + | +11 | struct Foo; + | ----------- associated item `NotEvenReal` not found for this +... +14 | || if let Foo::NotEvenReal() = Foo {}; //~ ERROR E0599 + | ^^^^^^^^^^^^^^^^^^ associated item not found in `Foo` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0600.rs b/src/test/ui/error-codes/E0600.rs similarity index 100% rename from src/test/compile-fail/E0600.rs rename to src/test/ui/error-codes/E0600.rs diff --git a/src/test/ui/error-codes/E0600.stderr b/src/test/ui/error-codes/E0600.stderr new file mode 100644 index 0000000000000..fec5f4169196e --- /dev/null +++ b/src/test/ui/error-codes/E0600.stderr @@ -0,0 +1,8 @@ +error[E0600]: cannot apply unary operator `!` to type `&'static str` + --> $DIR/E0600.rs:12:5 + | +12 | !"a"; //~ ERROR E0600 + | ^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0602.rs b/src/test/ui/error-codes/E0602.rs similarity index 100% rename from src/test/compile-fail/E0602.rs rename to src/test/ui/error-codes/E0602.rs diff --git a/src/test/ui/error-codes/E0602.stderr b/src/test/ui/error-codes/E0602.stderr new file mode 100644 index 0000000000000..cb6c05326e230 --- /dev/null +++ b/src/test/ui/error-codes/E0602.stderr @@ -0,0 +1,6 @@ +error[E0602]: unknown lint: `bogus` + | + = note: requested on the command line with `-D bogus` + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0603.rs b/src/test/ui/error-codes/E0603.rs similarity index 100% rename from src/test/compile-fail/E0603.rs rename to src/test/ui/error-codes/E0603.rs diff --git a/src/test/ui/error-codes/E0603.stderr b/src/test/ui/error-codes/E0603.stderr new file mode 100644 index 0000000000000..1d8e2fa9340e3 --- /dev/null +++ b/src/test/ui/error-codes/E0603.stderr @@ -0,0 +1,8 @@ +error[E0603]: constant `PRIVATE` is private + --> $DIR/E0603.rs:16:5 + | +16 | SomeModule::PRIVATE; //~ ERROR E0603 + | ^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0604.rs b/src/test/ui/error-codes/E0604.rs similarity index 100% rename from src/test/compile-fail/E0604.rs rename to src/test/ui/error-codes/E0604.rs diff --git a/src/test/ui/error-codes/E0604.stderr b/src/test/ui/error-codes/E0604.stderr new file mode 100644 index 0000000000000..78d1c4dd47654 --- /dev/null +++ b/src/test/ui/error-codes/E0604.stderr @@ -0,0 +1,8 @@ +error[E0604]: only `u8` can be cast as `char`, not `u32` + --> $DIR/E0604.rs:12:5 + | +12 | 1u32 as char; //~ ERROR E0604 + | ^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0605.rs b/src/test/ui/error-codes/E0605.rs similarity index 100% rename from src/test/compile-fail/E0605.rs rename to src/test/ui/error-codes/E0605.rs diff --git a/src/test/ui/error-codes/E0605.stderr b/src/test/ui/error-codes/E0605.stderr new file mode 100644 index 0000000000000..0b44de25fb5cd --- /dev/null +++ b/src/test/ui/error-codes/E0605.stderr @@ -0,0 +1,18 @@ +error[E0605]: non-primitive cast: `u8` as `std::vec::Vec` + --> $DIR/E0605.rs:13:5 + | +13 | x as Vec; //~ ERROR E0605 + | ^^^^^^^^^^^^ + | + = note: an `as` expression can only be used to convert between primitive types. Consider using the `From` trait + +error[E0605]: non-primitive cast: `*const u8` as `&u8` + --> $DIR/E0605.rs:16:5 + | +16 | v as &u8; //~ ERROR E0605 + | ^^^^^^^^ + | + = note: an `as` expression can only be used to convert between primitive types. Consider using the `From` trait + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0606.rs b/src/test/ui/error-codes/E0606.rs similarity index 100% rename from src/test/compile-fail/E0606.rs rename to src/test/ui/error-codes/E0606.rs diff --git a/src/test/ui/error-codes/E0606.stderr b/src/test/ui/error-codes/E0606.stderr new file mode 100644 index 0000000000000..17051da1319d9 --- /dev/null +++ b/src/test/ui/error-codes/E0606.stderr @@ -0,0 +1,14 @@ +error[E0606]: casting `&u8` as `u8` is invalid + --> $DIR/E0606.rs:12:5 + | +12 | &0u8 as u8; //~ ERROR E0606 + | ^^^^^^^^^^ cannot cast `&u8` as `u8` + | +help: did you mean `*&0u8`? + --> $DIR/E0606.rs:12:5 + | +12 | &0u8 as u8; //~ ERROR E0606 + | ^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0607.rs b/src/test/ui/error-codes/E0607.rs similarity index 100% rename from src/test/compile-fail/E0607.rs rename to src/test/ui/error-codes/E0607.rs diff --git a/src/test/ui/error-codes/E0607.stderr b/src/test/ui/error-codes/E0607.stderr new file mode 100644 index 0000000000000..5dfe6ad59b879 --- /dev/null +++ b/src/test/ui/error-codes/E0607.stderr @@ -0,0 +1,8 @@ +error[E0607]: cannot cast thin pointer `*const u8` to fat pointer `*const [u8]` + --> $DIR/E0607.rs:13:5 + | +13 | v as *const [u8]; //~ ERROR E0607 + | ^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0608.rs b/src/test/ui/error-codes/E0608.rs similarity index 100% rename from src/test/compile-fail/E0608.rs rename to src/test/ui/error-codes/E0608.rs diff --git a/src/test/ui/error-codes/E0608.stderr b/src/test/ui/error-codes/E0608.stderr new file mode 100644 index 0000000000000..ab75fe82af350 --- /dev/null +++ b/src/test/ui/error-codes/E0608.stderr @@ -0,0 +1,8 @@ +error[E0608]: cannot index into a value of type `u8` + --> $DIR/E0608.rs:12:5 + | +12 | 0u8[2]; //~ ERROR E0608 + | ^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0609.rs b/src/test/ui/error-codes/E0609.rs similarity index 100% rename from src/test/compile-fail/E0609.rs rename to src/test/ui/error-codes/E0609.rs diff --git a/src/test/ui/error-codes/E0609.stderr b/src/test/ui/error-codes/E0609.stderr new file mode 100644 index 0000000000000..561164cd277dc --- /dev/null +++ b/src/test/ui/error-codes/E0609.stderr @@ -0,0 +1,16 @@ +error[E0609]: no field `foo` on type `Foo` + --> $DIR/E0609.rs:18:15 + | +18 | let _ = x.foo; //~ ERROR E0609 + | ^^^ unknown field + | + = note: available fields are: `x` + +error[E0609]: no field `1` on type `Bar` + --> $DIR/E0609.rs:21:5 + | +21 | y.1; //~ ERROR E0609 + | ^^^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0610.rs b/src/test/ui/error-codes/E0610.rs similarity index 100% rename from src/test/compile-fail/E0610.rs rename to src/test/ui/error-codes/E0610.rs diff --git a/src/test/ui/error-codes/E0610.stderr b/src/test/ui/error-codes/E0610.stderr new file mode 100644 index 0000000000000..351e9208e95bd --- /dev/null +++ b/src/test/ui/error-codes/E0610.stderr @@ -0,0 +1,8 @@ +error[E0610]: `{integer}` is a primitive type and therefore doesn't have fields + --> $DIR/E0610.rs:13:15 + | +13 | let _ = x.foo; //~ ERROR E0610 + | ^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0611.rs b/src/test/ui/error-codes/E0611.rs similarity index 100% rename from src/test/compile-fail/E0611.rs rename to src/test/ui/error-codes/E0611.rs diff --git a/src/test/ui/error-codes/E0611.stderr b/src/test/ui/error-codes/E0611.stderr new file mode 100644 index 0000000000000..33fe78bc18c60 --- /dev/null +++ b/src/test/ui/error-codes/E0611.stderr @@ -0,0 +1,8 @@ +error[E0611]: field `0` of tuple-struct `a::Foo` is private + --> $DIR/E0611.rs:21:4 + | +21 | y.0; //~ ERROR E0611 + | ^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0612.rs b/src/test/ui/error-codes/E0612.rs similarity index 100% rename from src/test/compile-fail/E0612.rs rename to src/test/ui/error-codes/E0612.rs diff --git a/src/test/ui/error-codes/E0612.stderr b/src/test/ui/error-codes/E0612.stderr new file mode 100644 index 0000000000000..21fdaf84dc94d --- /dev/null +++ b/src/test/ui/error-codes/E0612.stderr @@ -0,0 +1,8 @@ +error[E0612]: attempted out-of-bounds tuple index `1` on type `Foo` + --> $DIR/E0612.rs:15:4 + | +15 | y.1; //~ ERROR E0612 + | ^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0614.rs b/src/test/ui/error-codes/E0614.rs similarity index 100% rename from src/test/compile-fail/E0614.rs rename to src/test/ui/error-codes/E0614.rs diff --git a/src/test/ui/error-codes/E0614.stderr b/src/test/ui/error-codes/E0614.stderr new file mode 100644 index 0000000000000..242cc36f0b9a1 --- /dev/null +++ b/src/test/ui/error-codes/E0614.stderr @@ -0,0 +1,8 @@ +error[E0614]: type `u32` cannot be dereferenced + --> $DIR/E0614.rs:13:5 + | +13 | *y; //~ ERROR E0614 + | ^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0615.rs b/src/test/ui/error-codes/E0615.rs similarity index 100% rename from src/test/compile-fail/E0615.rs rename to src/test/ui/error-codes/E0615.rs diff --git a/src/test/ui/error-codes/E0615.stderr b/src/test/ui/error-codes/E0615.stderr new file mode 100644 index 0000000000000..fb3f9269f7c2b --- /dev/null +++ b/src/test/ui/error-codes/E0615.stderr @@ -0,0 +1,10 @@ +error[E0615]: attempted to take value of method `method` on type `Foo` + --> $DIR/E0615.rs:21:7 + | +21 | f.method; //~ ERROR E0615 + | ^^^^^^ + | + = help: maybe a `()` to call it is missing? + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0616.rs b/src/test/ui/error-codes/E0616.rs similarity index 100% rename from src/test/compile-fail/E0616.rs rename to src/test/ui/error-codes/E0616.rs diff --git a/src/test/ui/error-codes/E0616.stderr b/src/test/ui/error-codes/E0616.stderr new file mode 100644 index 0000000000000..1dccd06b376d9 --- /dev/null +++ b/src/test/ui/error-codes/E0616.stderr @@ -0,0 +1,8 @@ +error[E0616]: field `x` of struct `a::Foo` is private + --> $DIR/E0616.rs:23:5 + | +23 | f.x; //~ ERROR E0616 + | ^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0617.rs b/src/test/ui/error-codes/E0617.rs similarity index 100% rename from src/test/compile-fail/E0617.rs rename to src/test/ui/error-codes/E0617.rs diff --git a/src/test/ui/error-codes/E0617.stderr b/src/test/ui/error-codes/E0617.stderr new file mode 100644 index 0000000000000..49d63538624e6 --- /dev/null +++ b/src/test/ui/error-codes/E0617.stderr @@ -0,0 +1,42 @@ +error[E0617]: can't pass `f32` to variadic function + --> $DIR/E0617.rs:19:36 + | +19 | printf(::std::ptr::null(), 0f32); + | ^^^^ help: cast the value to `c_double`: `0f32 as c_double` + +error[E0617]: can't pass `i8` to variadic function + --> $DIR/E0617.rs:22:36 + | +22 | printf(::std::ptr::null(), 0i8); + | ^^^ help: cast the value to `c_int`: `0i8 as c_int` + +error[E0617]: can't pass `i16` to variadic function + --> $DIR/E0617.rs:25:36 + | +25 | printf(::std::ptr::null(), 0i16); + | ^^^^ help: cast the value to `c_int`: `0i16 as c_int` + +error[E0617]: can't pass `u8` to variadic function + --> $DIR/E0617.rs:28:36 + | +28 | printf(::std::ptr::null(), 0u8); + | ^^^ help: cast the value to `c_uint`: `0u8 as c_uint` + +error[E0617]: can't pass `u16` to variadic function + --> $DIR/E0617.rs:31:36 + | +31 | printf(::std::ptr::null(), 0u16); + | ^^^^ help: cast the value to `c_uint`: `0u16 as c_uint` + +error[E0617]: can't pass `unsafe extern "C" fn(*const i8, ...) {printf}` to variadic function + --> $DIR/E0617.rs:34:36 + | +34 | printf(::std::ptr::null(), printf); + | ^^^^^^ +help: cast the value to `unsafe extern "C" fn(*const i8, ...)` + | +34 | printf(::std::ptr::null(), printf as unsafe extern "C" fn(*const i8, ...)); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 6 previous errors + diff --git a/src/test/compile-fail/E0618.rs b/src/test/ui/error-codes/E0618.rs similarity index 100% rename from src/test/compile-fail/E0618.rs rename to src/test/ui/error-codes/E0618.rs diff --git a/src/test/ui/error-codes/E0618.stderr b/src/test/ui/error-codes/E0618.stderr new file mode 100644 index 0000000000000..8702437659693 --- /dev/null +++ b/src/test/ui/error-codes/E0618.stderr @@ -0,0 +1,23 @@ +error[E0618]: expected function, found enum variant `X::Entry` + --> $DIR/E0618.rs:16:5 + | +12 | Entry, + | ----- `X::Entry` defined here +... +16 | X::Entry(); + | ^^^^^^^^^^ not a function +help: `X::Entry` is a unit variant, you need to write it without the parenthesis + | +16 | X::Entry; + | ^^^^^^^^ + +error[E0618]: expected function, found `i32` + --> $DIR/E0618.rs:19:5 + | +18 | let x = 0i32; + | - `i32` defined here +19 | x(); + | ^^^ not a function + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0619.rs b/src/test/ui/error-codes/E0619.rs similarity index 100% rename from src/test/compile-fail/E0619.rs rename to src/test/ui/error-codes/E0619.rs diff --git a/src/test/ui/error-codes/E0619.stderr b/src/test/ui/error-codes/E0619.stderr new file mode 100644 index 0000000000000..cec336cfcec66 --- /dev/null +++ b/src/test/ui/error-codes/E0619.stderr @@ -0,0 +1,8 @@ +error[E0619]: the type of this value must be known in this context + --> $DIR/E0619.rs:15:9 + | +15 | (..) => {} //~ ERROR E0619 + | ^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0620.rs b/src/test/ui/error-codes/E0620.rs similarity index 100% rename from src/test/compile-fail/E0620.rs rename to src/test/ui/error-codes/E0620.rs diff --git a/src/test/ui/error-codes/E0620.stderr b/src/test/ui/error-codes/E0620.stderr new file mode 100644 index 0000000000000..564a9472ac9a2 --- /dev/null +++ b/src/test/ui/error-codes/E0620.stderr @@ -0,0 +1,14 @@ +error[E0620]: cast to unsized type: `&[usize; 2]` as `[usize]` + --> $DIR/E0620.rs:12:16 + | +12 | let _foo = &[1_usize, 2] as [usize]; //~ ERROR E0620 + | ^^^^^^^^^^^^^^^^^^^^^^^^ + | +help: consider using an implicit coercion to `&[usize]` instead + --> $DIR/E0620.rs:12:16 + | +12 | let _foo = &[1_usize, 2] as [usize]; //~ ERROR E0620 + | ^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0621-does-not-trigger-for-closures.rs b/src/test/ui/error-codes/E0621-does-not-trigger-for-closures.rs similarity index 100% rename from src/test/compile-fail/E0621-does-not-trigger-for-closures.rs rename to src/test/ui/error-codes/E0621-does-not-trigger-for-closures.rs diff --git a/src/test/ui/error-codes/E0621-does-not-trigger-for-closures.stderr b/src/test/ui/error-codes/E0621-does-not-trigger-for-closures.stderr new file mode 100644 index 0000000000000..c529a838bf739 --- /dev/null +++ b/src/test/ui/error-codes/E0621-does-not-trigger-for-closures.stderr @@ -0,0 +1,29 @@ +error[E0495]: cannot infer an appropriate lifetime for lifetime parameter `'a` due to conflicting requirements + --> $DIR/E0621-does-not-trigger-for-closures.rs:25:5 + | +25 | invoke(&x, |a, b| if a > b { a } else { b }); //~ ERROR E0495 + | ^^^^^^ + | +note: first, the lifetime cannot outlive the anonymous lifetime #2 defined on the body at 25:16... + --> $DIR/E0621-does-not-trigger-for-closures.rs:25:16 + | +25 | invoke(&x, |a, b| if a > b { a } else { b }); //~ ERROR E0495 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +note: ...so that reference does not outlive borrowed content + --> $DIR/E0621-does-not-trigger-for-closures.rs:25:45 + | +25 | invoke(&x, |a, b| if a > b { a } else { b }); //~ ERROR E0495 + | ^ +note: but, the lifetime must be valid for the call at 25:5... + --> $DIR/E0621-does-not-trigger-for-closures.rs:25:5 + | +25 | invoke(&x, |a, b| if a > b { a } else { b }); //~ ERROR E0495 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +note: ...so type `&i32` of expression is valid during the expression + --> $DIR/E0621-does-not-trigger-for-closures.rs:25:5 + | +25 | invoke(&x, |a, b| if a > b { a } else { b }); //~ ERROR E0495 + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0622.rs b/src/test/ui/error-codes/E0622.rs similarity index 100% rename from src/test/compile-fail/E0622.rs rename to src/test/ui/error-codes/E0622.rs diff --git a/src/test/ui/error-codes/E0622.stderr b/src/test/ui/error-codes/E0622.stderr new file mode 100644 index 0000000000000..977f44a9c9781 --- /dev/null +++ b/src/test/ui/error-codes/E0622.stderr @@ -0,0 +1,8 @@ +error[E0622]: intrinsic must be a function + --> $DIR/E0622.rs:13:5 + | +13 | pub static breakpoint : unsafe extern "rust-intrinsic" fn(); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected a function + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0624.rs b/src/test/ui/error-codes/E0624.rs similarity index 100% rename from src/test/compile-fail/E0624.rs rename to src/test/ui/error-codes/E0624.rs diff --git a/src/test/ui/error-codes/E0624.stderr b/src/test/ui/error-codes/E0624.stderr new file mode 100644 index 0000000000000..0afb05a8a5e81 --- /dev/null +++ b/src/test/ui/error-codes/E0624.stderr @@ -0,0 +1,8 @@ +error[E0624]: method `method` is private + --> $DIR/E0624.rs:21:9 + | +21 | foo.method(); //~ ERROR method `method` is private [E0624] + | ^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0637.rs b/src/test/ui/error-codes/E0637.rs similarity index 100% rename from src/test/compile-fail/E0637.rs rename to src/test/ui/error-codes/E0637.rs diff --git a/src/test/ui/error-codes/E0637.stderr b/src/test/ui/error-codes/E0637.stderr new file mode 100644 index 0000000000000..e314afd221e40 --- /dev/null +++ b/src/test/ui/error-codes/E0637.stderr @@ -0,0 +1,20 @@ +error[E0637]: invalid lifetime bound name: `'_` + --> $DIR/E0637.rs:12:16 + | +12 | struct Foo<'a: '_>(&'a u8); //~ ERROR invalid lifetime bound name: `'_` + | ^^ `'_` is a reserved lifetime name + +error[E0637]: invalid lifetime bound name: `'_` + --> $DIR/E0637.rs:13:12 + | +13 | fn foo<'a: '_>(_: &'a u8) {} //~ ERROR invalid lifetime bound name: `'_` + | ^^ `'_` is a reserved lifetime name + +error[E0637]: invalid lifetime bound name: `'_` + --> $DIR/E0637.rs:16:10 + | +16 | impl<'a: '_> Bar<'a> { //~ ERROR invalid lifetime bound name: `'_` + | ^^ `'_` is a reserved lifetime name + +error: aborting due to 3 previous errors + diff --git a/src/test/compile-fail/E0657.rs b/src/test/ui/error-codes/E0657.rs similarity index 100% rename from src/test/compile-fail/E0657.rs rename to src/test/ui/error-codes/E0657.rs diff --git a/src/test/ui/error-codes/E0657.stderr b/src/test/ui/error-codes/E0657.stderr new file mode 100644 index 0000000000000..d3b53d37a30a0 --- /dev/null +++ b/src/test/ui/error-codes/E0657.stderr @@ -0,0 +1,14 @@ +error[E0657]: `impl Trait` can only capture lifetimes bound at the fn or impl level + --> $DIR/E0657.rs:20:32 + | +20 | -> impl for<'a> Id> + | ^^ + +error[E0657]: `impl Trait` can only capture lifetimes bound at the fn or impl level + --> $DIR/E0657.rs:29:36 + | +29 | -> impl for<'a> Id> + | ^^ + +error: aborting due to 2 previous errors + diff --git a/src/test/compile-fail/E0658.rs b/src/test/ui/error-codes/E0658.rs similarity index 100% rename from src/test/compile-fail/E0658.rs rename to src/test/ui/error-codes/E0658.rs diff --git a/src/test/ui/error-codes/E0658.stderr b/src/test/ui/error-codes/E0658.stderr new file mode 100644 index 0000000000000..c18d8090233d4 --- /dev/null +++ b/src/test/ui/error-codes/E0658.stderr @@ -0,0 +1,10 @@ +error[E0658]: use of unstable library feature 'i128' (see issue #35118) + --> $DIR/E0658.rs:12:13 + | +12 | let _ = ::std::u128::MAX; //~ ERROR E0658 + | ^^^^^^^^^^^^^^^^ + | + = help: add #![feature(i128)] to the crate attributes to enable + +error: aborting due to previous error + diff --git a/src/test/compile-fail/E0659.rs b/src/test/ui/error-codes/E0659.rs similarity index 100% rename from src/test/compile-fail/E0659.rs rename to src/test/ui/error-codes/E0659.rs diff --git a/src/test/ui/error-codes/E0659.stderr b/src/test/ui/error-codes/E0659.stderr new file mode 100644 index 0000000000000..c2410e2f733bc --- /dev/null +++ b/src/test/ui/error-codes/E0659.stderr @@ -0,0 +1,20 @@ +error[E0659]: `foo` is ambiguous + --> $DIR/E0659.rs:25:5 + | +25 | collider::foo(); //~ ERROR E0659 + | ^^^^^^^^^^^^^ + | +note: `foo` could refer to the name imported here + --> $DIR/E0659.rs:20:13 + | +20 | pub use moon::*; + | ^^^^^^^ +note: `foo` could also refer to the name imported here + --> $DIR/E0659.rs:21:13 + | +21 | pub use earth::*; + | ^^^^^^^^ + = note: consider adding an explicit import of `foo` to disambiguate + +error: aborting due to previous error +