Uh oh!
There was an error while loading. Please reload this page.
resolve: Make disambiguators for underscore bindings module-local (take 2) - #144272
Conversation
rustbot
commented
Jul 21, 2025
r? @davidtwco rustbot has assigned @davidtwco. Use |
Uh oh!
There was an error while loading. Please reload this page.
petrochenkov
commented
Jul 22, 2025
oli-obk
commented
Jul 22, 2025
@bors r+ rollup |
bors
commented
Jul 22, 2025
resolve: Make disambiguators for underscore bindings module-local (take 2) The difference with rust-lang#144013 can be seen in the second commit. Now we just keep a separate disambiguator counter in every `Module`, instead of a global counter in `Resolver`. This will be ok for parallel import resolution because we'll need to lock the module anyway when updating `resolutions` and other fields in it. And for external modules the disabmiguator could be just passed as an argument to `define_extern`, without using any cells or locks, once rust-lang#143884 lands. Unblocks rust-lang#143884.
Rollup of 8 pull requests Successful merges: - #144094 (Ensure we codegen the main fn) - #144173 (Remove tidy checks for `tests/ui/issues/`) - #144218 (Use serde for target spec json deserialize) - #144221 (generate elf symbol version in raw-dylib) - #144234 (Fix broken TLS destructors on 32-bit win7) - #144256 (Don't ICE on non-TypeId metadata within TypeId) - #144272 (resolve: Make disambiguators for underscore bindings module-local (take 2)) - #144276 (Use less HIR in check_private_in_public.) r? `@ghost` `@rustbot` modify labels: rollup
resolve: Make disambiguators for underscore bindings module-local (take 2) The difference with rust-lang#144013 can be seen in the second commit. Now we just keep a separate disambiguator counter in every `Module`, instead of a global counter in `Resolver`. This will be ok for parallel import resolution because we'll need to lock the module anyway when updating `resolutions` and other fields in it. And for external modules the disabmiguator could be just passed as an argument to `define_extern`, without using any cells or locks, once rust-lang#143884 lands. Unblocks rust-lang#143884.
resolve: Make disambiguators for underscore bindings module-local (take 2) The difference with rust-lang#144013 can be seen in the second commit. Now we just keep a separate disambiguator counter in every `Module`, instead of a global counter in `Resolver`. This will be ok for parallel import resolution because we'll need to lock the module anyway when updating `resolutions` and other fields in it. And for external modules the disabmiguator could be just passed as an argument to `define_extern`, without using any cells or locks, once rust-lang#143884 lands. Unblocks rust-lang#143884.
matthiaskrgr
commented
Jul 23, 2025
@bors r- |
petrochenkov
commented
Jul 23, 2025
I cannot reproduce this locally neither on Windows, nor on Linux. |
petrochenkov
commented
Jul 23, 2025
@bors try jobs=x86_64-apple-1 |
resolve: Make disambiguators for underscore bindings module-local (take 2) try-job: x86_64-apple-1
This comment has been minimized.
This comment has been minimized.
💔 Test failed (CI). Failed jobs:
|
LorrensP-2158466
commented
Jul 23, 2025
I have a Mac M1. I can try and use Rosetta if you think that would help. |
This comment has been minimized.
This comment has been minimized.
The CI run on I'll remove the debugging commit and r+ this again with rollup=never. |
petrochenkov
commented
Jul 23, 2025
If you can reproduce the failure from #144325 (comment), it would be helpful, even if it's not related to this PR. |
LorrensP-2158466
commented
Jul 23, 2025
If it's not related, it would be too much of a hassle. I will have to install all x86_64 Apple packages that are used by Rust. That will take too much space and time 😆. |
petrochenkov
commented
Jul 23, 2025
@bors r=oli-obk rollup=never |
bors
commented
Jul 23, 2025
bors
commented
Jul 24, 2025
bors
commented
Jul 24, 2025
☀️ Test successful - checks-actions |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 3c30dbb (parent) -> fc5af18 (this PR) Test differencesNo test diffs found Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard fc5af1813307d25a84d633f21e2e53c9376eb547 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
rust-timer
commented
Jul 24, 2025
Finished benchmarking commit (fc5af18): comparison URL. Overall result: ❌ regressions - please read the text belowOur benchmarks found a performance regression caused by this PR. Next Steps:
@rustbot label: +perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (secondary -1.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 468.586s -> 468.258s (-0.07%) |
petrochenkov
commented
Jul 25, 2025
Not sure why this is a small regression on
|
Mark-Simulacrum
commented
Jul 29, 2025
resolve: Make disambiguators for underscore bindings module-local (take 2) The difference with rust-lang#144013 can be seen in the second commit. Now we just keep a separate disambiguator counter in every `Module`, instead of a global counter in `Resolver`. This will be ok for parallel import resolution because we'll need to lock the module anyway when updating `resolutions` and other fields in it. And for external modules the disabmiguator could be just passed as an argument to `define_extern`, without using any cells or locks, once rust-lang#143884 lands. Unblocks rust-lang#143884.
resolve: Make disambiguators for underscore bindings module-local (take 2) The difference with rust-lang#144013 can be seen in the second commit. Now we just keep a separate disambiguator counter in every `Module`, instead of a global counter in `Resolver`. This will be ok for parallel import resolution because we'll need to lock the module anyway when updating `resolutions` and other fields in it. And for external modules the disabmiguator could be just passed as an argument to `define_extern`, without using any cells or locks, once rust-lang#143884 lands. Unblocks rust-lang#143884.

The difference with #144013 can be seen in the second commit.
Now we just keep a separate disambiguator counter in every
Module, instead of a global counter inResolver.This will be ok for parallel import resolution because we'll need to lock the module anyway when updating
resolutionsand other fields in it.And for external modules the disabmiguator could be just passed as an argument to
define_extern, without using any cells or locks, once #143884 lands.Unblocks #143884.