diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-08-05 08:22:25 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-05 08:22:25 +0200 |
| commit | 5fa740f613b942b7a600d07dcd0f0948328eb0b8 (patch) | |
| tree | be6e270ea258f39c270be2b26ab5ccc54b3a5dbf | |
| parent | 227944defdf408bb8c9788a7d4107cd913eacfbf (diff) | |
| parent | 69de294c311cd38c85f3f143fb4cf997518e8bc1 (diff) | |
| download | rust-5fa740f613b942b7a600d07dcd0f0948328eb0b8.tar.gz rust-5fa740f613b942b7a600d07dcd0f0948328eb0b8.zip | |
Rollup merge of #128660 - matthiaskrgr:niceice, r=compiler-errors
tests: more crashes r? ``@jieyouxu``
| -rw-r--r-- | tests/crashes/128094.rs | 14 | ||||
| -rw-r--r-- | tests/crashes/128176.rs | 13 | ||||
| -rw-r--r-- | tests/crashes/128190.rs | 7 | ||||
| -rw-r--r-- | tests/crashes/128327.rs | 5 | ||||
| -rw-r--r-- | tests/crashes/128346.rs | 13 | ||||
| -rw-r--r-- | tests/crashes/128621-2.rs | 16 | ||||
| -rw-r--r-- | tests/crashes/128621.rs | 19 |
7 files changed, 87 insertions, 0 deletions
diff --git a/tests/crashes/128094.rs b/tests/crashes/128094.rs new file mode 100644 index 00000000000..105a1c84a65 --- /dev/null +++ b/tests/crashes/128094.rs @@ -0,0 +1,14 @@ +//@ known-bug: rust-lang/rust#128094 +//@ compile-flags: -Zmir-opt-level=5 --edition=2018 + +pub enum Request { + TestSome(T), +} + +pub async fn handle_event(event: Request) { + async move { + static instance: Request = Request { bar: 17 }; + &instance + } + .await; +} diff --git a/tests/crashes/128176.rs b/tests/crashes/128176.rs new file mode 100644 index 00000000000..70fada4f0fe --- /dev/null +++ b/tests/crashes/128176.rs @@ -0,0 +1,13 @@ +//@ known-bug: rust-lang/rust#128176 + +#![feature(generic_const_exprs)] +#![feature(object_safe_for_dispatch)] +trait X { + type Y<const N: i16>; +} + +const _: () = { + fn f2<'a>(arg: Box<dyn X<Y<1> = &'a ()>>) {} +}; + +fn main() {} diff --git a/tests/crashes/128190.rs b/tests/crashes/128190.rs new file mode 100644 index 00000000000..0fa7027ae60 --- /dev/null +++ b/tests/crashes/128190.rs @@ -0,0 +1,7 @@ +//@ known-bug: rust-lang/rust#128190 + +fn a(&self) { + 15 +} + +reuse a as b { struct S; } diff --git a/tests/crashes/128327.rs b/tests/crashes/128327.rs new file mode 100644 index 00000000000..a63f758c317 --- /dev/null +++ b/tests/crashes/128327.rs @@ -0,0 +1,5 @@ +//@ known-bug: rust-lang/rust#128327 + +use std::ops::Deref; +struct Apple((Apple, <&'static [f64] as Deref>::Target(Banana ? Citron))); +fn main(){} diff --git a/tests/crashes/128346.rs b/tests/crashes/128346.rs new file mode 100644 index 00000000000..93d9c40a544 --- /dev/null +++ b/tests/crashes/128346.rs @@ -0,0 +1,13 @@ +//@ known-bug: rust-lang/rust#128346 + +macro_rules! one_rep { + ( $($a:ident)* ) => { + A( + const ${concat($a, Z)}: i32 = 3; + )* + }; +} + +fn main() { + one_rep!(A B C); +} diff --git a/tests/crashes/128621-2.rs b/tests/crashes/128621-2.rs new file mode 100644 index 00000000000..b1cdaf94984 --- /dev/null +++ b/tests/crashes/128621-2.rs @@ -0,0 +1,16 @@ +//@ known-bug: rust-lang/rust#128621 + +#![feature(ptr_metadata)] +use std::{ops::FnMut, ptr::Pointee}; + +pub type EmplacerFn<'a, T> = dyn for<'b> FnMut(<T as Pointee>::Metadata) + 'a; + +pub struct Emplacer<'a, T>(EmplacerFn<'a, T>); + +impl<'a, T> Emplacer<'a, T> { + pub unsafe fn from_fn<'b>(emplacer_fn: &'b mut EmplacerFn<'a, T>) -> &'b mut Self { + unsafe { &mut *((emplacer_fn as *mut EmplacerFn<'a, T>) as *mut Self) } + } +} + +pub fn main() {} diff --git a/tests/crashes/128621.rs b/tests/crashes/128621.rs new file mode 100644 index 00000000000..0a02352236d --- /dev/null +++ b/tests/crashes/128621.rs @@ -0,0 +1,19 @@ +//@ known-bug: rust-lang/rust#128621 + +trait Trait { + type Associated; +} + +impl Trait for i32 { + type Associated = i64; +} + +trait Generic<T> {} + +type TraitObject = dyn Generic<<i32 as Trait>::Associated>; + +struct Wrap(TraitObject); + +fn cast(x: *mut TraitObject) { + x as *mut Wrap; +} |
