]> git.lizzy.rs Git - rust.git/blobdiff - tests/ui/item_after_statement.rs
Ignore associated items in trait *implementations* when considering type complexity
[rust.git] / tests / ui / item_after_statement.rs
index e3e4a4c75783fad34799705c53c5631b6a0b73a8..d439ca1e4e1a171ca3ef20dc99f2311b968b5573 100644 (file)
@@ -1,20 +1,24 @@
-#![feature(plugin)]
-#![plugin(clippy)]
-#![warn(items_after_statements)]
+#![warn(clippy::items_after_statements)]
 
 fn ok() {
-    fn foo() { println!("foo"); }
+    fn foo() {
+        println!("foo");
+    }
     foo();
 }
 
 fn last() {
     foo();
-    fn foo() { println!("foo"); }
+    fn foo() {
+        println!("foo");
+    }
 }
 
 fn main() {
     foo();
-    fn foo() { println!("foo"); }
+    fn foo() {
+        println!("foo");
+    }
     foo();
 }
 
@@ -23,8 +27,26 @@ fn mac() {
     println!("{}", a);
     // do not lint this, because it needs to be after `a`
     macro_rules! b {
-        () => {{ a = 6 }}
+        () => {{
+            a = 6;
+            fn say_something() {
+                println!("something");
+            }
+        }};
     }
     b!();
     println!("{}", a);
 }
+
+fn semicolon() {
+    struct S {
+        a: u32,
+    };
+    impl S {
+        fn new(a: u32) -> Self {
+            Self { a }
+        }
+    }
+
+    let _ = S::new(3);
+}