4225a1e186
`Diagnostic::keys`, which is used for hashing and equating diagnostics, has a surprising behaviour: it ignores children, but only for lints. This was added in #88493 to fix some duplicated diagnostics, but it doesn't seem necessary any more. This commit removes the special case and only four tests have changed output, with additional errors. And those additional errors aren't exact duplicates, they're just similar. For example, in src/tools/clippy/tests/ui/same_name_method.rs we currently have this error: ``` error: method's name is the same as an existing method in a trait --> $DIR/same_name_method.rs:75:13 | LL | fn foo() {} | ^^^^^^^^^^^ | note: existing `foo` defined here --> $DIR/same_name_method.rs:79:9 | LL | impl T1 for S {} | ^^^^^^^^^^^^^^^^ ``` and with this change we also get this error: ``` error: method's name is the same as an existing method in a trait --> $DIR/same_name_method.rs:75:13 | LL | fn foo() {} | ^^^^^^^^^^^ | note: existing `foo` defined here --> $DIR/same_name_method.rs:81:9 | LL | impl T2 for S {} | ^^^^^^^^^^^^^^^^ ``` I think printing this second argument is reasonable, possibly even preferable to hiding it. And the other cases are similar.
66 lines
2.6 KiB
Plaintext
66 lines
2.6 KiB
Plaintext
warning: ambiguous glob re-exports
|
|
--> $DIR/ambiguous-9.rs:8:13
|
|
|
|
|
LL | pub use self::range::*;
|
|
| ^^^^^^^^^^^^^^ the name `date_range` in the value namespace is first re-exported here
|
|
LL | use super::prelude::*;
|
|
| ----------------- but the name `date_range` in the value namespace is also re-exported here
|
|
|
|
|
= note: `#[warn(ambiguous_glob_reexports)]` on by default
|
|
|
|
warning: `date_range` is ambiguous
|
|
--> $DIR/ambiguous-9.rs:24:5
|
|
|
|
|
LL | date_range();
|
|
| ^^^^^^^^^^ ambiguous name
|
|
|
|
|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
|
|
= note: for more information, see issue #114095 <https://github.com/rust-lang/rust/issues/114095>
|
|
= note: ambiguous because of multiple glob imports of a name in the same module
|
|
note: `date_range` could refer to the function imported here
|
|
--> $DIR/ambiguous-9.rs:8:13
|
|
|
|
|
LL | pub use self::range::*;
|
|
| ^^^^^^^^^^^^^^
|
|
= help: consider adding an explicit import of `date_range` to disambiguate
|
|
note: `date_range` could also refer to the function imported here
|
|
--> $DIR/ambiguous-9.rs:9:9
|
|
|
|
|
LL | use super::prelude::*;
|
|
| ^^^^^^^^^^^^^^^^^
|
|
= help: consider adding an explicit import of `date_range` to disambiguate
|
|
= note: `#[warn(ambiguous_glob_imports)]` on by default
|
|
|
|
warning: ambiguous glob re-exports
|
|
--> $DIR/ambiguous-9.rs:16:13
|
|
|
|
|
LL | pub use self::t::*;
|
|
| ^^^^^^^^^^ the name `date_range` in the value namespace is first re-exported here
|
|
LL | pub use super::dsl::*;
|
|
| ------------- but the name `date_range` in the value namespace is also re-exported here
|
|
|
|
warning: `date_range` is ambiguous
|
|
--> $DIR/ambiguous-9.rs:24:5
|
|
|
|
|
LL | date_range();
|
|
| ^^^^^^^^^^ ambiguous name
|
|
|
|
|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
|
|
= note: for more information, see issue #114095 <https://github.com/rust-lang/rust/issues/114095>
|
|
= note: ambiguous because of multiple glob imports of a name in the same module
|
|
note: `date_range` could refer to the function imported here
|
|
--> $DIR/ambiguous-9.rs:20:5
|
|
|
|
|
LL | use dsl::*;
|
|
| ^^^^^^
|
|
= help: consider adding an explicit import of `date_range` to disambiguate
|
|
note: `date_range` could also refer to the function imported here
|
|
--> $DIR/ambiguous-9.rs:21:5
|
|
|
|
|
LL | use prelude::*;
|
|
| ^^^^^^^^^^
|
|
= help: consider adding an explicit import of `date_range` to disambiguate
|
|
|
|
warning: 4 warnings emitted
|
|
|