mirror of https://github.com/rust-lang/rust
32 lines
975 B
Rust
32 lines
975 B
Rust
//@ edition:2021
|
|
//@ aux-build:bad_on_unimplemented.rs
|
|
|
|
// Do not ICE when encountering a malformed `#[diagnostic::on_unimplemented]` annotation in a
|
|
// dependency when incorrectly used (#124651).
|
|
|
|
extern crate bad_on_unimplemented;
|
|
|
|
use bad_on_unimplemented::*;
|
|
|
|
fn missing_attr<T: MissingAttr>(_: T) {}
|
|
fn duplicate_attr<T: DuplicateAttr>(_: T) {}
|
|
fn not_meta_list<T: NotMetaList>(_: T) {}
|
|
fn empty<T: Empty>(_: T) {}
|
|
fn wrong_delim<T: WrongDelim>(_: T) {}
|
|
fn bad_formatter<T: BadFormatter<()>>(_: T) {}
|
|
fn no_implicit_args<T: NoImplicitArgs>(_: T) {}
|
|
fn missing_arg<T: MissingArg>(_: T) {}
|
|
fn bad_arg<T: BadArg>(_: T) {}
|
|
|
|
fn main() {
|
|
missing_attr(()); //~ ERROR E0277
|
|
duplicate_attr(()); //~ ERROR E0277
|
|
not_meta_list(()); //~ ERROR E0277
|
|
empty(()); //~ ERROR E0277
|
|
wrong_delim(()); //~ ERROR E0277
|
|
bad_formatter(()); //~ ERROR E0277
|
|
no_implicit_args(()); //~ ERROR E0277
|
|
missing_arg(()); //~ ERROR E0277
|
|
bad_arg(()); //~ ERROR E0277
|
|
}
|