### What it does
Checks for empty lines after outer attributes

### Why is this bad?
Most likely the attribute was meant to be an inner attribute using a '!'.
If it was meant to be an outer attribute, then the following item
should not be separated by empty lines.

### Known problems
Can cause false positives.

From the clippy side it's difficult to detect empty lines between an attributes and the
following item because empty lines and comments are not part of the AST. The parsing
currently works for basic cases but is not perfect.

### Example
```
#[allow(dead_code)]

fn not_quite_good_code() { }
```

Use instead:
```
// Good (as inner attribute)
#![allow(dead_code)]

fn this_is_fine() { }

// or

// Good (as outer attribute)
#[allow(dead_code)]
fn this_is_fine_too() { }
```