Solidity 0.8.38 corregge un bug dell’ottimizzatore Yul e migliora la compilazione

Solidity 0.8.38 corregge un bug di bassa gravità nell’ottimizzatore Yul, che poteva sostituire in modo errato i risultati delle operazioni di caricamento o rimuovere scritture necessarie in memoria e nello storage quando venivano riassegnate variabili correlate agli indirizzi. Il problema interessava le versioni di Solidity dalla 0.8.19 alla 0.8.37 con l’ottimizzatore Yul attivato; le note di rilascio riportano che non vi sono prove di sfruttamento. I test condotti sui contratti verificati su Sourcify non hanno rilevato modifiche al bytecode, il che suggerisce che il bug fosse raro, sebbene potesse essere attivato anche da normale codice Solidity, senza assembly inline. La release Solidity 0.8.38 accelera inoltre la compilazione ottimizzata con Yul migliorando le prestazioni di DataFlowAnalyzer e consente di risparmiare un’istruzione nel dispatcher delle funzioni IR. Prepara anche i prossimi cambiamenti dell’EVM di Amsterdam, avvertendo che gli identificatori Yul swapn, dupn ed exchange diventeranno riservati. Tra gli altri aggiornamenti figurano modifiche all’interfaccia a riga di comando e all’interfaccia JSON standard, ulteriori correzioni e la rimozione degli output sperimentali di Yul CFG. La release del compilatore è disponibile su GitHub. La correzione di sicurezza è rilevante per gli sviluppatori di smart contract e per l’infrastruttura di Ethereum, ma la release in sé non comporta un cambiamento diretto nei fondamentali di mercato di ETH.
Neutral
La release risolve un problema di sicurezza del compilatore e migliora le prestazioni della compilazione, ma nessuno dei due riepiloghi segnala exploit, modifiche diffuse al bytecode o effetti immediati sull’attività della rete Ethereum. Di conseguenza, è probabile che l’impatto diretto sul prezzo di ETH sia limitato. Nel breve periodo, la notizia potrebbe indurre gli sviluppatori a controllare le versioni del compilatore e ad aggiornare i progetti interessati, mentre i trader potrebbero prestarvi poca attenzione, a meno che non emergano prove della compromissione di contratti già distribuiti. Nel lungo periodo, correggere il bug dell’ottimizzatore e migliorare gli strumenti può rafforzare la fiducia nell’ecosistema di sviluppo di Ethereum. Tuttavia, gli aggiornamenti del compilatore non sono di per sé un forte catalizzatore direzionale per il prezzo; è più probabile che a influenzare le quotazioni siano le condizioni generali del mercato, i flussi di ETH, l’utilizzo della rete e gli sviluppi normativi. Nel complesso, la notizia è da considerarsi neutrale per ETH.