Skip to content

Latest commit

 

History

History
26 lines (17 loc) · 1.04 KB

tip-241.md

File metadata and controls

26 lines (17 loc) · 1.04 KB
tip: 241
title: Adaptation to solidity-v0.5.16
author: yanghang8612<yanghang8612@163.com>
status: Draft
type: Standards Track
category: VM
created: 2021-03-08

Simple Summary

An adaptation to solidity-v0.5.16

Abstract

Ethereum released version 0.5.16 of solidity to fix a bug. Solidity in tron should be updated to follow this release.

Motivation

The release of solidity-v0.5.16 means this bugfix about Yul Optimizer is very necessary. We should update solidity to follow this release as soon as possible.

Specification

The Yul optimizer has a stage that removes assignments to variables that are overwritten again or are not used in all following control-flow branches. This logic incorrectly removes such assignments to variables declared inside a for loop if they can be removed in a control-flow branch that ends with break or continue even though they cannot be removed in other control-flow branches. Variables declared outside of the respective for loop are not affected. So we should update Tron Solidity to fix this bug.