Skip to content
Permalink
Browse files

Clean up E0128 explanation

  • Loading branch information
GuillaumeGomez committed Dec 22, 2019
1 parent 4ee18c9 commit 1474d2a41a32f7f969c7d924ea917a1390ebe1c6
Showing with 5 additions and 4 deletions.
  1. +5 −4 src/librustc_error_codes/error_codes/E0128.md
@@ -1,4 +1,5 @@
Type parameter defaults can only use parameters that occur before them.
A type parameter with default value is using forward declared identifier.

Erroneous code example:

```compile_fail,E0128
@@ -7,11 +8,11 @@ struct Foo<T = U, U = ()> {
field2: U,
}
// error: type parameters with a default cannot use forward declared
// identifiers
// identifiers
```

Since type parameters are evaluated in-order, you may be able to fix this issue
by doing:
Type parameter defaults can only use parameters that occur before them. Since
type parameters are evaluated in-order, this issue could be fixed by doing:

```
struct Foo<U = (), T = U> {

0 comments on commit 1474d2a

Please sign in to comment.
You can’t perform that action at this time.