Skip to content

Windows: cc compiler-probe not memoized across builds (warm re-runs the probe) #201

Description

@emmanuelm41

Surfaced by the Windows e2e arm (#82). Not a #196 regression — #196 (cache store) works here.

On the warm build the cc compiler-probe (cc --version / cc -###) re-runs instead of reading the memoized record, so probe_runs = 1 on warm. c-hello/c-depinfo assert max_probe_runs = 0 (probe memoized from cold) and fail. From the Windows results.json:

{"name": "max_probe_runs", "expected": "<= 0", "actual": "1", "passed": false}

Everything else on that phase passes — the compile is a local_hit (compiler_runs: 0), diff_match[build/foo.o] is byte-identical, verify ok. Only the probe memo isn't hitting.

Likely the probe record store/load in src/probe/cache.rs (NamedTempFile::new_in + persist, or the record lookup path) doesn't work on Windows. kache-core.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions