error: consider implementing `TryFrom` instead --> $DIR/fallible_impl_from.rs:17:1 | 17 | / impl From for Foo { 18 | | fn from(s: String) -> Self { 19 | | Foo(s.parse().unwrap()) 20 | | } 21 | | } | |_^ | note: lint level defined here --> $DIR/fallible_impl_from.rs:13:9 | 13 | #![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:19:13 | 19 | Foo(s.parse().unwrap()) | ^^^^^^^^^^^^^^^^^^ error: consider implementing `TryFrom` instead --> $DIR/fallible_impl_from.rs:40:1 | 40 | / impl From for Invalid { 41 | | fn from(i: usize) -> Invalid { 42 | | if i != 42 { 43 | | panic!(); ... | 46 | | } 47 | | } | |_^ | = 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:43:13 | 43 | 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:49:1 | 49 | / impl From> for Invalid { 50 | | fn from(s: Option) -> Invalid { 51 | | let s = s.unwrap(); 52 | | if !s.is_empty() { ... | 58 | | } 59 | | } | |_^ | = 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:51:17 | 51 | let s = s.unwrap(); | ^^^^^^^^^^ 52 | if !s.is_empty() { 53 | panic!(42); | ^^^^^^^^^^^ 54 | } else if s.parse::().unwrap() != 42 { | ^^^^^^^^^^^^^^^^^^^^^^^^^ 55 | 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:67:1 | 67 | / impl<'a> From<&'a mut as ProjStrTrait>::ProjString> for Invalid { 68 | | fn from(s: &'a mut as ProjStrTrait>::ProjString) -> Invalid { 69 | | if s.parse::().ok().unwrap() != 42 { 70 | | panic!("{:?}", s); ... | 73 | | } 74 | | } | |_^ | = 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:69:12 | 69 | if s.parse::().ok().unwrap() != 42 { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 70 | 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