-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Open
Labels
C-enhancementCategory: Enhancement of lints, like adding more cases or adding help messagesCategory: Enhancement of lints, like adding more cases or adding help messagesI-false-positiveIssue: The lint was triggered on code it shouldn't haveIssue: The lint was triggered on code it shouldn't have
Description
Summary
Items sometimes move from std
to core
. For example, *UnwindSafe
have moved, std::error::Error
will move in Rust 1.81.0, and std::io::Error
might someday.
When this happens, anyone who uses clippy from nightly or beta, or newer than their MSRV, will get lints they cannot satisfy. Therefore, it would be useful if std_instead_of_core
, alloc_instead_of_core
, and std_instead_of_alloc
were MSRV-aware and only fired if the item in question is stable in core
or alloc
at the declared MSRV.
Lint Name
std_instead_of_core, alloc_instead_of_core, std_instead_of_alloc
Reproducer
I tried this code:
#![feature(custom_inner_attributes)]
#![warn(clippy::std_instead_of_core)]
#![clippy::msrv = "1.80.0"]
use std::error::Error;
I saw this happen:
warning: used import from `std` instead of `core`
--> src/lib.rs:5:5
|
5 | use std::error::Error;
| ^^^ help: consider importing the item from `core`: `core`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#std_instead_of_core
note: the lint level is defined here
--> src/lib.rs:2:9
|
2 | #![warn(clippy::std_instead_of_core)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
I expected to see this happen: No warning
Version
rustc 1.82.0-nightly (c1a6199e9 2024-07-24)
binary: rustc
commit-hash: c1a6199e9d92bb785c17a6d7ffd8b8b552f79c10
commit-date: 2024-07-24
host: x86_64-apple-darwin
release: 1.82.0-nightly
LLVM version: 18.1.7
Additional Labels
@rustbot label -C-bug +C-enhancement
Metadata
Metadata
Assignees
Labels
C-enhancementCategory: Enhancement of lints, like adding more cases or adding help messagesCategory: Enhancement of lints, like adding more cases or adding help messagesI-false-positiveIssue: The lint was triggered on code it shouldn't haveIssue: The lint was triggered on code it shouldn't have