Skip to content

[incremental] don't use NodeId in the HIR, but something local to an item #40303

Closed
@nikomatsakis

Description

@nikomatsakis

The current NodeId design is hostile to incremental compilation because a change anywhere in the HIR affects numbering everywhere (particularly when desugarings are taken into account). @michaelwoerister encountered problems with metadata hashing being very unstable as a result; it also makes loading/unloading more painful.

At the compiler design sprint, @michaelwoerister and @eddyb hatched a plan to make all NodeId usage in the HIR be replaced with "local ids", that are relative to an enclosing item (or something like that). I'll let them describe it here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-incr-compArea: Incremental compilationC-cleanupCategory: PRs that clean code up or issues documenting cleanup.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions