rust-analyzer/crates
Chayim Refael Friedman 1fed2403d1 Properly resolve prelude paths inside modules inside blocks
I.e. the following situation:
```
fn foo() {
    mod bar {
        fn qux() {
            // Prelude path here (e.g. macro use prelude or extern prelude).
        }
    }
}
```
Those were previously unresolved, because, in order to support `self` and `super` properly, since #15148 we do not ascend block paths when there is a module in between, but only crate def maps register preludes, not block def maps, and we can't change this because block def map prelude can always be overridden by another block. E.g.
```
fn foo() {
    struct WithTheSameNameAsPreludeItem;
    {
        WithTheSameNameAsPreludeItem
    }
}
```
Here `WithTheSameNameAsPreludeItem` refer to the item from the top block, but if we would register prelude items in each block the child block would overwrite it incorrectly.
2024-10-27 19:23:12 +02:00
..
base-db chore: rename salsa to ra_salsa 2024-10-14 10:09:22 -04:00
cfg Gate #[test] expansion under cfg(test). 2024-09-30 00:12:45 +03:00
hir Merge pull request #18410 from Veykril/veykril/push-lvwxpnowqrxk 2024-10-27 10:44:32 +00:00
hir-def Properly resolve prelude paths inside modules inside blocks 2024-10-27 19:23:12 +02:00
hir-expand Split macro-error diagnostic so users can ignore only parts of it 2024-10-27 02:24:15 +02:00
hir-ty Correctly resolve variables and labels from before macro definition in macro expansion 2024-10-22 21:49:17 +03:00
ide Invert token iteration order in macro mapping 2024-10-27 11:32:12 +01:00
ide-assists Merge pull request #18419 from ChayimFriedman2/leading-or 2024-10-27 11:25:16 +00:00
ide-completion Auto merge of #18360 - roife:safe-kw-3, r=Veykril 2024-10-21 17:59:05 +00:00
ide-db Invert token iteration order in macro mapping 2024-10-27 11:32:12 +01:00
ide-diagnostics Properly resolve prelude paths inside modules inside blocks 2024-10-27 19:23:12 +02:00
ide-ssr minor: Remove intermediate allocations 2024-10-24 13:34:32 +02:00
intern Merge from rust-lang/rust 2024-09-25 09:00:53 +03:00
limit Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
load-cargo Gate #[test] expansion under cfg(test). 2024-09-30 00:12:45 +03:00
mbe fix: FIx mbe bench tests being iteration order dependent 2024-10-21 11:54:49 +02:00
parser Merge pull request #18419 from ChayimFriedman2/leading-or 2024-10-27 11:25:16 +00:00
paths Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
proc-macro-api Fix new nightly lints 2024-10-22 11:48:41 +02:00
proc-macro-srv fix: Fix TokenStream::to_string implementation dropping quotation marks 2024-08-29 08:45:35 +02:00
proc-macro-srv-cli Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
profile Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
project-model internal: Improve proc-macro error msg for failed build scripts 2024-10-24 13:45:11 +02:00
ra-salsa Fix new nightly lints 2024-10-22 11:48:41 +02:00
rust-analyzer Merge pull request #18408 from Veykril/veykril/push-ulxyznwzokut 2024-10-25 05:55:32 +00:00
span internal: log original syntax on panic 2024-10-23 12:56:00 -07:00
stdx Use crossbeam-channel from the workspace 2024-08-09 23:48:03 +02:00
syntax Put leading | in patterns under OrPat 2024-10-27 13:11:38 +02:00
syntax-bridge When glueing together tokens from macros, merge their spans 2024-09-29 22:58:15 +03:00
test-fixture Always cache macro expansions' root node in Semantics 2024-09-17 00:19:39 +03:00
test-utils fix: Always explicitly set trait ref self types when lowering 2024-09-06 14:06:41 +02:00
text-edit Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
toolchain Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
tt Fix new nightly lints 2024-10-22 11:48:41 +02:00
vfs Rename object_safety to dyn_compatibility 2024-09-29 07:26:45 -04:00
vfs-notify Auto merge of #17843 - mo8it:flycheck, r=Veykril 2024-08-12 09:27:47 +00:00