-
Notifications
You must be signed in to change notification settings - Fork 13.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fewer early errors #118635
Fewer early errors #118635
Conversation
@davidtwco: I think this is probably desirable. It does add two |
This comment has been minimized.
This comment has been minimized.
1e73a7d
to
bc4cdce
Compare
Ugh, another early warning was added since I last updated my repo. I've fixed the compile error, but it required another |
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is good, a few more untranslatable diagnostics aren't the worst in the world, we can fix those with time. r=me with CI passing unless you think the changes will need another look.
`build_session` is passed an `EarlyErrorHandler` and then constructs a `Handler`. But the `EarlyErrorHandler` is still used for some time after that. This commit changes `build_session` so it consumes the passed `EarlyErrorHandler`, and also drops it as soon as the `Handler` is built. As a result, `parse_cfg` and `parse_check_cfg` now take a `Handler` instead of an `EarlyErrorHandler`.
bc4cdce
to
6184099
Compare
I fixed the test failures. The problem was that jobserver warnings are now done via I'm quite uncertain about whether this PR should be merged, because it causes us to count this compiler invocation warnings the same as warnings about the code being compiled. The same thing now happens with self-profile warnings, e.g. we used to do this:
and now we do this:
Or, for a program with a code warning, we go from this:
to this:
|
I'm not sure that this is an issue. I think these are as much warnings as those about the code being compiled, they're there because the user would probably want to know what those warnings are telling them, and so should be included in the overall count. I'd maybe feel differently if these were warnings that, for some invocations, would just appear unconditionally, but I don't think that's the case here. I think the early error functions mostly existed because we didn't always have a |
@bors r+ |
☀️ Test successful - checks-actions |
Finished benchmarking commit (7df0c21): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 674.699s -> 676.203s (0.22%) |
2. jobserver::initialize_checked should call before build_session, still should use EarlyErrorHandler, so revert stderr change in rust-lang#118635
r? @davidtwco