refactor: Use Config::emit_diagnostic
to emit warnings
#12531
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
#12235 is tracking user control over warnings. Part of the effort means moving warnings from being emitted by
Shell
toConfig
. This is for a few reasons:Shell
should not know what a user wants to do with a given warning other than emit anything that is passed to itConfig
should (eventually) know what a user wants to do for each warningcargo
is attempting to display, be thatforbid
,deny
,warn
, orallow
.In both scenarios, it makes sense to move things to
Config
, which is what this PR does. It adds a new functionConfig::emit_diagnostic
, which is a copy ofShell::warn
, and moves all calls fromShell::warn
to this new function.