Repository: rust
Issue: diagnostics two unused_import warnings instead of one
Labels: A-diagnostics,T-compiler,C-bug,D-verbose

<!--
Thank you for filing a bug report! 🐛 Please provide a short summary of the bug,
along with any information you feel relevant to replicating the bug.
-->

I tried this code:

you need `iced = "0.1.1"` as dep for this to build
```rust
use iced::{
    button, executor, scrollable, slider, text_input, Align, Application, Button, Checkbox, Column,
    Command, Container, Element, Length, ProgressBar, Radio, Row, Sandbox, Scrollable, Settings,
    Slider, Space, Text, TextInput,
};

fn main() {
    println!("Hello, world!");

    Rustasks::run(Settings::default())
}

#[derive(Default)]
struct Rustasks {
    //   text: text_input::State,
    text: String,
}

impl Application for Rustasks {
    type Executor = executor::Null;
    type Message = ();
    type Flags = ();

    fn new(_flags: ()) -> (Rustasks, Command<Self::Message>) {
        let text = String::from("ohai! :3");
        let app = Rustasks { text };
        (app, Command::none())
    }

    fn title(&self) -> String {
        "Task app in rust".into()
    }

    fn update(&mut self, _message: Self::Message) -> Command<Self::Message> {
        Command::none()
    }

    fn view(&mut self) -> Element<Self::Message> {
        Text::new("Hello, world!").into()
    }
}

```

For some reason, there were 2 unused import warnings while one would have been sufficient.
I wonder why rustc does not condense the two into one.
````
warning: unused imports: `Align`, `Button`, `Checkbox`, `Column`, `Container`, `Length`, `ProgressBar`, `Radio`, `Row`, `Scrollable`, `Slider`, `Space`, `TextInput`, `button`, `scrollable`, `slider`, `text_input`
 --> src/main.rs:2:5
  |
2 |     button, executor, scrollable, slider, text_input, Align, Application, Button, Checkbox, Column,
  |     ^^^^^^            ^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^  ^^^^^               ^^^^^^  ^^^^^^^^  ^^^^^^
3 |     Command, Container, Element, Length, ProgressBar, Radio, Row, Sandbox, Scrollable, Settings,
  |              ^^^^^^^^^           ^^^^^^  ^^^^^^^^^^^  ^^^^^  ^^^           ^^^^^^^^^^
4 |     Slider, Space, Text, TextInput,
  |     ^^^^^^  ^^^^^        ^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

warning: unused import: `Sandbox`
 --> src/main.rs:3:67
  |
3 |     Command, Container, Element, Length, ProgressBar, Radio, Row, Sandbox, Scrollable, Settings,
  |                                                                   ^^^^^^^

````

### Meta
<!--
If you're using the stable version of the compiler, you should also check if the
bug also exists in the beta or nightly versions.
-->

`rustc --version --verbose`:
```
rustc 1.47.0-nightly (8e21bd063 2020-08-14)
binary: rustc
commit-hash: 8e21bd0633b8d970646ee6eb706c9e8acfad19af
commit-date: 2020-08-14
host: x86_64-unknown-linux-gnu
release: 1.47.0-nightly
LLVM version: 10.0
```

<!--
Include a backtrace in the code block by setting `RUST_BACKTRACE=1` in your
environment. E.g. `RUST_BACKTRACE=1 cargo build`.
-->
<details><summary>Backtrace</summary>
<p>

```
<backtrace>
```

</p>
</details>