rust/tests/ui/dyn-keyword/issue-56327-dyn-trait-in-macro-is-okay.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

28 lines
555 B
Rust
Raw Normal View History

// check-pass
2021-06-22 00:03:50 -05:00
// edition:2015
//
// rust-lang/rust#56327: Some occurrences of `dyn` within a macro are
// not instances of identifiers, and thus should *not* be caught by the
// keyword_ident lint.
//
// Otherwise, rustfix replaces the type `Box<dyn Drop>` with
// `Box<r#dyn Drop>`, which is injecting a bug rather than fixing
// anything.
#![deny(rust_2018_compatibility)]
#![allow(dyn_drop)]
macro_rules! foo {
() => {
fn generated_foo() {
let _x: Box<dyn Drop>;
}
}
}
foo!();
fn main() {
generated_foo();
}