diff options
Diffstat (limited to 'src/tools/clippy/tests/ui/from_over_into_unfixable.rs')
-rw-r--r-- | src/tools/clippy/tests/ui/from_over_into_unfixable.rs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/tools/clippy/tests/ui/from_over_into_unfixable.rs b/src/tools/clippy/tests/ui/from_over_into_unfixable.rs new file mode 100644 index 000000000..3b280b748 --- /dev/null +++ b/src/tools/clippy/tests/ui/from_over_into_unfixable.rs @@ -0,0 +1,35 @@ +#![warn(clippy::from_over_into)] + +struct InMacro(String); + +macro_rules! in_macro { + ($e:ident) => { + $e + }; +} + +impl Into<InMacro> for String { + fn into(self) -> InMacro { + InMacro(in_macro!(self)) + } +} + +struct WeirdUpperSelf; + +impl Into<WeirdUpperSelf> for &'static [u8] { + fn into(self) -> WeirdUpperSelf { + let _ = Self::default(); + WeirdUpperSelf + } +} + +struct ContainsVal; + +impl Into<u8> for ContainsVal { + fn into(self) -> u8 { + let val = 1; + val + 1 + } +} + +fn main() {} |