File: issue-80816.stderr

package info (click to toggle)
rustc 1.88.0%2Bdfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 934,128 kB
  • sloc: xml: 158,127; python: 36,062; javascript: 19,855; sh: 19,700; cpp: 18,947; ansic: 12,993; asm: 4,792; makefile: 690; lisp: 29; perl: 29; ruby: 19; sql: 11
file content (30 lines) | stat: -rw-r--r-- 1,121 bytes parent folder | download | duplicates (11)
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
error[E0283]: type annotations needed
  --> $DIR/issue-80816.rs:50:38
   |
LL |     let guard: Guard<Arc<usize>> = s.load();
   |                                      ^^^^
   |
note: multiple `impl`s satisfying `ArcSwapAny<Arc<usize>>: Access<_>` found
  --> $DIR/issue-80816.rs:36:1
   |
LL | impl<T> Access<T> for ArcSwapAny<T> {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl<T> Access<T> for ArcSwapAny<Arc<T>> {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: required for `Arc<ArcSwapAny<Arc<usize>>>` to implement `Access<_>`
  --> $DIR/issue-80816.rs:31:45
   |
LL | impl<T, A: Access<T>, P: Deref<Target = A>> Access<T> for P {
   |            ---------                        ^^^^^^^^^     ^
   |            |
   |            unsatisfied trait bound introduced here
help: try using a fully qualified path to specify the expected types
   |
LL -     let guard: Guard<Arc<usize>> = s.load();
LL +     let guard: Guard<Arc<usize>> = <Arc<ArcSwapAny<Arc<usize>>> as Access<T>>::load(&s);
   |

error: aborting due to 1 previous error

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