Skip to content

Reimpl/viewport render state - #241

Draft
gynt wants to merge 79 commits into
mainfrom
reimpl/ViewportRenderState
Draft

gynt wants to merge 79 commits into
mainfrom
reimpl/ViewportRenderState

Conversation

@gynt

@gynt gynt commented Sep 27, 2026

Copy link
Copy Markdown
Contributor

No description provided.

gynt added 30 commits September 27, 2026 22:11
gynt and others added 30 commits September 28, 2026 01:37
availableFloaterIndex, unitBatchedRenderCounterUntil6 and unitRender1..5 are
compared and bounded with signed jumps in the original (jl/jge, not jb/jae),
so every reimplementation that touched them needed an (int) cast. Typing them
int drops nine casts; generated code is unchanged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KGVnoVPWJMmdidJaxX18se
build.bat gives each worktree its own _MSPDBSRV_ENDPOINT_ and kills its own
mspdbsrv.exe before building. build_quiet.py --keep-going calls cmakew directly
and syntax_check.py calls cl.exe directly, so neither inherited that, and a
server already wedged before the build started survived build.bat kill and
still failed with C1090.

common.build_env derives the same endpoint name; common.kill_pdb_server stops
only this worktree instance; build_quiet.py retries the build once after a
C1090/C1033.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NaSkbxngnm28vFqxp3wNZs
(cherry picked from commit ac343b4)
The cherry-picked fix recovers from a wedged mspdbsrv.exe by stopping this
worktree''s instance and building again. C1090 has a second cause that recovery
cannot reach: the endpoint name itself can wedge, outliving every mspdbsrv.exe
that uses it, so retrying into the same name fails forever.

Six consecutive builds failed that way here. Killing the server did not help,
nor did deleting the PCH and both PDBs; the endpoint was correctly unique, not
inherited from the environment, and the toolchain binaries matched a worktree
that was building fine at that moment. The same tree then built first try under
a different endpoint name, which is what identified the cause.

build_quiet.py now takes a second retry on a fresh endpoint, and build_env()
accepts an explicit one so a caller can pin it for a session.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01A4PvfebpUzaMXy93EutBjJ
(cherry picked from commit 2826353)

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant