diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2021-11-20 01:09:40 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-11-20 01:09:40 +0100 |
| commit | 5c98cf145dc6e71a33f4c20b64a9d8eeeaf8b1b3 (patch) | |
| tree | a73571faa1dd4454abd58a085877f596f3eafc92 | |
| parent | c0695bbf6083fae739c259c8d88ef24502e5c089 (diff) | |
| parent | 8f6fa4f548a57d11b93e8c9a1f20628783d6e4d7 (diff) | |
| download | rust-5c98cf145dc6e71a33f4c20b64a9d8eeeaf8b1b3.tar.gz rust-5c98cf145dc6e71a33f4c20b64a9d8eeeaf8b1b3.zip | |
Rollup merge of #90956 - JohnTitor:issue-87573, r=Mark-Simulacrum
Add a regression test for #87573 Closes #87573
| -rw-r--r-- | src/test/ui/lang-items/issue-87573.rs | 28 | ||||
| -rw-r--r-- | src/test/ui/lang-items/issue-87573.stderr | 21 |
2 files changed, 49 insertions, 0 deletions
diff --git a/src/test/ui/lang-items/issue-87573.rs b/src/test/ui/lang-items/issue-87573.rs new file mode 100644 index 00000000000..aeb0c245a72 --- /dev/null +++ b/src/test/ui/lang-items/issue-87573.rs @@ -0,0 +1,28 @@ +// Regression test for #87573, ensures that duplicate lang items or invalid generics +// for lang items doesn't cause ICE. + +#![feature(no_core, lang_items)] +#![no_core] +#![crate_type = "lib"] + +pub static STATIC_BOOL: bool = true; + +#[lang = "sized"] +trait Sized {} + +#[lang = "copy"] +trait Copy {} + +#[lang = "sync"] +trait Sync {} +impl Sync for bool {} + +#[lang = "drop_in_place"] +//~^ ERROR: `drop_in_place` language item must be applied to a function with at least 1 generic argument +fn drop_fn() { + while false {} +} + +#[lang = "start"] +//~^ ERROR: `start` language item must be applied to a function with 1 generic argument +fn start(){} diff --git a/src/test/ui/lang-items/issue-87573.stderr b/src/test/ui/lang-items/issue-87573.stderr new file mode 100644 index 00000000000..25560cfa0e6 --- /dev/null +++ b/src/test/ui/lang-items/issue-87573.stderr @@ -0,0 +1,21 @@ +error[E0718]: `drop_in_place` language item must be applied to a function with at least 1 generic argument + --> $DIR/issue-87573.rs:20:1 + | +LL | #[lang = "drop_in_place"] + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +LL | +LL | fn drop_fn() { + | - this function has 0 generic arguments + +error[E0718]: `start` language item must be applied to a function with 1 generic argument + --> $DIR/issue-87573.rs:26:1 + | +LL | #[lang = "start"] + | ^^^^^^^^^^^^^^^^^ +LL | +LL | fn start(){} + | - this function has 0 generic arguments + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0718`. |
