Auto merge of #122317 - compiler-errors:fulfill-method-probe, r=lcnr · rust-lang/rust@cd90d5c (original) (raw)
`` @@ -2,15 +2,13 @@ error[E0599]: the method insert
exists for struct HashSet<Value>
, but its tr
``
2
2
` --> $DIR/issue-91550.rs:8:8
`
3
3
` |
`
4
4
`LL | struct Value(u32);
`
5
``
`` -
| ------------ doesn't satisfy Value: Eq
, Value: Hash
or Value: PartialEq
``
``
5
`` +
| ------------ doesn't satisfy Value: Eq
or Value: Hash
``
6
6
`...
`
7
7
`LL | hs.insert(Value(0));
`
8
8
` | ^^^^^^
`
9
9
` |
`
10
10
` = note: the following trait bounds were not satisfied:
`
11
11
`` Value: Eq
``
12
``
`` -
Value: PartialEq
``
13
``
`` -
which is required by Value: Eq
``
14
12
`` Value: Hash
``
15
13
`` help: consider annotating Value
with #[derive(Eq, Hash, PartialEq)]
``
16
14
` |
`
`` @@ -22,7 +20,7 @@ error[E0599]: the method use_eq
exists for struct Object<NoDerives>
, but its
``
22
20
` --> $DIR/issue-91550.rs:26:9
`
23
21
` |
`
24
22
`LL | pub struct NoDerives;
`
25
``
`` -
| -------------------- doesn't satisfy NoDerives: Eq
or NoDerives: PartialEq
``
``
23
`` +
| -------------------- doesn't satisfy NoDerives: Eq
``
26
24
`LL |
`
27
25
`LL | struct Object(T);
`
28
26
`` | ---------------- method use_eq
not found for this struct
``
`@@ -37,9 +35,6 @@ LL | impl<T: Eq> Object {
`
37
35
` | ^^ ---------
`
38
36
` | |
`
39
37
` | unsatisfied trait bound introduced here
`
40
``
`-
= note: the following trait bounds were not satisfied:
`
41
``
`` -
NoDerives: PartialEq
``
42
``
`` -
which is required by NoDerives: Eq
``
43
38
`` help: consider annotating NoDerives
with #[derive(Eq, PartialEq)]
``
44
39
` |
`
45
40
`LL + #[derive(Eq, PartialEq)]
`
`` @@ -50,7 +45,7 @@ error[E0599]: the method use_ord
exists for struct Object<NoDerives>
, but it
``
50
45
` --> $DIR/issue-91550.rs:27:9
`
51
46
` |
`
52
47
`LL | pub struct NoDerives;
`
53
``
`` -
| -------------------- doesn't satisfy NoDerives: Eq
, NoDerives: Ord
, NoDerives: PartialEq
or NoDerives: PartialOrd
``
``
48
`` +
| -------------------- doesn't satisfy NoDerives: Ord
``
54
49
`LL |
`
55
50
`LL | struct Object(T);
`
56
51
`` | ---------------- method use_ord
not found for this struct
``
`@@ -65,13 +60,6 @@ LL | impl<T: Ord> Object {
`
65
60
` | ^^^ ---------
`
66
61
` | |
`
67
62
` | unsatisfied trait bound introduced here
`
68
``
`-
= note: the following trait bounds were not satisfied:
`
69
``
`` -
NoDerives: PartialOrd
``
70
``
`` -
which is required by NoDerives: Ord
``
71
``
`` -
NoDerives: PartialEq
``
72
``
`` -
which is required by NoDerives: Ord
``
73
``
`` -
NoDerives: Eq
``
74
``
`` -
which is required by NoDerives: Ord
``
75
63
`` help: consider annotating NoDerives
with #[derive(Eq, Ord, PartialEq, PartialOrd)]
``
76
64
` |
`
77
65
`LL + #[derive(Eq, Ord, PartialEq, PartialOrd)]
`
`` @@ -82,7 +70,7 @@ error[E0599]: the method use_ord_and_partial_ord
exists for struct `Object<NoD
``
82
70
` --> $DIR/issue-91550.rs:28:9
`
83
71
` |
`
84
72
`LL | pub struct NoDerives;
`
85
``
`` -
| -------------------- doesn't satisfy NoDerives: Eq
, NoDerives: Ord
, NoDerives: PartialEq
or NoDerives: PartialOrd
``
``
73
`` +
| -------------------- doesn't satisfy NoDerives: Ord
or NoDerives: PartialOrd
``
86
74
`LL |
`
87
75
`LL | struct Object(T);
`
88
76
`` | ---------------- method use_ord_and_partial_ord
not found for this struct
``
`@@ -100,13 +88,6 @@ LL | impl<T: Ord + PartialOrd> Object {
`
100
88
` | | |
`
101
89
` | | unsatisfied trait bound introduced here
`
102
90
` | unsatisfied trait bound introduced here
`
103
``
`-
= note: the following trait bounds were not satisfied:
`
104
``
`` -
NoDerives: PartialEq
``
105
``
`` -
which is required by NoDerives: Ord
``
106
``
`` -
NoDerives: Eq
``
107
``
`` -
which is required by NoDerives: Ord
``
108
``
`` -
NoDerives: PartialEq
``
109
``
`` -
which is required by NoDerives: PartialOrd
``
110
91
`` help: consider annotating NoDerives
with #[derive(Eq, Ord, PartialEq, PartialOrd)]
``
111
92
` |
`
112
93
`LL + #[derive(Eq, Ord, PartialEq, PartialOrd)]
`