1 error[E0599]: the method `test` exists for struct `Foo<Enum, CloneEnum>`, but its trait bounds were not satisfied
2 --> $DIR/derive-trait-for-method-call.rs:28:15
7 | doesn't satisfy `Enum: Clone`
8 | doesn't satisfy `Enum: Default`
11 | -------------- doesn't satisfy `CloneEnum: Default`
13 LL | struct Foo<X, Y> (X, Y);
14 | ---------------- method `test` not found for this struct
16 LL | let y = x.test();
17 | ^^^^ method cannot be called on `Foo<Enum, CloneEnum>` due to unsatisfied trait bounds
19 = note: the following trait bounds were not satisfied:
23 note: the following trait must be implemented
24 --> $SRC_DIR/core/src/default.rs:LL:COL
26 LL | pub trait Default: Sized {
27 | ^^^^^^^^^^^^^^^^^^^^^^^^
28 help: consider annotating `Enum` with `#[derive(Clone)]`
33 error[E0599]: the method `test` exists for struct `Foo<Struct, CloneStruct>`, but its trait bounds were not satisfied
34 --> $DIR/derive-trait-for-method-call.rs:34:15
39 | doesn't satisfy `Struct: Clone`
40 | doesn't satisfy `Struct: Default`
42 LL | struct CloneStruct {
43 | ------------------ doesn't satisfy `CloneStruct: Default`
45 LL | struct Foo<X, Y> (X, Y);
46 | ---------------- method `test` not found for this struct
48 LL | let y = x.test();
49 | ^^^^ method cannot be called on `Foo<Struct, CloneStruct>` due to unsatisfied trait bounds
51 = note: the following trait bounds were not satisfied:
54 `CloneStruct: Default`
55 help: consider annotating `CloneStruct` with `#[derive(Default)]`
57 LL | #[derive(Default)]
59 help: consider annotating `Struct` with `#[derive(Clone, Default)]`
61 LL | #[derive(Clone, Default)]
64 error[E0599]: the method `test` exists for struct `Foo<Vec<Enum>, Instant>`, but its trait bounds were not satisfied
65 --> $DIR/derive-trait-for-method-call.rs:40:15
67 LL | struct Foo<X, Y> (X, Y);
68 | ---------------- method `test` not found for this struct
70 LL | let y = x.test();
71 | ^^^^ method cannot be called on `Foo<Vec<Enum>, Instant>` due to unsatisfied trait bounds
73 ::: $SRC_DIR/std/src/time.rs:LL:COL
75 LL | pub struct Instant(time::Instant);
76 | ------------------ doesn't satisfy `Instant: Default`
78 ::: $SRC_DIR/alloc/src/vec/mod.rs:LL:COL
80 LL | pub struct Vec<T, #[unstable(feature = "allocator_api", issue = "32838")] A: Allocator = Global> {
81 | ------------------------------------------------------------------------------------------------ doesn't satisfy `Vec<Enum>: Clone`
83 = note: the following trait bounds were not satisfied:
87 error: aborting due to 3 previous errors
89 For more information about this error, try `rustc --explain E0599`.