From 38ea23558eca629d668208e368dfa711b8229192 Mon Sep 17 00:00:00 2001 From: aticu <15schnic@gmail.com> Date: Mon, 13 Jun 2022 09:32:54 +0200 Subject: Don't use main; improve example --- compiler/rustc_error_codes/src/error_codes/E0283.md | 14 +++++--------- compiler/rustc_error_codes/src/error_codes/E0790.md | 16 ++++++---------- 2 files changed, 11 insertions(+), 19 deletions(-) (limited to 'compiler/rustc_error_codes/src') diff --git a/compiler/rustc_error_codes/src/error_codes/E0283.md b/compiler/rustc_error_codes/src/error_codes/E0283.md index e5a3179aabf..79d2c8204f9 100644 --- a/compiler/rustc_error_codes/src/error_codes/E0283.md +++ b/compiler/rustc_error_codes/src/error_codes/E0283.md @@ -9,15 +9,13 @@ impl Into for Foo { fn into(self) -> u32 { 1 } } -fn main() { - let foo = Foo; - let bar: u32 = foo.into() * 1u32; -} +let foo = Foo; +let bar: u32 = foo.into() * 1u32; ``` This error can be solved by adding type annotations that provide the missing information to the compiler. In this case, the solution is to specify the -fully-qualified method: +trait's type parameter: ``` struct Foo; @@ -26,8 +24,6 @@ impl Into for Foo { fn into(self) -> u32 { 1 } } -fn main() { - let foo = Foo; - let bar: u32 = >::into(foo) * 1u32; -} +let foo = Foo; +let bar: u32 = Into::::into(foo) * 1u32; ``` diff --git a/compiler/rustc_error_codes/src/error_codes/E0790.md b/compiler/rustc_error_codes/src/error_codes/E0790.md index 93d9636626d..2aee9dfbdbd 100644 --- a/compiler/rustc_error_codes/src/error_codes/E0790.md +++ b/compiler/rustc_error_codes/src/error_codes/E0790.md @@ -20,11 +20,9 @@ impl Generator for AnotherImpl { fn create() -> u32 { 2 } } -fn main() { - let cont: u32 = Generator::create(); - // error, impossible to choose one of Generator trait implementation - // Should it be Impl or AnotherImpl, maybe something else? -} +let cont: u32 = Generator::create(); +// error, impossible to choose one of Generator trait implementation +// Should it be Impl or AnotherImpl, maybe something else? ``` This error can be solved by adding type annotations that provide the missing @@ -42,10 +40,8 @@ impl Generator for AnotherImpl { fn create() -> u32 { 2 } } -fn main() { - let gen1 = AnotherImpl::create(); +let gen1 = AnotherImpl::create(); - // if there are multiple methods with same name (different traits) - let gen2 = ::create(); -} +// if there are multiple methods with same name (different traits) +let gen2 = ::create(); ``` -- cgit 1.4.1-3-g733a5