]> git.lizzy.rs Git - rust.git/blobdiff - tests/mut_mut_macro.rs
mut_mut_macro is missing plugin(clippy)
[rust.git] / tests / mut_mut_macro.rs
index 67d73ce0ac40174388be105185d703ab2953fcb6..a6473b0f909e1261658f1f7a9ec658a666f7126b 100644 (file)
@@ -1,32 +1,31 @@
 #![feature(plugin)]
-#![plugin(clippy, regex_macros)]
+#![plugin(clippy)]
+#![deny(mut_mut, zero_ptr, cmp_nan)]
+#![allow(dead_code)]
 
 #[macro_use]
 extern crate lazy_static;
-extern crate regex;
 
 use std::collections::HashMap;
 
-#[test]
-#[deny(mut_mut)]
-#[allow(regex_macro)]
-fn test_regex() {
-    let pattern = regex!(r"^(?P<level>[#]+)\s(?P<title>.+)$");
-    assert!(pattern.is_match("# headline"));
-}
+// ensure that we don't suggest `is_nan` and `is_null` inside constants
+// FIXME: once const fn is stable, suggest these functions again in constants
+const BAA: *const i32 = 0 as *const i32;
+static mut BAR: *const i32 = BAA;
+static mut FOO: *const i32 = 0 as *const i32;
+static mut BUH: bool = 42.0 < std::f32::NAN;
 
-#[test]
-#[deny(mut_mut)]
 #[allow(unused_variables, unused_mut)]
-fn test_lazy_static() {
+fn main() {
     lazy_static! {
         static ref MUT_MAP : HashMap<usize, &'static str> = {
             let mut m = HashMap::new();
-            let mut zero = &mut &mut "zero";
             m.insert(0, "zero");
             m
         };
         static ref MUT_COUNT : usize = MUT_MAP.len();
     }
-    assert!(*MUT_COUNT == 1);
+    assert_eq!(*MUT_COUNT, 1);
+    // FIXME: don't lint in array length, requires `check_body`
+    //let _ = [""; (42.0 < std::f32::NAN) as usize];
 }