Repository navigation
Commit d8447f5
committed
prepare.cppm: extract P13 (BuildContext population) and, finally, P0
P13 -- filling BuildContext (plan, assembly, Windows resources, the
global cache, mcpp.lock, resolution.json) -- returns BuildContext
directly, so phase13_finish(PrepareState&) returns
std::expected<BuildContext, std::string> rather than the void every
other phase returns; its call site is prepare_build's own final
`return phase13_finish(state);`. No new state members: everything it
needs was already promoted for P9-P12's sake.
P0 (manifest and workspace resolution) was promoted to PrepareState in
an early commit but never actually cut into its own phase function --
an omission from that commit, caught here by checking prepare_build's
remaining size after every other phase was cut. Extracted into
phase0_manifest_and_workspace(PrepareState&), called first. Zero new
compile errors: every local P0 declares was already state.<name> from
that earlier pass.
prepare_build is now its intended shape: construct PrepareState, clear
the global flag-words buffer, call nine phase functions in order,
return the last one's result. 21 lines.
Golden fixture diff against the baseline is empty; mcpp test: 129/129.1 parent 1a49e25 commit d8447f5
1 file changed
Lines changed: 10497 additions & 10488 deletions
0 commit comments