release resolc v1.2.0 (#534)

Supported `polkadot-sdk` rev: `2603`

### Changed

- Updated `LLVM` from `21.1.8` to LLVM `22.1.4`

### Added

- Support for solc v0.8.35.

### Fixed

- A constant folding bug causing incorrect translation of a signed
remainder edge case. The affected pattern (Solidity % or Yul smod):
  - SREM over the two constant operands `type(int256).min` and `-1`.
- At least one of the two constants needs folding (i.e. not just
`type(int256).min % -1`),
and is written specifically such that solc doesn't fold but LLVM does,
resulting in UB (signed-overflow).
- Fix `mulmod` returning out-of-range result for large moduli.

---------

Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
This commit is contained in:
xermicus authored and GitHub committed 2026-05-28 23:20:11 +02:00
1 parent ae8033130b
commit b2c025faad
14 files changed
+35 -31

No files matched your search

Generated
+11 -11
View File
@@ -5091,7 +5091,7 @@ checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0"
[[package]]
name = "lld-sys"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"cc",
"libc",
@@ -9347,7 +9347,7 @@ dependencies = [
[[package]]
name = "resolc"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"anyhow",
"clap",
@@ -9389,11 +9389,11 @@ dependencies = [
[[package]]
name = "revive-build-utils"
version = "1.1.0"
version = "1.2.0"
[[package]]
name = "revive-builtins"
version = "1.0.0"
version = "1.1.0"
dependencies = [
"revive-build-utils",
]
@@ -9425,7 +9425,7 @@ dependencies = [
[[package]]
name = "revive-integration"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"alloy-primitives",
"alloy-sol-types",
@@ -9453,7 +9453,7 @@ dependencies = [
[[package]]
name = "revive-llvm-builder"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"anyhow",
"assert_cmd",
@@ -9473,7 +9473,7 @@ dependencies = [
[[package]]
name = "revive-llvm-context"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"anyhow",
"hex",
@@ -9494,7 +9494,7 @@ dependencies = [
[[package]]
name = "revive-runner"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"alloy-primitives",
"anyhow",
@@ -9514,7 +9514,7 @@ dependencies = [
[[package]]
name = "revive-runtime-api"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"anyhow",
"inkwell",
@@ -9537,7 +9537,7 @@ dependencies = [
[[package]]
name = "revive-stdlib"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"inkwell",
"revive-build-utils",
@@ -9545,7 +9545,7 @@ dependencies = [
[[package]]
name = "revive-yul"
version = "1.1.0"
version = "1.2.0"
dependencies = [
"anyhow",
"inkwell",