File: auto-trait-selection-freeze.old.stderr

package info (click to toggle)
rustc 1.85.0%2Bdfsg3-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental, sid, trixie
  • size: 893,396 kB
  • sloc: xml: 158,127; python: 35,830; javascript: 19,497; cpp: 19,002; sh: 17,245; ansic: 13,127; asm: 4,376; makefile: 1,051; perl: 29; lisp: 29; ruby: 19; sql: 11
file content (26 lines) | stat: -rw-r--r-- 1,016 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
error[E0283]: type annotations needed
  --> $DIR/auto-trait-selection-freeze.rs:19:16
   |
LL |     if false { is_trait(foo()) } else { Default::default() }
   |                ^^^^^^^^ cannot infer type of the type parameter `U` declared on the function `is_trait`
   |
note: multiple `impl`s satisfying `impl Sized: Trait<_>` found
  --> $DIR/auto-trait-selection-freeze.rs:16:1
   |
LL | impl<T: Freeze> Trait<u32> for T {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
LL | impl<T> Trait<i32> for T {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^
note: required by a bound in `is_trait`
  --> $DIR/auto-trait-selection-freeze.rs:11:16
   |
LL | fn is_trait<T: Trait<U>, U: Default>(_: T) -> U {
   |                ^^^^^^^^ required by this bound in `is_trait`
help: consider specifying the generic arguments
   |
LL |     if false { is_trait::<_, U>(foo()) } else { Default::default() }
   |                        ++++++++

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0283`.