about summary refs log tree commit diff
path: root/tests/ui/methods/missing-bound-on-tuple.stderr
blob: f3e0897e5e64582297ce1be3ac09a9f3a3200715 (plain)
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
error[E0599]: the function or associated item `do_something` exists for tuple `(i32, &u32, String)`, but its trait bounds were not satisfied
  --> $DIR/missing-bound-on-tuple.rs:28:43
   |
LL |     let _failure = <(i32, &u32, String)>::do_something();
   |                                           ^^^^^^^^^^^^ function or associated item cannot be called on `(i32, &u32, String)` due to unsatisfied trait bounds
   |
note: the following trait bounds were not satisfied:
      `&(i32, &u32, String): Default`
      `&mut (i32, &u32, String): Default`
      `(i32, &u32, String): Default`
  --> $DIR/missing-bound-on-tuple.rs:5:9
   |
LL | impl<T: Default> WorksOnDefault for T {}
   |         ^^^^^^^  --------------     -
   |         |
   |         unsatisfied trait bound introduced here
note: `Default` is implemented for `(i32, u32, String)` but not for `(i32, &u32, String)`
  --> $SRC_DIR/core/src/tuple.rs:LL:COL
   = note: this error originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0599]: the function or associated item `do_be_do` exists for tuple `(i32, &u32, String)`, but its trait bounds were not satisfied
  --> $DIR/missing-bound-on-tuple.rs:32:43
   |
LL |     let _failure = <(i32, &u32, String)>::do_be_do();
   |                                           ^^^^^^^^ function or associated item cannot be called on `(i32, &u32, String)` due to unsatisfied trait bounds
   |
note: the following trait bounds were not satisfied:
      `&(i32, &u32, String): Foo`
      `&mut (i32, &u32, String): Foo`
      `(i32, &u32, String): Foo`
  --> $DIR/missing-bound-on-tuple.rs:15:9
   |
LL | impl<T: Foo> WorksOnFoo for T {}
   |         ^^^  ----------     -
   |         |
   |         unsatisfied trait bound introduced here
note: `Foo` is implemented for `(i32, u32, String)` but not for `(i32, &u32, String)`
  --> $DIR/missing-bound-on-tuple.rs:19:1
   |
LL | impl<A: Foo, B: Foo, C: Foo> Foo for (A, B, C) {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: the function or associated item `default` exists for tuple `(i32, &u32, String)`, but its trait bounds were not satisfied
  --> $DIR/missing-bound-on-tuple.rs:35:43
   |
LL |     let _failure = <(i32, &u32, String)>::default();
   |                                           ^^^^^^^ function or associated item cannot be called on `(i32, &u32, String)` due to unsatisfied trait bounds
   |
   = note: the following trait bounds were not satisfied:
           `&u32: Default`
           which is required by `(i32, &u32, String): Default`
note: `Default` is implemented for `(i32, u32, String)` but not for `(i32, &u32, String)`
  --> $SRC_DIR/core/src/tuple.rs:LL:COL
   = note: this error originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 3 previous errors

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