Skip to content

ast: make each use declaration atomic - #416

Merged
LesterEvSe merged 1 commit into
masterfrom
feature/transactional-imports
Sep 8, 2026
Merged

ast: make each use declaration atomic#416
LesterEvSe merged 1 commit into
masterfrom
feature/transactional-imports

Conversation

@KyrylR

@KyrylR KyrylR commented Sep 7, 2026

Copy link
Copy Markdown
Collaborator

This makes each use declaration atomic: either every import succeeds, or the scope remains unchanged

Previously, use source::{Good, Missing}; could insert Good before failing on Missing. The change stages imports temporarily and commits them only after the whole declaration succeeds

This prepares the compiler to recover from errors and report multiple diagnostics without leaked imports affecting later analysis

@KyrylR
KyrylR requested a review from LesterEvSe September 7, 2026 11:05
@KyrylR KyrylR self-assigned this Sep 7, 2026
@KyrylR
KyrylR requested a review from delta1 as a code owner September 7, 2026 11:05

@LesterEvSe LesterEvSe left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 4a3cc94; tested locally with just check and just check_fuzz

@LesterEvSe
LesterEvSe merged commit 681d04b into master Sep 8, 2026
12 checks passed
@LesterEvSe
LesterEvSe deleted the feature/transactional-imports branch September 8, 2026 10:18
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.

2 participants