Skip to content

Commit

Permalink
review
Browse files Browse the repository at this point in the history
  • Loading branch information
lcnr committed Sep 9, 2022
1 parent 4c75b32 commit 5db6907
Show file tree
Hide file tree
Showing 21 changed files with 42 additions and 42 deletions.
2 changes: 1 addition & 1 deletion compiler/rustc_ast/src/ast.rs
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,7 @@ impl fmt::Display for ParamKindOrd {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
ParamKindOrd::Lifetime => "lifetime".fmt(f),
ParamKindOrd::TypeOrConst => "type or const".fmt(f),
ParamKindOrd::TypeOrConst => "type and const".fmt(f),
}
}
}
Expand Down
4 changes: 2 additions & 2 deletions src/test/ui/const-generics/argument_order.stderr
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/argument_order.rs:6:32
|
LL | struct AlsoBad<const N: usize, 'a, T, 'b, const M: usize, U> {
Expand All @@ -11,7 +11,7 @@ LL | let _: AlsoBad<7, 'static, u32, 'static, 17, u16>;
| ^^^^^^^
|
= note: lifetime arguments must be provided before type arguments
= help: reorder the arguments: lifetimes, then type or consts: `<'a, 'b, N, T, M, U>`
= help: reorder the arguments: lifetimes, then type and consts: `<'a, 'b, N, T, M, U>`

error: aborting due to 2 previous errors

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
fn bar<const X: u8, 'a>(_: &'a ()) {
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
}

fn foo<const X: u8, T>(_: &T) {}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/const-param-before-other-params.rs:1:21
|
LL | fn bar<const X: u8, 'a>(_: &'a ()) {
Expand Down
4 changes: 2 additions & 2 deletions src/test/ui/const-generics/defaults/intermixed-lifetime.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
// Checks that lifetimes cannot be interspersed between consts and types.

struct Foo<const N: usize, 'a, T = u32>(&'a (), T);
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters

struct Bar<const N: usize, T = u32, 'a>(&'a (), T);
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters

fn main() {}
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/intermixed-lifetime.rs:3:28
|
LL | struct Foo<const N: usize, 'a, T = u32>(&'a (), T);
| -----------------^^---------- help: reorder the parameters: lifetimes, then consts and types: `<'a, const N: usize, T = u32>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/intermixed-lifetime.rs:6:37
|
LL | struct Bar<const N: usize, T = u32, 'a>(&'a (), T);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
struct Foo<const M: usize = 10, 'a>(&'a u32);
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters

fn main() {}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/param-order-err-pretty-prints-default.rs:1:33
|
LL | struct Foo<const M: usize = 10, 'a>(&'a u32);
Expand Down
2 changes: 1 addition & 1 deletion src/test/ui/generics/issue-59508-1.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ struct A;

impl A {
pub fn do_things<T, 'a, 'b: 'a>() {
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
println!("panic");
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/test/ui/generics/issue-59508-1.stderr
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-59508-1.rs:10:25
|
LL | pub fn do_things<T, 'a, 'b: 'a>() {
Expand Down
2 changes: 1 addition & 1 deletion src/test/ui/generics/issue-59508.fixed
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ struct A;

impl A {
pub fn do_things<'a, 'b: 'a, T>() {
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
println!("panic");
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/test/ui/generics/issue-59508.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ struct A;

impl A {
pub fn do_things<T, 'a, 'b: 'a>() {
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
println!("panic");
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/test/ui/generics/issue-59508.stderr
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-59508.rs:10:25
|
LL | pub fn do_things<T, 'a, 'b: 'a>() {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#![crate_type = "lib"]

struct S<T = (), 'a>(&'a T);
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-80512-param-reordering-with-defaults.rs:3:18
|
LL | struct S<T = (), 'a>(&'a T);
Expand Down
8 changes: 4 additions & 4 deletions src/test/ui/generics/lifetime-before-type-params.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
#![allow(unused)]
fn first<T, 'a, 'b>() {}
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
fn second<'a, T, 'b>() {}
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
fn third<T, U, 'a>() {}
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
fn fourth<'a, T, 'b, U, 'c, V>() {}
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters

fn main() {}
8 changes: 4 additions & 4 deletions src/test/ui/generics/lifetime-before-type-params.stderr
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/lifetime-before-type-params.rs:2:13
|
LL | fn first<T, 'a, 'b>() {}
| ----^^--^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, 'b, T>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/lifetime-before-type-params.rs:4:18
|
LL | fn second<'a, T, 'b>() {}
| --------^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, 'b, T>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/lifetime-before-type-params.rs:6:16
|
LL | fn third<T, U, 'a>() {}
| -------^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, T, U>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/lifetime-before-type-params.rs:8:18
|
LL | fn fourth<'a, T, 'b, U, 'c, V>() {}
Expand Down
10 changes: 5 additions & 5 deletions src/test/ui/parser/issues/issue-14303.rs
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
enum Enum<'a, T, 'b> {
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
A(&'a &'b T)
}

struct Struct<'a, T, 'b> {
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters
x: &'a &'b T
}

trait Trait<'a, T, 'b> {}
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters

fn foo<'a, T, 'b>(x: &'a T) {}
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters

struct Y<T>(T);
impl<'a, T, 'b> Y<T> {}
//~^ ERROR lifetime parameters must be declared prior to type or const parameters
//~^ ERROR lifetime parameters must be declared prior to type and const parameters

mod bar {
pub struct X<'a, 'b, 'c, T> {
Expand Down
10 changes: 5 additions & 5 deletions src/test/ui/parser/issues/issue-14303.stderr
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-14303.rs:1:18
|
LL | enum Enum<'a, T, 'b> {
| --------^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, 'b, T>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-14303.rs:6:22
|
LL | struct Struct<'a, T, 'b> {
| --------^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, 'b, T>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-14303.rs:11:20
|
LL | trait Trait<'a, T, 'b> {}
| --------^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, 'b, T>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-14303.rs:14:15
|
LL | fn foo<'a, T, 'b>(x: &'a T) {}
| --------^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, 'b, T>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/issue-14303.rs:18:13
|
LL | impl<'a, T, 'b> Y<T> {}
Expand Down
8 changes: 4 additions & 4 deletions src/test/ui/suggestions/suggest-move-lifetimes.stderr
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/suggest-move-lifetimes.rs:1:13
|
LL | struct A<T, 'a> {
| ----^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, T>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/suggest-move-lifetimes.rs:5:13
|
LL | struct B<T, 'a, U> {
| ----^^---- help: reorder the parameters: lifetimes, then consts and types: `<'a, T, U>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/suggest-move-lifetimes.rs:10:16
|
LL | struct C<T, U, 'a> {
| -------^^- help: reorder the parameters: lifetimes, then consts and types: `<'a, T, U>`

error: lifetime parameters must be declared prior to type or const parameters
error: lifetime parameters must be declared prior to type and const parameters
--> $DIR/suggest-move-lifetimes.rs:15:16
|
LL | struct D<T, U, 'a, 'b, V, 'c> {
Expand Down
4 changes: 2 additions & 2 deletions src/test/ui/suggestions/suggest-move-types.stderr
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ LL | struct Cl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<T, 'a, A=(), B=(), C=()
| ^^
|
= note: lifetime arguments must be provided before type arguments
= help: reorder the arguments: lifetimes, then type or consts: `<'a, 'b, 'c, T, U, V>`
= help: reorder the arguments: lifetimes, then type and consts: `<'a, 'b, 'c, T, U, V>`

error[E0747]: lifetime provided when a type was expected
--> $DIR/suggest-move-types.rs:82:56
Expand All @@ -130,7 +130,7 @@ LL | struct Dl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<T, 'a, A=(), B=(), U, '
| ^^
|
= note: lifetime arguments must be provided before type arguments
= help: reorder the arguments: lifetimes, then type or consts: `<'a, 'b, 'c, T, U, V>`
= help: reorder the arguments: lifetimes, then type and consts: `<'a, 'b, 'c, T, U, V>`

error: aborting due to 12 previous errors

Expand Down

0 comments on commit 5db6907

Please sign in to comment.