error: consider implementing `TryFrom` instead --> $DIR/fallible_impl_from.rs:7:1 | 7 | / impl From for Foo { 8 | | fn from(s: String) -> Self { 9 | | Foo(s.parse().unwrap()) 10 | | } 11 | | } | |_^ | note: lint level defined here --> $DIR/fallible_impl_from.rs:3:9 | 3 | #![deny(clippy::fallible_impl_from)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: `From` is intended for infallible conversions only. Use `TryFrom` if there's a possibility for the conversion to fail. note: potential failure(s) --> $DIR/fallible_impl_from.rs:9:13 | 9 | Foo(s.parse().unwrap()) | ^^^^^^^^^^^^^^^^^^ error: consider implementing `TryFrom` instead --> $DIR/fallible_impl_from.rs:30:1 | 30 | / impl From for Invalid { 31 | | fn from(i: usize) -> Invalid { 32 | | if i != 42 { 33 | | panic!(); ... | 36 | | } 37 | | } | |_^ | = help: `From` is intended for infallible conversions only. Use `TryFrom` if there's a possibility for the conversion to fail. note: potential failure(s) --> $DIR/fallible_impl_from.rs:33:13 | 33 | panic!(); | ^^^^^^^^^ = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) error: consider implementing `TryFrom` instead --> $DIR/fallible_impl_from.rs:39:1 | 39 | / impl From> for Invalid { 40 | | fn from(s: Option) -> Invalid { 41 | | let s = s.unwrap(); 42 | | if !s.is_empty() { ... | 48 | | } 49 | | } | |_^ | = help: `From` is intended for infallible conversions only. Use `TryFrom` if there's a possibility for the conversion to fail. note: potential failure(s) --> $DIR/fallible_impl_from.rs:41:17 | 41 | let s = s.unwrap(); | ^^^^^^^^^^ 42 | if !s.is_empty() { 43 | panic!(42); | ^^^^^^^^^^^ 44 | } else if s.parse::().unwrap() != 42 { | ^^^^^^^^^^^^^^^^^^^^^^^^^ 45 | panic!("{:?}", s); | ^^^^^^^^^^^^^^^^^^ = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) error: consider implementing `TryFrom` instead --> $DIR/fallible_impl_from.rs:57:1 | 57 | / impl<'a> From<&'a mut as ProjStrTrait>::ProjString> for Invalid { 58 | | fn from(s: &'a mut as ProjStrTrait>::ProjString) -> Invalid { 59 | | if s.parse::().ok().unwrap() != 42 { 60 | | panic!("{:?}", s); ... | 63 | | } 64 | | } | |_^ | = help: `From` is intended for infallible conversions only. Use `TryFrom` if there's a possibility for the conversion to fail. note: potential failure(s) --> $DIR/fallible_impl_from.rs:59:12 | 59 | if s.parse::().ok().unwrap() != 42 { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 60 | panic!("{:?}", s); | ^^^^^^^^^^^^^^^^^^ = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) error: aborting due to 4 previous errors