diff options
Diffstat (limited to 'src/tools/clippy/tests/ui/neg_multiply.fixed')
-rw-r--r-- | src/tools/clippy/tests/ui/neg_multiply.fixed | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/tools/clippy/tests/ui/neg_multiply.fixed b/src/tools/clippy/tests/ui/neg_multiply.fixed new file mode 100644 index 000000000..58ab9e856 --- /dev/null +++ b/src/tools/clippy/tests/ui/neg_multiply.fixed @@ -0,0 +1,48 @@ +// run-rustfix +#![warn(clippy::neg_multiply)] +#![allow(clippy::no_effect, clippy::unnecessary_operation, clippy::precedence)] +#![allow(unused)] + +use std::ops::Mul; + +struct X; + +impl Mul<isize> for X { + type Output = X; + + fn mul(self, _r: isize) -> Self { + self + } +} + +impl Mul<X> for isize { + type Output = X; + + fn mul(self, _r: X) -> X { + X + } +} + +fn main() { + let x = 0; + + -x; + + -x; + + 100 + -x; + + -(100 + x); + + -17; + + 0xcafe | -0xff00; + + -(3_usize as i32); + -(3_usize as i32); + + -1 * -1; // should be ok + + X * -1; // should be ok + -1 * X; // should also be ok +} |