diff options
| -rw-r--r-- | tests/crashes/135122.rs | 24 | ||||
| -rw-r--r-- | tests/crashes/135124.rs | 9 | ||||
| -rw-r--r-- | tests/crashes/135128.rs | 10 | ||||
| -rw-r--r-- | tests/crashes/135210.rs | 8 | ||||
| -rw-r--r-- | tests/crashes/135341.rs | 5 |
5 files changed, 56 insertions, 0 deletions
diff --git a/tests/crashes/135122.rs b/tests/crashes/135122.rs new file mode 100644 index 00000000000..77d943f23b4 --- /dev/null +++ b/tests/crashes/135122.rs @@ -0,0 +1,24 @@ +//@ known-bug: #135122 +trait Add { + type Output; + fn add(_: (), _: Self::Output) {} +} + +trait IsSame<Lhs> { + type Assoc; +} + +trait Data { + type Elem; +} + +impl<B> IsSame<i16> for f32 where f32: IsSame<B, Assoc = B> {} + +impl<A> Add for i64 +where + f32: IsSame<A>, + i8: Data<Elem = A>, +{ + type Output = <f32 as IsSame<A>>::Assoc; + fn add(_: Data, _: Self::Output) {} +} diff --git a/tests/crashes/135124.rs b/tests/crashes/135124.rs new file mode 100644 index 00000000000..d6655cb46fa --- /dev/null +++ b/tests/crashes/135124.rs @@ -0,0 +1,9 @@ +//@ known-bug: #135124 +trait A { + fn y(&self) + { + fn call() -> impl Sized {} + self.fold(call()); + } + fn fold(&self, &self._) {} +} diff --git a/tests/crashes/135128.rs b/tests/crashes/135128.rs new file mode 100644 index 00000000000..2ce17df824a --- /dev/null +++ b/tests/crashes/135128.rs @@ -0,0 +1,10 @@ +//@ known-bug: #135128 +//@ compile-flags: -Copt-level=1 --edition=2021 + +async fn return_str() -> str +where + str: Sized, +{ + *"Sized".to_string().into_boxed_str() +} +fn main() {} diff --git a/tests/crashes/135210.rs b/tests/crashes/135210.rs new file mode 100644 index 00000000000..acb61e21090 --- /dev/null +++ b/tests/crashes/135210.rs @@ -0,0 +1,8 @@ +//@ known-bug: #135210 + +#![feature(const_trait_impl)] +const _: fn(&String) = |s| { + &*s as &str; +}; + +fn main() {} diff --git a/tests/crashes/135341.rs b/tests/crashes/135341.rs new file mode 100644 index 00000000000..0e33242a5f5 --- /dev/null +++ b/tests/crashes/135341.rs @@ -0,0 +1,5 @@ +//@ known-bug: #135341 +type A<T> = B; +type B = _; + +pub fn main() {} |
