rust-lang / rust-lang/rust

Emit one "nightly feature use" error per feature, not per use

Open
#146,354 0 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

A-diagnostics D-verbose P-low T-compiler
Dominant language
Rust
Stars
119k
Forks
16.1k
PR merge metrics
PR metrics pending

Description

If using std::sync::nonpoison::rwlock::RwLock for example without #![feature(nonpoison_rwlock)], we get one error per mention of RwLock in the project. We should emit a single error per feature, at least on a per scope basis. This will reduce verbosity significantly when a project that targets a newer MSRV where these features have been stabilized is being built on an older rustc.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the example using std::sync::nonpoison::rwlock::RwLock without #![feature(nonpoison_rwlock)] and observe the repeated diagnostics. No source file or test is named in the issue, so trace the compiler path that emits nightly feature-use errors. Done means a feature produces one error per scope rather than one error per mention.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
compilers
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.