diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2021-05-21 17:29:31 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2021-05-21 17:29:31 +0100 |
commit | de403b10448e23f232804596538de92fc57203d6 (patch) | |
tree | dcf8ccdfd09d282f14e5e5c24057496caaa3a4ff /crates/hir_def/src/body/tests/block.rs | |
parent | eb08a27f1bd31cc15db4893dded60663effaf3f9 (diff) | |
parent | d00bc9c2fc211650bf3d16b0e77fc7dac20f34c5 (diff) |
Merge #8910
8910: Don't lower extern block in the ItemTree r=jonas-schievink a=jonas-schievink
The ItemTree lowering code used to attach attributes on an `extern {}` block to all the children. This is wrong and causes problems with attribute resolution that manifested as a hang.
This PR treats extern blocks as first-class items in the ItemTree and lowers its contents in the `ModCollector` instead.
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8414#issuecomment-845607923
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8905
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8909
bors r+
Co-authored-by: Jonas Schievink <[email protected]>
Diffstat (limited to 'crates/hir_def/src/body/tests/block.rs')
0 files changed, 0 insertions, 0 deletions