Skip to content

feat(slang): inheritance - #697

Draft
hedgar2017 wants to merge 1 commit into
app-slang-inline-assemblyfrom
az-slang-inheritance
Draft

feat(slang): inheritance#697
hedgar2017 wants to merge 1 commit into
app-slang-inline-assemblyfrom
az-slang-inheritance

Conversation

@hedgar2017

@hedgar2017 hedgar2017 commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Lowers contracts with contract bases in the Slang frontend: inherited state and getters, virtual dispatch to the most-derived override, super and contract-qualified calls, and the base-constructor chain with each argument list evaluated at the call to its target. The tester's Slang view follows the compilation API of the revision this pins.

cargo run-tester-slang: 17869 -> 18385 passed.

https://claude.ai/code/session_01U1vBrn8EeERepkVEG6CX46

@hedgar2017
hedgar2017 force-pushed the az-slang-inheritance branch 2 times, most recently from 7cbb0fa to 586eea6 Compare September 8, 2026 07:23
@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Coverage Summary

Crate Line Coverage Function Coverage
solx 🟢 83.6% 🔴 20.0%
solx-benchmark-converter 🔴 0.0% 🔴 0.0%
solx-codegen-evm 🔴 25.6% 🔴 13.4%
solx-compiler-downloader 🔴 0.0% 🔴 0.0%
solx-core 🔴 38.8% 🔴 47.7%
solx-dev 🔴 2.4% 🔴 3.0%
solx-evm-assembly 🔴 0.0% 🔴 0.0%
solx-mlir 🟡 50.4% 🔴 45.3%
solx-slang 🔴 21.7% 🔴 30.9%
solx-solc-test-adapter 🔴 1.7% 🔴 2.1%
solx-standard-json 🔴 42.8% 🔴 47.7%
solx-tester 🔴 36.2% 🔴 34.0%
solx-utils 🔴 29.0% 🔴 32.5%
solx-yul 🔴 0.0% 🔴 0.0%
Total 🔴 10.9% 🔴 13.2%

Codecov Report | HTML Report | Workflow Run

@hedgar2017
hedgar2017 force-pushed the az-slang-inheritance branch 4 times, most recently from 0e4889d to 43cd122 Compare September 9, 2026 08:17
Lowers a contract with contract bases in the Slang frontend: the hierarchy's state variables and getters, the resolved function set with a bare call dispatched to the most-derived override, `super` and contract-qualified calls, and the constructor chain, where each constructor calls the next with the argument list evaluated at that call, as legacy codegen has it, binding the parameters of the contract providing the list from the values threaded down the chain. The linker names an object missing from the build instead of leaving an undefined symbol, the Yul sign-extend wrapper uses the operand setters the pinned dialect declares, and the tester's Slang view follows the compilation API the pinned revision has.

Claude-Session: https://claude.ai/code/session_01U1vBrn8EeERepkVEG6CX46
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