Close Menu
Altcoin ObserverAltcoin Observer
  • Regulation
  • Bitcoin
  • Altcoins
  • Market
  • Analysis
  • DeFi
  • Security
  • Ethereum
Categories
  • Altcoins (3,086)
  • Analysis (3,214)
  • Bitcoin (3,828)
  • Blockchain (2,157)
  • DeFi (2,623)
  • Ethereum (2,570)
  • Event (118)
  • Exclusive Deep Dive (1)
  • Landscape Ads (2)
  • Market (2,714)
  • Press Releases (12)
  • Reddit (2,516)
  • Regulation (2,461)
  • Security (3,638)
  • Thought Leadership (3)
  • Videos (44)
Hand picked
  • 5 Straight Red Months For Bitcoin – One More And Its An ATH
  • DUAL is available for exchange!
  • New income hierarchy? How Hyperliquid Overtakes Traditional Channels
  • Ethereum Price Rises, $2,150 Resistance Under Threat
  • India Leads the World in Crypto Adoption with 119 Million Users
We are social
  • Facebook
  • Twitter
  • Instagram
  • YouTube
Facebook X (Twitter) Instagram
  • About us
  • Disclaimer
  • Terms of service
  • Privacy policy
  • Contact us
Facebook X (Twitter) Instagram YouTube LinkedIn
Altcoin ObserverAltcoin Observer
  • Regulation
  • Bitcoin
  • Altcoins
  • Market
  • Analysis
  • DeFi
  • Security
  • Ethereum
Events
Altcoin ObserverAltcoin Observer
Home»Ethereum»Solidity optimizer bug | Ethereum Foundation Blog
Ethereum

Solidity optimizer bug | Ethereum Foundation Blog

March 1, 2025No Comments
Share Facebook Twitter Pinterest LinkedIn Tumblr Reddit Telegram Email
Share
Facebook Twitter LinkedIn Pinterest Email


A bug in the solidity optimizer has been reported through the Ethereum Foundation Bonus Programby Christoph Jentzsch. This bug is corrected in 2017-05-03, with the release of Solidity 0.4.11.

Background

The bug in question wondered how the optimizer optimizes the constants in the byte code. By “constant of bytes code”, we mean everything that is PUSHEd on the battery (not to be confused with the solidity constants). For example, if the value 0xffffffffffffffffffffffffffffffffffffffffffffffffff East PUSHED, then the optimizer can do PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffreor choose to code this as PUSH1 1; NOT;.

An error in the optimizer made optimizations of the constant of bytes code stranded for certain cases by producing a routine which did not properly recreate the original constant.

The behavior described in the reported bug was found in a contract in which a method has stopped operating when another method – completely unrelated – was added to the contract. After analysis, it was determined that a certain number of conditions should exist at the same time for the bug to trigger. Any combination of conditions that would trigger the bug would systematically have the following conditions:

  1. The constant must start with 0xff … And finish with a long series of zeros (or vice versa).
  2. The same constant should be used in several locations, so that the optimizer chooses to optimize this particular constant. Alternatively, it should be used in the manufacturer, which optimizes size rather than gas.

In addition to the two conditions above, additional and more complicated conditions are necessary.

Analysis

This bug has been present in all published versions of Solidey since at least as far as summer 2015 to the present day. Although the bug has been present since 2015, it seems very difficult to trigger by “random” code:

We carried out a static analysis of all the contractual code deployed on the blockchain, and we did not find any occurrence of such a generated routine. Note, the fact that we have not found a bug in all the contract code does not guarantee the absence of such events.

Improvement

In order to provide better transparency and increased awareness of bugs in solidity, we have started to export information on vulnerabilities linked to solidity as JSON-FILS in the repository of the solidity code (1,,2). We hope that Block Explorers will integrate this information as well as other information related to contracts.

Etherscan has already implemented this, which can be seen here And here.

Regarding the bug itself, we added a mini-EVM to the optimizer which checks the accuracy of each routine generated at the time of the compilation.

In addition, the work has already started on an entirely specified and more high level intermediate language. Future optimizer routines on this language will be much easier to understand and audit and it will replace the current optimizer.



Source link

Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleOpensea Tops in NFT users and trading sales in February 2025
Next Article DEFI adoption on emerging markets faces the hedge user experience, explains the CEO of Okto Wallet Rohit Jain

Related Posts

Ethereum

Charles Schwab’s Bitcoin and Ethereum Rollout Shows Crypto Extending Deeper into Mainstream Brokerage Accounts

April 5, 2026
Ethereum

Ethereum could hit $40,000 and beat Bitcoin: Standard Chartered

April 4, 2026
Ethereum

Ethereum Squeeze Intensifies Near $2,000 – Volatility About to Explode?

April 4, 2026
Add A Comment
Leave A Reply Cancel Reply

Single Page Post
Share
  • Facebook
  • Twitter
  • Instagram
  • YouTube
Featured Content
Event

Global Games Show Riyadh: The Ultimate Creator & Influencer Hub

March 31, 2026

The fast-evolving gaming ecosystem of Riyadh is powered by solid national investment, a flourishing esports…

Event

AI Future: The leading international forum on Artificial Intelligence & Web3

March 30, 2026

On April 14–15, AI Future will gather developers, researchers, entrepreneurs, investors, and representatives of major…

1 2 3 … 81 Next
  • Facebook
  • Twitter
  • Instagram
  • YouTube

New income hierarchy? How Hyperliquid Overtakes Traditional Channels

April 6, 2026

Recap: Here’s how Bitcoin, Ethereum, Solana and XRP ETFs performed this week

April 6, 2026

Bitcoin and Ethereum Trend Amid “Extreme Fear” – But THIS Signal Warns Caution

April 5, 2026
Facebook X (Twitter) Instagram LinkedIn
  • About us
  • Disclaimer
  • Terms of service
  • Privacy policy
  • Contact us
© 2026 Altcoin Observer. all rights reserved by Tech Team.

Type above and press Enter to search. Press Esc to cancel.

bitcoin
Bitcoin (BTC) $ 69,133.00
ethereum
Ethereum (ETH) $ 2,135.22
tether
Tether (USDT) $ 0.999678
xrp
XRP (XRP) $ 1.34
bnb
BNB (BNB) $ 603.72
usd-coin
USDC (USDC) $ 0.999869
solana
Solana (SOL) $ 81.83
tron
TRON (TRX) $ 0.317628
figure-heloc
Figure Heloc (FIGR_HELOC) $ 1.03
staked-ether
Lido Staked Ether (STETH) $ 2,265.05