Skip to main content

CODEGEN_FINGERPRINT

Constant CODEGEN_FINGERPRINT 

Source
pub const CODEGEN_FINGERPRINT: &str = "6ec986bc8bdd94699b194db6367e5aaf1d2c96d93764574fb6d43c5472da2b98";
Expand description

Build-time fingerprint of the compiler front-end — the lexer, parser, IR, and code generator — computed in build.rs from those crates’ source and baked in via cargo:rustc-env. Folded into the cache key so a compiler change that alters emitted bytecode for unchanged source invalidates stale entries automatically, within a single version, with no manual cache wipe. HARN_VERSION only busts the cache across release bumps; this closes the same gap for the within-version compiler edits that masked #2610. See #2621.

It reaches a lookup two ways. The header comparison is what rejects a stale artifact, and is the only one the entry fast path can afford, since that path proves its graph from a manifest and never recomputes the context hash (#5610). Folding it into the context hash as well is what keeps two builds’ module artifacts on distinct filenames rather than overwriting each other, since module_filename is derived from that hash.