mirror of
https://github.com/rust-lang/rust.git
synced 2025-11-01 13:34:38 +00:00
This CL makes a number of small changes to dyn compatibility errors: - "object safety" has been renamed to "dyn-compatibility" throughout - "Convert to enum" suggestions are no longer generated when there exists a type-generic impl of the trait or an impl for `dyn OtherTrait` - Several error messages are reorganized for user readability Additionally, the dyn compatibility error creation code has been split out into functions. cc #132713 cc #133267
18 lines
373 B
Rust
18 lines
373 B
Rust
// This ensures we don't ICE in situations like rust-lang/rust#127299.
|
|
|
|
trait Qux {
|
|
fn bar() -> i32;
|
|
}
|
|
|
|
pub struct Lint {
|
|
pub desc: &'static dyn Qux,
|
|
//~^ ERROR is not dyn compatible
|
|
}
|
|
|
|
static FOO: &Lint = &Lint { desc: "desc" };
|
|
//~^ ERROR cannot be shared between threads safely
|
|
//~| ERROR is not dyn compatible
|
|
//~| ERROR is not dyn compatible
|
|
|
|
fn main() {}
|