about summary refs log tree commit diff
path: root/tests/coverage/branch/lazy-boolean.coverage
diff options
context:
space:
mode:
authorChayim Refael Friedman <chayimfr@gmail.com>2024-11-21 02:21:16 +0200
committerChayim Refael Friedman <chayimfr@gmail.com>2024-12-04 14:22:56 +0200
commit1aae52210a57e48d03dcd9f40b1ba04d20ff4ca7 (patch)
treeffb1b79d5d78f269f731df7c503ffc3ec4d19dd4 /tests/coverage/branch/lazy-boolean.coverage
parent63acf60253262e31d8129c9134b9b4a5aab75453 (diff)
downloadrust-1aae52210a57e48d03dcd9f40b1ba04d20ff4ca7.tar.gz
rust-1aae52210a57e48d03dcd9f40b1ba04d20ff4ca7.zip
Complete diagnostics in ty lowering groundwork
Implement diagnostics in all places left: generics (predicates, defaults, const params' types), fields, and type aliases.

Unfortunately this results in a 20mb addition in `analysis-stats .` due to many type methods returning an addition diagnostics result now (even if it's `None` in most cases). I'm not sure if this can be improved.

An alternative strategy that can prevent the memory usage growth is to never produce diagnostics in hir-ty methods. Instead, lower all types in the hir crate when computing diagnostics from scratch (with diagnostics this time). But this has two serious disadvantages:
 1. This can cause code duplication (although it can probably be not that bad, it will still mean a lot more code).
 2. I believe we eventually want to compute diagnostics for the *entire* workspace (either on-type or on-save or something alike), so users can know when they have diagnostics even in inactive files. Choosing this approach will mean we lose all precomputed salsa queries. For one file this is fine, for the whole workspace this will be very slow.
Diffstat (limited to 'tests/coverage/branch/lazy-boolean.coverage')
0 files changed, 0 insertions, 0 deletions