Repository: rust
Issue: Verbose, confusing error message, with a lot of extension traits in scope with the same method name
Labels: A-diagnostics,A-trait-system,T-compiler,D-confusing,D-verbose

### Code

```Rust
`cargo build` with

https://github.com/Philipp-M/xilem_web-error-message-repro
```


### Current output

With current rustc:
```Shell
error[E0599]: the method `fill` exists for struct `Line<_, _, ()>`, but its trait bounds were not satisfied
 --> src/main.rs:5:23
  |
5 |         svg::line(()).fill(Color::LIGHT_GRAY)
  |                       ^^^^ method cannot be called on `Line<_, _, ()>` due to unsatisfied trait bounds
  |
  = note: the following trait bounds were not satisfied:
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGraphicsElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: SvgGraphicsElement<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`
          `<&xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`
          `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGraphicsElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGeometryElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: SvgGraphicsElement<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`
          `<&mut xilem_web::elements::svg::Line<_, _, ()> as View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>>::Element = Pod<_, _>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`
          `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
          which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`

warning: unused import: `interfaces`
 --> src/main.rs:1:47
  |
1 | use xilem_web::{document_body, elements::svg, interfaces::*, svg::peniko::Color, App};
  |                                               ^^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

For more information about this error, try `rustc --explain E0599`.
warning: `xilem_web-error-message-repro` (bin "xilem_web-error-message-repro") generated 1 warning
error: could not compile `xilem_web-error-message-repro` (bin "xilem_web-error-message-repro") due to 1 previous error; 1 warning emitted
```



With `RUSTFLAGS="-Znext-solver"` this is a little bit better, but still confusing:

```Shell
error[E0599]: the method `fill` exists for struct `Line<_, _, ()>`, but its trait bounds were not satisfied
   --> src/main.rs:5:23
    |
5   |           svg::line(()).fill(Color::LIGHT_GRAY)
    |                         ^^^^ method cannot be called on `Line<_, _, ()>` due to unsatisfied trait bounds
    |
   ::: /home/philm/.cargo/registry/src/index.crates.io-6f17d22bba15001f/web-sys-0.3.69/src/features/gen_SvgLineElement.rs:5:1
    |
5   |   #[wasm_bindgen]
    |   --------------- doesn't satisfy 8 bounds
    |
   ::: /home/philm/.cargo/git/checkouts/xilem-031d790027f85a11/101fa9b/xilem_web/src/elements.rs:649:5
    |
649 | /     define_elements!(
650 | |         SVG_NS,
651 | |         (Svg, svg, SvgsvgElement),
652 | |         (A, a, SvgaElement),
...   |
815 | |         (SvgView, view, SvgViewElement),
816 | |     );
    | |_____- doesn't satisfy 8 bounds
    |
    = note: the following trait bounds were not satisfied:
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvgCircleElement::SvgCircleElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvgEllipseElement::SvgEllipseElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvggElement::SvggElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvgPathElement::SvgPathElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvgPolygonElement::SvgPolygonElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvgPolylineElement::SvgPolylineElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvgRectElement::SvgRectElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
            `web_sys::features::gen_SvgLineElement::SvgLineElement: AsRef<web_sys::features::gen_SvgTextContentElement::SvgTextContentElement>`
            which is required by `xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
            `&xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgCircleElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgEllipseElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvggElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPathElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolygonElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgPolylineElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgRectElement<_, _>`
            `&mut xilem_web::elements::svg::Line<_, _, ()>: View<_, _, ViewCtx, Box<(dyn xilem_web::Message + 'static)>>`
            which is required by `&mut xilem_web::elements::svg::Line<_, _, ()>: xilem_web::interfaces::SvgTextContentElement<_, _>`

warning: unused import: `interfaces`
 --> src/main.rs:1:47
  |
1 | use xilem_web::{document_body, elements::svg, interfaces::*, svg::peniko::Color, App};
  |                                               ^^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

For more information about this error, try `rustc --explain E0599`.
warning: `xilem_web-error-message-repro` (bin "xilem_web-error-message-repro") generated 1 warning
error: could not compile `xilem_web-error-message-repro` (bin "xilem_web-error-message-repro") due to 1 previous error; 1 warning emitted
```


### Desired output

I'm not sure to be honest, but this error message seems to be worse than not having it at all.


### Rationale and extra context

In [xilem_web](https://github.com/linebender/xilem/tree/main/xilem_web) DOM interfaces are emulated via extension traits heavily relying on super trait-bounds with associated type bounds, something like this:
```rust
pub trait SvgPathElement<State, Action = ()>:
    SvgGeometryElement<State, Action, DomNode: AsRef<web_sys::SvgPathElement>>
{
    fn fill(self, brush: impl Into<peniko::Brush>) -> crate::svg::Fill<Self, State, Action> {
        crate::svg::fill(self, brush)
    }
}
```
The provided repro-example is a special cased `fill` method (i.e. exists on multiple off those traits (8 if I counted correctly)).

This error message is only raised, when having all those traits in scope (i.e. `use xilem_web::interfaces::*`).
It's practically not possible that these bounds can be fulfilled with the `line` element, as `DomNode: AsRef<_>` can not be fulfilled with the associated type `DomNode = web_sys::SvgLineElement` for any of those with the `fill` method.

Originally this error message was raised (due to a now fixed bug) in https://github.com/linebender/xilem/issues/446 and posted on [zulip](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/.E2.9C.94.20Error.20message.20with.20Multiple.20Traits.20with.20same.20method.20name/near/455346585)

### Other cases

_No response_

### Rust Version

```Shell
rustc 1.82.0-nightly (8e86c9567 2024-08-01)
binary: rustc
commit-hash: 8e86c9567154dc5a9ada15ab196d23eae2bd7d89
commit-date: 2024-08-01
host: x86_64-unknown-linux-gnu
release: 1.82.0-nightly
LLVM version: 19.1.0
```


### Anything else?

_No response_