mirror of
https://github.com/rust-lang/rust.git
synced 2025-04-30 03:57:37 +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
12 lines
578 B
Rust
12 lines
578 B
Rust
trait X {
|
|
type Y<'a>;
|
|
}
|
|
fn f<'a>(arg : Box<dyn X<Y<1> = &'a ()>>) {}
|
|
//~^ ERROR associated type takes 1 lifetime argument but 0 lifetime arguments
|
|
//~| ERROR associated type takes 0 generic arguments but 1 generic argument
|
|
//~| ERROR associated type takes 1 lifetime argument but 0 lifetime arguments
|
|
//~| ERROR associated type takes 0 generic arguments but 1 generic argument
|
|
//~| ERROR associated type takes 1 lifetime argument but 0 lifetime arguments
|
|
//~| ERROR associated type takes 0 generic arguments but 1 generic argument
|
|
//~| ERROR trait `X` is not dyn compatible
|