Description
Vyper 0.3.8 through 0.5.0b1 contains an optimizer miscompilation in which (msg.value | K) or (len(msg.data) | K), where K is any nonzero integer literal, is compiled to the constant 1 when used as a ternary expression branch under -O gas (the default) or -O codesize. Affected contracts use the wrong value in storage writes, arithmetic, indexes, return values, or events without warning or revert, which can record deposits incorrectly and lock funds.
No analysis available yet.
Remediation
No remediation available yet.
Tracking
Sign in to view the affected projects.
Advisories
No advisories yet.
References
History
Wed, 21 Oct 2026 00:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Vyper 0.3.8 through 0.5.0b1 contains an optimizer miscompilation in which (msg.value | K) or (len(msg.data) | K), where K is any nonzero integer literal, is compiled to the constant 1 when used as a ternary expression branch under -O gas (the default) or -O codesize. Affected contracts use the wrong value in storage writes, arithmetic, indexes, return values, or events without warning or revert, which can record deposits incorrectly and lock funds. | |
| Title | Vyper 0.3.8 through 0.5.0b1 Optimizer Miscompilation of msg.value | K in Ternary Branches | |
| First Time appeared |
Vyperlang
Vyperlang vyper |
|
| Weaknesses | CWE-682 | |
| CPEs | cpe:2.3:a:vyperlang:vyper:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Vyperlang
Vyperlang vyper |
|
| References |
| |
| Metrics |
cvssV3_1
|
Status: PUBLISHED
Assigner: VulnCheck
Published:
Updated: 2026-10-21T00:37:14.741Z
Reserved: 2026-10-20T21:48:58.503Z
Link: CVE-2026-114117
No data.
Status : Received
Published: 2026-10-21T01:17:38.070
Modified: 2026-10-21T01:17:38.070
Link: CVE-2026-114117
No data.
OpenCVE Enrichment
No data.
Weaknesses
-
CWE-682
Incorrect Calculation