//! Per-crate failpoint wrapper. See `docs/failpoint-testing.md` for the
//! conventions enforced here: source sites never reference `fail::` directly;
//! they go through `crate::failpoint!`.
//!
//! With `feature = "failpoints"` off, both forms expand to `()` and the
//! `fail` crate is not in the build graph.