diff options
| author | Yuki Okushi <huyuumi.dev@gmail.com> | 2020-08-11 16:23:59 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-11 16:23:59 +0900 |
| commit | 532002853d88a7c9f875dc8c401b8b7e019fe10b (patch) | |
| tree | 5958094674490e4dfd58b77589abc4186f385620 | |
| parent | ca462d36ff46fd154da7226926148797ed76dc3d (diff) | |
| parent | a7f61bf3bb416f03da478bbe2421946ef9b80379 (diff) | |
| download | rust-532002853d88a7c9f875dc8c401b8b7e019fe10b.tar.gz rust-532002853d88a7c9f875dc8c401b8b7e019fe10b.zip | |
Rollup merge of #75360 - pickfire:patch-4, r=GuillaumeGomez
Add sample fix for E0749 Even though the description is clear but the solution may not be as straightforward. Adding a suggested fix from documentation side. r? @GuillaumeGomez However, this suggestion should be shown in rustc itself for easy fix, the documentation should also reflect on the changes in rustc. Currently, ``` error[E0749]: negative impls cannot have any items --> test.rs:6:5 | 6 | type Foo = i32; // error! | ^^^^^^^^^^^^^^^ error: aborting due to previous error For more information about this error, try `rustc --explain E0749`. ``` rustc should tell the user to remove it.
| -rw-r--r-- | src/librustc_error_codes/error_codes/E0749.md | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/librustc_error_codes/error_codes/E0749.md b/src/librustc_error_codes/error_codes/E0749.md index 7a1a745b53c..dfe90ae89e4 100644 --- a/src/librustc_error_codes/error_codes/E0749.md +++ b/src/librustc_error_codes/error_codes/E0749.md @@ -11,9 +11,19 @@ trait MyTrait { impl !MyTrait for u32 { type Foo = i32; // error! } -# fn main() {} ``` Negative impls are not allowed to have any items. Negative impls declare that a trait is **not** implemented (and never will be) and hence there is no need to specify the values for trait methods or other items. + +One way to fix this is to remove the items in negative impls: + +``` +# #![feature(negative_impls)] +trait MyTrait { + type Foo; +} + +impl !MyTrait for u32 {} +``` |
