about summary refs log tree commit diff
path: root/src/test/ui/const-generics/generic_const_exprs/issue-86710.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/const-generics/generic_const_exprs/issue-86710.rs')
-rw-r--r--src/test/ui/const-generics/generic_const_exprs/issue-86710.rs73
1 files changed, 0 insertions, 73 deletions
diff --git a/src/test/ui/const-generics/generic_const_exprs/issue-86710.rs b/src/test/ui/const-generics/generic_const_exprs/issue-86710.rs
deleted file mode 100644
index bdd8a21b3b9..00000000000
--- a/src/test/ui/const-generics/generic_const_exprs/issue-86710.rs
+++ /dev/null
@@ -1,73 +0,0 @@
-// build-pass
-
-#![allow(incomplete_features)]
-#![feature(generic_const_exprs)]
-
-use std::marker::PhantomData;
-
-fn main() {
-    let x = FooImpl::<BarImpl<1>> { phantom: PhantomData };
-    let _ = x.foo::<BarImpl<1>>();
-}
-
-trait Foo<T>
-where
-    T: Bar,
-{
-    fn foo<U>(&self)
-    where
-        T: Operation<U>,
-        <T as Operation<U>>::Output: Bar;
-}
-
-struct FooImpl<T>
-where
-    T: Bar,
-{
-    phantom: PhantomData<T>,
-}
-
-impl<T> Foo<T> for FooImpl<T>
-where
-    T: Bar,
-{
-    fn foo<U>(&self)
-    where
-        T: Operation<U>,
-        <T as Operation<U>>::Output: Bar,
-    {
-        <<T as Operation<U>>::Output as Bar>::error_occurs_here();
-    }
-}
-
-trait Bar {
-    fn error_occurs_here();
-}
-
-struct BarImpl<const N: usize>;
-
-impl<const N: usize> Bar for BarImpl<N> {
-    fn error_occurs_here() {}
-}
-
-trait Operation<Rhs> {
-    type Output;
-}
-
-//// Part-A: This causes error.
-impl<const M: usize, const N: usize> Operation<BarImpl<M>> for BarImpl<N>
-where
-    BarImpl<{ N + M }>: Sized,
-{
-    type Output = BarImpl<{ N + M }>;
-}
-
-//// Part-B: This doesn't cause error.
-// impl<const M: usize, const N: usize> Operation<BarImpl<M>> for BarImpl<N> {
-//     type Output = BarImpl<M>;
-// }
-
-//// Part-C: This also doesn't cause error.
-// impl<const M: usize, const N: usize> Operation<BarImpl<M>> for BarImpl<N> {
-//     type Output = BarImpl<{ M }>;
-// }