summaryrefslogtreecommitdiffstats
path: root/src/test/ui/traits/issue-77982.stderr
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/test/ui/traits/issue-77982.stderr96
1 files changed, 96 insertions, 0 deletions
diff --git a/src/test/ui/traits/issue-77982.stderr b/src/test/ui/traits/issue-77982.stderr
new file mode 100644
index 000000000..2b832e27c
--- /dev/null
+++ b/src/test/ui/traits/issue-77982.stderr
@@ -0,0 +1,96 @@
+error[E0283]: type annotations needed
+ --> $DIR/issue-77982.rs:8:10
+ |
+LL | opts.get(opt.as_ref());
+ | ^^^ cannot infer type of the type parameter `Q` declared on the associated function `get`
+ |
+ = note: multiple `impl`s satisfying `String: Borrow<_>` found in the following crates: `alloc`, `core`:
+ - impl Borrow<str> for String;
+ - impl<T> Borrow<T> for T
+ where T: ?Sized;
+note: required by a bound in `HashMap::<K, V, S>::get`
+ --> $SRC_DIR/std/src/collections/hash/map.rs:LL:COL
+ |
+LL | K: Borrow<Q>,
+ | ^^^^^^^^^ required by this bound in `HashMap::<K, V, S>::get`
+help: consider specifying the type argument in the function call
+ |
+LL | opts.get::<Q>(opt.as_ref());
+ | +++++
+
+error[E0283]: type annotations needed
+ --> $DIR/issue-77982.rs:8:10
+ |
+LL | opts.get(opt.as_ref());
+ | ^^^ ------ type must be known at this point
+ | |
+ | cannot infer type of the type parameter `Q` declared on the associated function `get`
+ |
+ = note: multiple `impl`s satisfying `String: AsRef<_>` found in the following crates: `alloc`, `std`:
+ - impl AsRef<OsStr> for String;
+ - impl AsRef<Path> for String;
+ - impl AsRef<[u8]> for String;
+ - impl AsRef<str> for String;
+help: consider specifying the generic argument
+ |
+LL | opts.get::<Q>(opt.as_ref());
+ | +++++
+
+error[E0283]: type annotations needed
+ --> $DIR/issue-77982.rs:13:59
+ |
+LL | let ips: Vec<_> = (0..100_000).map(|_| u32::from(0u32.into())).collect();
+ | --------- ^^^^
+ | |
+ | type must be known at this point
+ |
+ = note: multiple `impl`s satisfying `u32: From<_>` found in the following crates: `core`, `std`:
+ - impl From<Ipv4Addr> for u32;
+ - impl From<NonZeroU32> for u32;
+ - impl From<bool> for u32;
+ - impl From<char> for u32;
+ and 3 more
+help: try using a fully qualified path to specify the expected types
+ |
+LL | let ips: Vec<_> = (0..100_000).map(|_| u32::from(<u32 as Into<T>>::into(0u32))).collect();
+ | +++++++++++++++++++++++ ~
+
+error[E0283]: type annotations needed for `Box<T>`
+ --> $DIR/issue-77982.rs:36:9
+ |
+LL | let _ = ().foo();
+ | ^ --- type must be known at this point
+ |
+note: multiple `impl`s satisfying `(): Foo<'_, _>` found
+ --> $DIR/issue-77982.rs:29:1
+ |
+LL | impl Foo<'static, u32> for () {}
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL | impl<'a> Foo<'a, i16> for () {}
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+help: consider giving this pattern a type, where the type for type parameter `T` is specified
+ |
+LL | let _: Box<T> = ().foo();
+ | ++++++++
+
+error[E0283]: type annotations needed for `Box<T>`
+ --> $DIR/issue-77982.rs:40:9
+ |
+LL | let _ = (&()).bar();
+ | ^ --- type must be known at this point
+ |
+note: multiple `impl`s satisfying `&(): Bar<'_, _>` found
+ --> $DIR/issue-77982.rs:32:1
+ |
+LL | impl<'a> Bar<'static, u32> for &'a () {}
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL | impl<'a> Bar<'a, i16> for &'a () {}
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+help: consider giving this pattern a type, where the type for type parameter `T` is specified
+ |
+LL | let _: Box<T> = (&()).bar();
+ | ++++++++
+
+error: aborting due to 5 previous errors
+
+For more information about this error, try `rustc --explain E0283`.