era-compiler-solidity icon indicating copy to clipboard operation
era-compiler-solidity copied to clipboard

feat: switch to the default codegen with ZKsync solc

Open hedgar2017 opened this issue 9 months ago • 0 comments

What ❔

Switches to the default codegen with the ZKsync fork of solc.

Why ❔

  1. Users always expect it do be so because it is so for solc, and there is no way to lift this expectation.
  2. Yul codegen is extremely buggy. We've received almost 10 reports about miscompilations or output indeterminism since launch, two of them this weekend:
    • https://github.com/zkSync-Community-Hub/zksync-developers/discussions/507 (https://github.com/matter-labs/era-compiler-solidity/issues/75)
    • https://github.com/zkSync-Community-Hub/zksync-developers/discussions/513
  3. The ZKsync solc doesn't have any limitations with the old codegen anymore.

Checklist

  • [x] PR title corresponds to the body of PR (we generate changelog entries from PRs).
  • [x] Tests for the changes have been added / updated.
  • [x] Documentation comments have been added / updated.
  • [x] Code has been formatted via cargo fmt and checked with cargo clippy.

hedgar2017 avatar May 13 '24 10:05 hedgar2017