rust/tests/ui/lang-items/issue-87573.rs

29 lines
629 B
Rust

// 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` lang item must be applied to a function with at least 1 generic argument
fn drop_fn() {
while false {}
}
#[lang = "start"]
//~^ ERROR: `start` lang item must be applied to a function with 1 generic argument
fn start(){}