summaryrefslogtreecommitdiffstats
path: root/src/test/ui/impl-trait/issues/issue-62742.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/impl-trait/issues/issue-62742.stderr')
-rw-r--r--src/test/ui/impl-trait/issues/issue-62742.stderr50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/test/ui/impl-trait/issues/issue-62742.stderr b/src/test/ui/impl-trait/issues/issue-62742.stderr
new file mode 100644
index 000000000..34f4dc2ce
--- /dev/null
+++ b/src/test/ui/impl-trait/issues/issue-62742.stderr
@@ -0,0 +1,50 @@
+error[E0277]: the trait bound `RawImpl<_>: Raw<_>` is not satisfied
+ --> $DIR/issue-62742.rs:4:5
+ |
+LL | WrongImpl::foo(0i32);
+ | ^^^^^^^^^ the trait `Raw<_>` is not implemented for `RawImpl<_>`
+ |
+ = help: the trait `Raw<[T]>` is implemented for `RawImpl<T>`
+note: required by a bound in `SafeImpl`
+ --> $DIR/issue-62742.rs:26:35
+ |
+LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
+ | ^^^^^^ required by this bound in `SafeImpl`
+
+error[E0599]: the function or associated item `foo` exists for struct `SafeImpl<(), RawImpl<()>>`, but its trait bounds were not satisfied
+ --> $DIR/issue-62742.rs:6:22
+ |
+LL | WrongImpl::<()>::foo(0i32);
+ | ^^^ function or associated item cannot be called on `SafeImpl<(), RawImpl<()>>` due to unsatisfied trait bounds
+...
+LL | pub struct RawImpl<T>(PhantomData<T>);
+ | --------------------- doesn't satisfy `RawImpl<()>: Raw<()>`
+...
+LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
+ | ----------------------------------------- function or associated item `foo` not found for this struct
+ |
+ = note: the following trait bounds were not satisfied:
+ `RawImpl<()>: Raw<()>`
+note: the following trait must be implemented
+ --> $DIR/issue-62742.rs:12:1
+ |
+LL | pub trait Raw<T: ?Sized> {
+ | ^^^^^^^^^^^^^^^^^^^^^^^^
+
+error[E0277]: the trait bound `RawImpl<()>: Raw<()>` is not satisfied
+ --> $DIR/issue-62742.rs:6:5
+ |
+LL | WrongImpl::<()>::foo(0i32);
+ | ^^^^^^^^^^^^^^^ the trait `Raw<()>` is not implemented for `RawImpl<()>`
+ |
+ = help: the trait `Raw<[T]>` is implemented for `RawImpl<T>`
+note: required by a bound in `SafeImpl`
+ --> $DIR/issue-62742.rs:26:35
+ |
+LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
+ | ^^^^^^ required by this bound in `SafeImpl`
+
+error: aborting due to 3 previous errors
+
+Some errors have detailed explanations: E0277, E0599.
+For more information about an error, try `rustc --explain E0277`.