Skip to content

internal: Don't rely on FxHashSet order#22604

Merged
Veykril merged 1 commit into
rust-lang:masterfrom
Wilfred:scip_hashset_order
Jun 19, 2026
Merged

internal: Don't rely on FxHashSet order#22604
Veykril merged 1 commit into
rust-lang:masterfrom
Wilfred:scip_hashset_order

Conversation

@Wilfred

@Wilfred Wilfred commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Previously, SCIP generation would iterate over all the external symbols by calling .difference() on an FxHashSet and iterating over them. If any tokens had a moniker but no definition, the loop would terminate early.

AFAICS this code is unreachable today (all the monikers also have definitions), but the code is clearly wrong. Ensure we process all tokens regardless of the order.

Previously, SCIP generation would iterate over all the external
symbols by calling `.difference()` on an FxHashSet and iterating over
them. If any tokens had a moniker but no definition, the loop would
terminate early.

AFAICS this code is unreachable today (all the monikers also have
definitions), but the code is clearly wrong. Ensure we process all
tokens regardless of the order.
@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 17, 2026
@Veykril Veykril added this pull request to the merge queue Jun 19, 2026
Merged via the queue into rust-lang:master with commit d1cfbe2 Jun 19, 2026
18 checks passed
@rustbot rustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 19, 2026
@Wilfred Wilfred deleted the scip_hashset_order branch June 19, 2026 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants