Skip to content

Commit

Permalink
Auto merge of #86001 - richkadel:revert-85617-rustin-patch-fix, r=Mar…
Browse files Browse the repository at this point in the history
…k-Simulacrum

Revert "shrinking the deprecated method span"

Reverts #85617

Fixes: #86000

r? `@Mark-Simulacrum`
  • Loading branch information
bors committed Jun 5, 2021
2 parents 34b9932 + 1384200 commit 5ea1923
Show file tree
Hide file tree
Showing 8 changed files with 149 additions and 163 deletions.
6 changes: 1 addition & 5 deletions compiler/rustc_passes/src/stability.rs
Original file line number Diff line number Diff line change
Expand Up @@ -828,11 +828,7 @@ impl Visitor<'tcx> for Checker<'tcx> {

fn visit_path(&mut self, path: &'tcx hir::Path<'tcx>, id: hir::HirId) {
if let Some(def_id) = path.res.opt_def_id() {
let method_span = match path.segments {
[.., _, last] => Some(last.ident.span),
_ => None,
};
self.tcx.check_stability(def_id, Some(id), path.span, method_span)
self.tcx.check_stability(def_id, Some(id), path.span, None)
}
intravisit::walk_path(self, path)
}
Expand Down
18 changes: 18 additions & 0 deletions src/test/ui/deprecation/deprecation-lint.rs
Original file line number Diff line number Diff line change
Expand Up @@ -430,6 +430,24 @@ mod this_crate2 {
// the patterns are all fine:
(..) = x;
}

#[derive(Debug)]
#[deprecated(note = "Use something else instead")]
enum DeprecatedDebugEnum {
Variant1 { value: Option<String> },
}

#[allow(deprecated)]
impl DeprecatedDebugEnum {
fn new() -> Self {
DeprecatedDebugEnum::Variant1 { value: None }
}
}

#[allow(deprecated)]
pub fn allow_dep() {
let _ = DeprecatedDebugEnum::new();
}
}

fn main() {}
108 changes: 54 additions & 54 deletions src/test/ui/deprecation/deprecation-lint.stderr
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,16 @@ LL | #![deny(deprecated)]
| ^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:21:16
--> $DIR/deprecation-lint.rs:21:9
|
LL | Trait::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:23:25
--> $DIR/deprecation-lint.rs:23:9
|
LL | <Foo as Trait>::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated function `deprecation_lint::deprecated_text`: text
--> $DIR/deprecation-lint.rs:25:9
Expand All @@ -29,16 +29,16 @@ LL | deprecated_text();
| ^^^^^^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:30:16
--> $DIR/deprecation-lint.rs:30:9
|
LL | ... Trait::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:32:25
--> $DIR/deprecation-lint.rs:32:9
|
LL | ... <Foo as Trait>::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated struct `deprecation_lint::DeprecatedStruct`: text
--> $DIR/deprecation-lint.rs:34:17
Expand All @@ -53,10 +53,10 @@ LL | let _ = DeprecatedUnitStruct;
| ^^^^^^^^^^^^^^^^^^^^

error: use of deprecated variant `deprecation_lint::Enum::DeprecatedVariant`: text
--> $DIR/deprecation-lint.rs:40:23
--> $DIR/deprecation-lint.rs:40:17
|
LL | let _ = Enum::DeprecatedVariant;
| ^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated struct `deprecation_lint::DeprecatedTupleStruct`: text
--> $DIR/deprecation-lint.rs:42:17
Expand All @@ -65,28 +65,28 @@ LL | let _ = DeprecatedTupleStruct (1);
| ^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated struct `deprecation_lint::nested::DeprecatedStruct`: text
--> $DIR/deprecation-lint.rs:44:25
--> $DIR/deprecation-lint.rs:44:17
|
LL | let _ = nested::DeprecatedStruct {
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated struct `deprecation_lint::nested::DeprecatedUnitStruct`: text
--> $DIR/deprecation-lint.rs:48:25
--> $DIR/deprecation-lint.rs:48:17
|
LL | let _ = nested::DeprecatedUnitStruct;
| ^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated variant `deprecation_lint::nested::Enum::DeprecatedVariant`: text
--> $DIR/deprecation-lint.rs:50:31
--> $DIR/deprecation-lint.rs:50:17
|
LL | ... let _ = nested::Enum::DeprecatedVariant;
| ^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated struct `deprecation_lint::nested::DeprecatedTupleStruct`: text
--> $DIR/deprecation-lint.rs:52:25
--> $DIR/deprecation-lint.rs:52:17
|
LL | ... let _ = nested::DeprecatedTupleStruct (1);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated function `deprecation_lint::deprecated_text`: text
--> $DIR/deprecation-lint.rs:59:25
Expand All @@ -101,28 +101,28 @@ LL | macro_test_arg!(macro_test_arg!(deprecated_text()));
| ^^^^^^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:65:16
--> $DIR/deprecation-lint.rs:65:9
|
LL | Trait::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:67:25
--> $DIR/deprecation-lint.rs:67:9
|
LL | <Foo as Trait>::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:69:16
--> $DIR/deprecation-lint.rs:69:9
|
LL | ... Trait::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `deprecation_lint::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:71:25
--> $DIR/deprecation-lint.rs:71:9
|
LL | ... <Foo as Trait>::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated trait `deprecation_lint::DeprecatedTrait`: text
--> $DIR/deprecation-lint.rs:81:10
Expand Down Expand Up @@ -173,10 +173,10 @@ LL | let Deprecated2
| ^^^^^^^^^^^

error: use of deprecated function `deprecation_lint::deprecated_mod::deprecated`: text
--> $DIR/deprecation-lint.rs:162:25
--> $DIR/deprecation-lint.rs:162:9
|
LL | deprecated_mod::deprecated();
| ^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated function `this_crate::deprecated`: text
--> $DIR/deprecation-lint.rs:245:9
Expand All @@ -185,16 +185,16 @@ LL | deprecated();
| ^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:250:16
--> $DIR/deprecation-lint.rs:250:9
|
LL | Trait::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:252:25
--> $DIR/deprecation-lint.rs:252:9
|
LL | <Foo as Trait>::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated function `this_crate::deprecated_text`: text
--> $DIR/deprecation-lint.rs:254:9
Expand All @@ -203,16 +203,16 @@ LL | deprecated_text();
| ^^^^^^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:259:16
--> $DIR/deprecation-lint.rs:259:9
|
LL | Trait::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:261:25
--> $DIR/deprecation-lint.rs:261:9
|
LL | ... <Foo as Trait>::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated function `this_crate::deprecated_future`: text
--> $DIR/deprecation-lint.rs:264:9
Expand All @@ -239,10 +239,10 @@ LL | let _ = DeprecatedUnitStruct;
| ^^^^^^^^^^^^^^^^^^^^

error: use of deprecated unit variant `this_crate::Enum::DeprecatedVariant`: text
--> $DIR/deprecation-lint.rs:274:23
--> $DIR/deprecation-lint.rs:274:17
|
LL | let _ = Enum::DeprecatedVariant;
| ^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated tuple struct `this_crate::DeprecatedTupleStruct`: text
--> $DIR/deprecation-lint.rs:276:17
Expand All @@ -251,52 +251,52 @@ LL | let _ = DeprecatedTupleStruct (1);
| ^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated struct `this_crate::nested::DeprecatedStruct`: text
--> $DIR/deprecation-lint.rs:278:25
--> $DIR/deprecation-lint.rs:278:17
|
LL | let _ = nested::DeprecatedStruct {
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated unit struct `this_crate::nested::DeprecatedUnitStruct`: text
--> $DIR/deprecation-lint.rs:283:25
--> $DIR/deprecation-lint.rs:283:17
|
LL | let _ = nested::DeprecatedUnitStruct;
| ^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated unit variant `this_crate::nested::Enum::DeprecatedVariant`: text
--> $DIR/deprecation-lint.rs:285:31
--> $DIR/deprecation-lint.rs:285:17
|
LL | ... let _ = nested::Enum::DeprecatedVariant;
| ^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated tuple struct `this_crate::nested::DeprecatedTupleStruct`: text
--> $DIR/deprecation-lint.rs:287:25
--> $DIR/deprecation-lint.rs:287:17
|
LL | ... let _ = nested::DeprecatedTupleStruct (1);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:292:16
--> $DIR/deprecation-lint.rs:292:9
|
LL | Trait::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated`: text
--> $DIR/deprecation-lint.rs:294:25
--> $DIR/deprecation-lint.rs:294:9
|
LL | <Foo as Trait>::trait_deprecated(&foo);
| ^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:296:16
--> $DIR/deprecation-lint.rs:296:9
|
LL | Trait::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated associated function `this_crate::Trait::trait_deprecated_text`: text
--> $DIR/deprecation-lint.rs:298:25
--> $DIR/deprecation-lint.rs:298:9
|
LL | ... <Foo as Trait>::trait_deprecated_text(&foo);
| ^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: use of deprecated function `this_crate::test_fn_closure_body::{closure#0}::bar`
--> $DIR/deprecation-lint.rs:316:13
Expand Down
17 changes: 3 additions & 14 deletions src/test/ui/deprecation/suggestion.fixed
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
// run-rustfix

#![feature(staged_api)]

#![stable(since = "1.0.0", feature = "test")]

#![deny(deprecated)]
#![allow(dead_code)]

Expand All @@ -19,21 +21,8 @@ impl Foo {
fn replacement(&self) {}
}

mod bar {
#[rustc_deprecated(
since = "1.0.0",
reason = "replaced by `replacement`",
suggestion = "replacement",
)]
#[stable(since = "1.0.0", feature = "test")]
pub fn deprecated() {}

pub fn replacement() {}
}

fn main() {
let foo = Foo;
foo.replacement(); //~ ERROR use of deprecated

bar::replacement(); //~ ERROR use of deprecated
foo.replacement(); //~ ERROR use of deprecated
}
17 changes: 3 additions & 14 deletions src/test/ui/deprecation/suggestion.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
// run-rustfix

#![feature(staged_api)]

#![stable(since = "1.0.0", feature = "test")]

#![deny(deprecated)]
#![allow(dead_code)]

Expand All @@ -19,21 +21,8 @@ impl Foo {
fn replacement(&self) {}
}

mod bar {
#[rustc_deprecated(
since = "1.0.0",
reason = "replaced by `replacement`",
suggestion = "replacement",
)]
#[stable(since = "1.0.0", feature = "test")]
pub fn deprecated() {}

pub fn replacement() {}
}

fn main() {
let foo = Foo;
foo.deprecated(); //~ ERROR use of deprecated

bar::deprecated(); //~ ERROR use of deprecated
foo.deprecated(); //~ ERROR use of deprecated
}
18 changes: 6 additions & 12 deletions src/test/ui/deprecation/suggestion.stderr
Original file line number Diff line number Diff line change
@@ -1,20 +1,14 @@
error: use of deprecated function `bar::deprecated`: replaced by `replacement`
--> $DIR/suggestion.rs:38:10
error: use of deprecated associated function `Foo::deprecated`: replaced by `replacement`
--> $DIR/suggestion.rs:27:9
|
LL | bar::deprecated();
| ^^^^^^^^^^ help: replace the use of the deprecated function: `replacement`
LL | foo.deprecated();
| ^^^^^^^^^^ help: replace the use of the deprecated associated function: `replacement`
|
note: the lint level is defined here
--> $DIR/suggestion.rs:5:9
--> $DIR/suggestion.rs:7:9
|
LL | #![deny(deprecated)]
| ^^^^^^^^^^

error: use of deprecated associated function `Foo::deprecated`: replaced by `replacement`
--> $DIR/suggestion.rs:36:9
|
LL | foo.deprecated();
| ^^^^^^^^^^ help: replace the use of the deprecated associated function: `replacement`

error: aborting due to 2 previous errors
error: aborting due to previous error

Loading

0 comments on commit 5ea1923

Please sign in to comment.