summaryrefslogtreecommitdiffstats
path: root/src/test/ui/issues/issue-58344.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/issues/issue-58344.rs')
-rw-r--r--src/test/ui/issues/issue-58344.rs50
1 files changed, 0 insertions, 50 deletions
diff --git a/src/test/ui/issues/issue-58344.rs b/src/test/ui/issues/issue-58344.rs
deleted file mode 100644
index 0cb04dcb2..000000000
--- a/src/test/ui/issues/issue-58344.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-// check-pass
-
-use std::ops::Add;
-
-trait Trait<T> {
- fn get(self) -> T;
-}
-
-struct Holder<T>(T);
-
-impl<T> Trait<T> for Holder<T> {
- fn get(self) -> T {
- self.0
- }
-}
-
-enum Either<L, R> {
- Left(L),
- Right(R),
-}
-
-impl<L, R> Either<L, R> {
- fn converge<T>(self) -> T
- where
- L: Trait<T>,
- R: Trait<T>,
- {
- match self {
- Either::Left(val) => val.get(),
- Either::Right(val) => val.get(),
- }
- }
-}
-
-fn add_generic<A: Add<B>, B>(
- lhs: A,
- rhs: B,
-) -> Either<impl Trait<<A as Add<B>>::Output>, impl Trait<<A as Add<B>>::Output>> {
- if true { Either::Left(Holder(lhs + rhs)) } else { Either::Right(Holder(lhs + rhs)) }
-}
-
-fn add_one(
- value: u32,
-) -> Either<impl Trait<<u32 as Add<u32>>::Output>, impl Trait<<u32 as Add<u32>>::Output>> {
- add_generic(value, 1u32)
-}
-
-pub fn main() {
- add_one(3).converge();
-}