mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-22 02:00:00 +03:00
Rollup merge of #148004 - Muscraft:only-single-line-item-attributes, r=estebank
fix: Only special case single line item attribute suggestions `rustc` currently special cases suggestions to add [`#[derive(_)]\n` and other attributes](https://github.com/rust-lang/rust/blob/dc1feabef242259d61bd930713de3250577c1c71/compiler/rustc_errors/src/emitter.rs#L2288C36-L2288C72), to add more context to the suggestions. > // The suggestion adds an entire line of code, ending on a newline, so we'll also > // print the *following* line, to provide context of what we're advising people to > // do. Otherwise you would only see contextless code that can be confused for > // already existing code, despite the colors and UI elements. > // We special case `#[derive(_)]\n` and other attribute suggestions, because those > // are the ones where context is most useful. This special case is a bit broad at the moment and applies to suggestions just to add an attribute, as well as suggestions that contain an attribute and other code, i.e. ```rust #[derive(Clone)] ``` and ```rust #[cfg(not(test))] impl Default for NewWithCfg { fn default() -> Self { Self::new() } } ``` In the latter case, adding a line for context after the suggestion doesn't provide much benefit. Example:  This PR makes it so that this special case only applies to suggestions that just add an attribute and nothing else. This will also make `rustc`'s output match `annotate-snippets`.
This commit is contained in:
@@ -191,7 +191,6 @@ LL + fn default() -> Self {
|
||||
LL + Self::new()
|
||||
LL + }
|
||||
LL + }
|
||||
LL | impl NewWithCfg {
|
||||
|
|
||||
|
||||
error: you should consider adding a `Default` implementation for `NewWith2Cfgs`
|
||||
@@ -212,7 +211,6 @@ LL + fn default() -> Self {
|
||||
LL + Self::new()
|
||||
LL + }
|
||||
LL + }
|
||||
LL | impl NewWith2Cfgs {
|
||||
|
|
||||
|
||||
error: you should consider adding a `Default` implementation for `NewWithExtraneous`
|
||||
@@ -250,7 +248,6 @@ LL + fn default() -> Self {
|
||||
LL + Self::new()
|
||||
LL + }
|
||||
LL + }
|
||||
LL | impl NewWithCfgAndExtraneous {
|
||||
|
|
||||
|
||||
error: aborting due to 13 previous errors
|
||||
|
||||
Reference in New Issue
Block a user