Merged
Conversation
…rToString, build stage0 with x86-64
…on on linux - add reset() to IGeneratorContext interface and MockGeneratorContext - call ctx.reset() at start of generateConstructor, generateDefaultConstructorFromTypes, generateMethod, generateStaticMethod so each function starts temp numbering at %0 - revert --target-cpu=x86-64 from stage0 build (broke macos arm64 ci) fixes static-fields, static-methods stage1 failures caused by non-sequential unnamed value numbering Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… methods full reset() was clearing symbolTable.clearLocals() which wiped type info needed during self-hosting compilation, causing 'unknown property' errors. resetCounters() only resets temp/alloca/label counters and type maps, preserving the symbol table state across class method generation. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.
ci: stabilize CI pipeline, fix 4 failing stage1 linux tests
Summary
CI infrastructure
scripts/test.jsnow does smart rebuilds (skips ifdist/and.build/chadare fresh) and fails fast if vendor artifacts are missingtest:node/test:nativenpm scripts — removes magic auto-detection intest.js; callers pick the compiler explicitlyubuntu-22.04— prevents silent runner upgrades from breaking buildsvendor/andc_bridges/*.oare cached by hash ofbuild-vendor.sh,vendor-pins.sh, and bridge sources; saves 2-3 min per run on cache hitspackage-lock.json, enable npm caching — reproducible installs and faster CIscripts/vendor-pins.sh; each worktree builds its ownvendor/to prevent cross-worktree corruptionvprefix; corrected tree-sitter and picohttpparser tagsBug fixes
strings/string-lastindexof+builtins/os-basicstage1 SIGSEGV —allocainstructions were emitted inside conditional branches instead of the function entry block; fixed by usingnextAllocaReg()ingenerateLastIndexOf(search.ts) andconvertNumberToString(constants.ts)classes/static-fields+classes/static-methodsstage1 SIGSEGV — same symptom, root cause was LLVM-18; resolved by the LLVM-21 upgrade abovereq.queryStringusage andRequestinterface field order to match the nativeHttpRequeststruct layoutTest plan
node dist/chad-node.js build src/chad-native.ts -o .build/chadsucceeds