2026.9.30.2: a selected workspace member declares as the root, the clang MSVC row states its compiler version (#746), and a shared member is compiled once per configuration - #747
Merged
speak-agent merged 2 commits intoSep 30, 2026
Conversation
…states its compiler version The workspace plan's virtual root declares only its members, and the rules that grant the root's own declarations a privilege read its edges alone, so a rooted workspace's own package and a member selected with -p lost the position each held when planned as its own root (2026.9.28.3). The release canary on mcpp-language-server, whose root package overrides openkal-linux by path against a transitive version request, was refused with "Pick one". PrepareState::declaredByRoot now answers for the root and each selected member, and the kind and reference clashes, the git lock, the identity write-back, edge linkage, direct target-side candidates and the index refresh ask it. Two selected members that disagree about one dependency's checkout or link form are refused, naming both (e2e 850). mcpp#746: the version of the toolset's cl.exe, read from its VS_FIXEDFILEINFO as clang reads it, is passed as -fms-compatibility-version with the toolset words, so it is on every command and in every key (e2e 760, unit tests). e2e 851 states that a member two configurations use is compiled once in each.
Sunrisepeak
added a commit
to Sunrisepeak/GalTranslPP
that referenced
this pull request
Sep 30, 2026
…host-path variables
This was referenced Sep 30, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The release run of v2026.9.30.2 stopped at its canary on mcpp-language-server. This pull request fixes that defect, mcpp#746, and a test gap, for release as 2026.9.30.2. The tag has published nothing: every build job was skipped, and no GitHub release exists.
openkal-linuxbypathagainst theversionrequest ofopenkal-musl, and "the root's declaration wins" settles that. 2026.9.28.3 builds it; 2026.9.29.1 to 2026.9.30.2 refuse it with "Pick one".PrepareState::declaredByRoot, now answers for the root and for each selected member. Every root privilege of the planner was inventoried against it:linkageon the member's dependency edges;cl.exe, read from itsVS_FIXEDFILEINFOas clang reads it (bin/Host{x64|x86}/<target>/cl.exe), is passed as-fms-compatibility-versionwith the toolset words.cl.execan no longer be served to another image whosecl.exediffers under the same toolset directory name.Tests
VCToolsInstallDirthe pin ignores.pe_file_version,compiler_version_in_tools_dir(the target's compiler under both host directories) and the link model word.build,build -p devtoolsandtest(33 passed).Compatibility
-pselection, that overrides a transitive declaration builds again, as it did with 2026.9.28.3.*-windows-msvcrebuilds once after the upgrade, because its commands gain one word.