Rollup merge of #90956 - JohnTitor:issue-87573, r=Mark-Simulacrum
Add a regression test for #87573 Closes #87573
This commit is contained in:
commit
5c98cf145d
2 changed files with 49 additions and 0 deletions
28
src/test/ui/lang-items/issue-87573.rs
Normal file
28
src/test/ui/lang-items/issue-87573.rs
Normal file
|
@ -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(){}
|
21
src/test/ui/lang-items/issue-87573.stderr
Normal file
21
src/test/ui/lang-items/issue-87573.stderr
Normal file
|
@ -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`.
|
Loading…
Add table
Add a link
Reference in a new issue