Solidity 0.8.38 corrige un bogue de l’optimiseur Yul et améliore la compilation

Solidity 0.8.38 corrige un bogue de faible gravité dans l’optimiseur Yul, qui pouvait remplacer incorrectement des résultats de chargement ou supprimer des écritures nécessaires dans le stockage et la mémoire lorsque des variables liées aux adresses étaient réaffectées. Le problème touchait les versions de Solidity 0.8.19 à 0.8.37 lorsque l’optimiseur Yul était activé. Les notes de version indiquent qu’aucun élément ne prouve que le bogue ait été exploité. Des tests sur des contrats vérifiés par Sourcify n’ont révélé aucune modification du bytecode, ce qui laisse penser que le bogue était rare, même si du code Solidity ordinaire pouvait le déclencher sans assembly inline. La version Solidity 0.8.38 accélère également la compilation optimisée par Yul en améliorant les performances de DataFlowAnalyzer et économise une instruction dans le répartiteur des fonctions IR. Elle prépare les changements à venir de l’EVM Amsterdam et avertit que les identifiants Yul swapn, dupn et exchange deviendront des mots réservés. Les autres mises à jour comprennent des modifications des interfaces en ligne de commande et Standard JSON, des corrections supplémentaires et la suppression des sorties expérimentales Yul CFG. Cette version du compilateur est disponible sur GitHub. Le correctif de sécurité concerne les développeurs de contrats intelligents et l’infrastructure Ethereum, mais la version en elle-même n’indique aucun changement direct des fondamentaux du marché de l’ETH.
Neutral
La publication corrige un problème de sécurité du compilateur et améliore les performances de compilation, mais aucun des deux résumés ne fait état d’une exploitation, de changements généralisés du bytecode ou d’un effet immédiat sur l’activité du réseau Ethereum. L’impact direct sur le prix de l’ETH devrait donc être limité. À court terme, cette divulgation pourrait inciter les développeurs à vérifier les versions du compilateur et à mettre à jour les projets concernés, tandis que les traders pourraient y accorder peu d’attention, sauf si des éléments montrent que des contrats déjà déployés ont été compromis. À plus long terme, la correction du bug de l’optimiseur et l’amélioration des outils peuvent renforcer la confiance dans l’écosystème de développement d’Ethereum. Toutefois, les mises à jour du compilateur ne constituent pas, à elles seules, un catalyseur fort orientant le prix dans un sens ou dans l’autre ; les conditions générales du marché, les flux d’ETH, l’utilisation du réseau et les évolutions réglementaires devraient davantage peser sur les échanges. Dans l’ensemble, cette nouvelle est à considérer comme neutre pour l’ETH.