Skip to content

Deferred ICEs (i.e. delay_span_bug) are not preserved by incremental. #65401

Closed
@eddyb

Description

@eddyb

When compiling a delay_span_bug testcase (e.g. the last snippet in #63154 (comment) on the current nightly, or any of the other examples in that issue on older compilers) with -Cincremental (or Cargo which does that by default), only the initial run will ICE.

Subsequent runs will succeed without an ICE, in the absence of any regular errors. However, changing the relevant code (e.g. adding a space) can cause the query that calls delay_span_bug to be recomputed and bring the ICE back.

IIUC, incremental compilation stores diagnostics and replays them on subsequent runs, but that appears to not apply to delay_span_bug ICEs.

cc @michaelwoerister

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-incr-compArea: Incremental compilationC-bugCategory: This is a bug.E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.I-unsoundIssue: A soundness hole (worst kind of bug), see: https://en.wikipedia.org/wiki/SoundnessT-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