Uh oh!
There was an error while loading. Please reload this page.
incr.comp.: Implement compiler diagnostic persistence. - #45472
Conversation
f63f753 to
2630b93Compare416bff1 to
8769184Compare| /// This provides access to the incr. comp. on-disk cache for query results. | ||
| /// Do not access this directly. It is only meant to be used by | ||
| /// `DepGraph::try_mark_green()` and the query infrastructure in `ty::maps`. | ||
| pub(crate) on_disk_query_result_cache: maps::OnDiskCache<'tcx>, |
There was a problem hiding this comment.
as an aside, it feels to me like "pub(crate) visibility with scary comment" is a sign that this code is not "well aligned" in terms of module structure. We should review at some point.
| // revisions: cfail1 cfail2 cfail3 | ||
| // compile-flags: -Coverflow-checks=on | ||
| // must-compile-successfully |
There was a problem hiding this comment.
this test seems good, but I wish we had some way to guarantee that the warning was coming from the red-green code. e.g., some way to assert that the relevant query that emits the warning normally was not running. But... good enough I guess.
There was a problem hiding this comment.
It will only start to be really exercised once we cache pre-trans data.
nikomatsakis
commented
Oct 30, 2017
@bors r+ |
michaelwoerister
commented
Oct 30, 2017
@bors r=nikomatsakis |
@bors r=nikomatsakis Err this PR is not in bors's queue 😕 |
kennytm
commented
Oct 30, 2017
@bors r=nikomatsakis |
bors
commented
Oct 30, 2017
📌 Commit 6faba5b has been approved by |
bors
commented
Oct 30, 2017
⌛ Testing commit 6faba5b with merge 3a74b1bd23da0d0fffa8f7e2a9b11b636d01450d... |
bors
commented
Oct 30, 2017
💔 Test failed - status-travis |
kennytm
commented
Oct 31, 2017
MIPS TLS problem same as that of #45187 (comment) and #45529 (comment). Legit. |
alexcrichton
commented
Oct 31, 2017
The linkage error here I hope will be unblocked with #45655 |
alexcrichton
commented
Oct 31, 2017
@bors: retry |
bors
commented
Nov 1, 2017
…omatsakis incr.comp.: Implement compiler diagnostic persistence. This PR implements storing and loading diagnostics that the compiler generates and thus allows for emitting warnings during incremental compilation without actually re-evaluating the thing the warning originally came from. It also lays some groundwork for storing and loading type information and MIR in the incr. comp. cache. ~~It is still work in progress:~~ - ~~There's still some documentation to be added.~~ - ~~The way anonymous queries are handled might lead to duplicated emissions of warnings. Not sure if there is a better way or how frequent such duplication would be in practice.~~ Diagnostic message duplication is addressed separately in #45519. r? @nikomatsakis
nikomatsakis
commented
Nov 1, 2017
@bors p=1 |
bors
commented
Nov 1, 2017
☀️ Test successful - status-appveyor, status-travis |
This PR implements storing and loading diagnostics that the compiler generates and thus allows for emitting warnings during incremental compilation without actually re-evaluating the thing the warning originally came from. It also lays some groundwork for storing and loading type information and MIR in the incr. comp. cache.
It is still work in progress:There's still some documentation to be added.The way anonymous queries are handled might lead to duplicated emissions of warnings. Not sure if there is a better way or how frequent such duplication would be in practice.Diagnostic message duplication is addressed separately in #45519.
r? @nikomatsakis