In old versions of rustc (1.15 through 1.29) it would cause a warning if
this #[macro_use] was not present.
warning: proc macro crates and `#[no_link]` crates have no effect without `#[macro_use]`
--> serde/src/lib.rs:340:1
|
340 | extern crate serde_derive;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
These days serde_derive requires a newer compiler than that, so the
bogus warning would never occur.
error: try not to call a closure in the expression where it is declared
--> serde/src/de/impls.rs:1590:76
|
1590 | <(_, u16)>::deserialize(deserializer).map(|(ip, port)| $new(ip, port))
| ^^^^^^^^^^^^^^
...
1620 | / parse_socket_impl!("IPv6 socket address" net::SocketAddrV6, |ip, port| net::SocketAddrV6::new(
1621 | | ip, port, 0, 0
1622 | | ));
| |__- in this macro invocation
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure_call
= note: `-D clippy::redundant-closure-call` implied by `-D clippy::all`
= note: this error originates in the macro `parse_socket_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
error: it is more concise to loop over references to containers instead of using explicit iteration methods
--> serde/src/private/de.rs:2761:22
|
2761 | for entry in self.0.iter_mut() {
| ^^^^^^^^^^^^^^^^^ help: to write this more concisely, try: `&mut *self.0`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_iter_loop
= note: `-D clippy::explicit-iter-loop` implied by `-D clippy::pedantic`
error: it is more concise to loop over references to containers instead of using explicit iteration methods
--> serde_derive/src/internals/check.rs:202:20
|
202 | for variant in variants.iter() {
| ^^^^^^^^^^^^^^^ help: to write this more concisely, try: `variants`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_iter_loop
= note: `-D clippy::explicit-iter-loop` implied by `-D clippy::pedantic`
error: it is more concise to loop over references to containers instead of using explicit iteration methods
--> serde_derive/src/bound.rs:262:28
|
262 | for variant in variants.iter() {
| ^^^^^^^^^^^^^^^ help: to write this more concisely, try: `variants`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_iter_loop
warning: this loop could be written as a `for` loop
--> serde/src/private/de.rs:2905:9
|
2905 | while let Some(item) = self.iter.next() {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `for item in self.iter.by_ref()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator
= note: `#[warn(clippy::while_let_on_iterator)]` on by default