## Summary - Add `ensure_pch()` helper to MasterServer that builds/reuses precompiled headers via stateless workers, with preamble hash-based staleness detection (xxh3_64bits) - Fix `BuildPCHParams` to carry `preamble_bound` so the stateless worker truncates content at the preamble boundary (fixes redefinition errors when PCH included full file) - Wire PCH into both `run_build_drain` (stateful compile path) and `forward_stateless` (completion/signatureHelp path) - Add PCH state cleanup on `didClose` and hash invalidation on `didSave` ## Test plan - [x] 398 unit tests pass (including 6 new PCH tests: PreambleHash x3, PCHWorker x2, BuildPCHRequest assertion) - [x] 5 new integration tests pass (`test_pch.py`: diagnostics on open, body edit recompile, no-include file, hover with PCH, completion with PCH) - [x] 21 existing integration tests pass unchanged - [x] Build succeeds with 0 errors 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Precompiled header (PCH) caching to speed compilations and reduce edit latency * Automatic attachment of cached PCH to compile requests, improving hover and completion responsiveness * Module-aware completions expanded to include available module artifacts from other files * **Bug Fixes** * PCH cache cleared on file close; saving now triggers broader PCH invalidation to prevent stale PCH use * **Tests** * Added unit and integration tests exercising PCH build, reuse, and editor interactions <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
8 lines
78 B
C++
8 lines
78 B
C++
int square(int x) {
|
|
return x * x;
|
|
}
|
|
|
|
int main() {
|
|
return square(3);
|
|
}
|