]> git.lizzy.rs Git - rust.git/blobdiff - tests/ui/absurd-extreme-comparisons.rs
Auto merge of #3603 - xfix:random-state-lint, r=phansch
[rust.git] / tests / ui / absurd-extreme-comparisons.rs
index 495dd27bb2bcfd60ab4273e8942fc25523308e53..666c4325706351b9f488b02234a252e3728b4bbc 100644 (file)
@@ -1,74 +1,46 @@
-#![feature(plugin)]
-#![plugin(clippy)]
-
-#![deny(absurd_extreme_comparisons)]
-#![allow(unused, eq_op, no_effect, unnecessary_operation)]
-
+// Copyright 2014-2018 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+#![warn(clippy::absurd_extreme_comparisons)]
+#![allow(
+    unused,
+    clippy::eq_op,
+    clippy::no_effect,
+    clippy::unnecessary_operation,
+    clippy::needless_pass_by_value
+)]
+
+#[rustfmt::skip]
 fn main() {
     const Z: u32 = 0;
-
     let u: u32 = 42;
-
     u <= 0;
-
-
     u <= Z;
-
-
     u < Z;
-
-
     Z >= u;
-
-
     Z > u;
-
-
     u > std::u32::MAX;
-
-
     u >= std::u32::MAX;
-
-
     std::u32::MAX < u;
-
-
     std::u32::MAX <= u;
-
-
-
     1-1 > u;
-
-
     u >= !0;
-
-
     u <= 12 - 2*6;
-
-
-
     let i: i8 = 0;
     i < -127 - 1;
-
-
     std::i8::MAX >= i;
-
-
     3-7 < std::i32::MIN;
-
-
-
     let b = false;
     b >= true;
-
-
     false > b;
-
-
-
     u > 0; // ok
-
-    // this is handled by unit_cmp
+    // this is handled by clippy::unit_cmp
     () < {};
 }
 
@@ -79,15 +51,20 @@ fn main() {
 
 impl PartialEq<u32> for U {
     fn eq(&self, other: &u32) -> bool {
-        self.eq(&U(*other as u64))
+        self.eq(&U(u64::from(*other)))
     }
 }
 impl PartialOrd<u32> for U {
     fn partial_cmp(&self, other: &u32) -> Option<Ordering> {
-        self.partial_cmp(&U(*other as u64))
+        self.partial_cmp(&U(u64::from(*other)))
     }
 }
 
 pub fn foo(val: U) -> bool {
     val > std::u32::MAX
 }
+
+pub fn bar(len: u64) -> bool {
+    // This is OK as we are casting from target sized to fixed size
+    len >= std::usize::MAX as u64
+}