This prevents code like
#[cfg(unix)]
pub use self::unix::{};
from becoming
#[cfg(unix)]
which would cause the attribute to be attached to the next item.
Previously tests would not fail if they encountered an error such as
LineOverflow or TrailingWhitespace. Making the tests error out will fix
this mismatch between running rustfmt for real and running the tests.
This also modifies all tests that previously contained errors so that
they no longer contain errors (in almost all of the tests this is
accomplished by setting error_on_line_overflow = false).