mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	Merge pull request #9717 from ethereum/prepare071
Prepare release of 0.7.1.
This commit is contained in:
		
						commit
						840791a470
					
				
							
								
								
									
										24
									
								
								Changelog.md
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								Changelog.md
									
									
									
									
									
								
							| @ -1,4 +1,4 @@ | |||||||
| ### 0.7.1 (unreleased) | ### 0.7.1 (2020-09-02) | ||||||
| 
 | 
 | ||||||
| Language Features: | Language Features: | ||||||
|  * Allow function definitions outside of contracts, behaving much like internal library functions. |  * Allow function definitions outside of contracts, behaving much like internal library functions. | ||||||
| @ -6,16 +6,19 @@ Language Features: | |||||||
| 
 | 
 | ||||||
| Compiler Features: | Compiler Features: | ||||||
|  * SMTChecker: Add underflow and overflow as verification conditions in the CHC engine. |  * SMTChecker: Add underflow and overflow as verification conditions in the CHC engine. | ||||||
|  * Standard JSON Interface: Do not run EVM bytecode code generation, if only Yul IR or EWasm output is requested. |  | ||||||
|  * Yul: Report error when using non-string literals for ``datasize()``, ``dataoffset()``, ``linkersymbol()``, ``loadimmutable()``, ``setimmutable()``. |  | ||||||
|  * Yul Optimizer: LoopInvariantCodeMotion can move reading operations outside for-loops as long as the affected area is not modified inside the loop. |  | ||||||
|  * SMTChecker: Support conditional operator. |  | ||||||
|  * SMTChecker: Support bitwise or, xor and not operators. |  * SMTChecker: Support bitwise or, xor and not operators. | ||||||
|  |  * SMTChecker: Support conditional operator. | ||||||
|  |  * Standard JSON Interface: Do not run EVM bytecode code generation, if only Yul IR or EWasm output is requested. | ||||||
|  |  * Yul Optimizer: LoopInvariantCodeMotion can move reading operations outside for-loops as long as the affected area is not modified inside the loop. | ||||||
|  |  * Yul: Report error when using non-string literals for ``datasize()``, ``dataoffset()``, ``linkersymbol()``, ``loadimmutable()``, ``setimmutable()``. | ||||||
| 
 | 
 | ||||||
| Bugfixes: | Bugfixes: | ||||||
|  * AST: Remove ``null`` member values also when the compiler is used in standard-json-mode. |  * AST: Remove ``null`` member values also when the compiler is used in standard-json-mode. | ||||||
|  |  * General: Allow `type(Contract).name` for abstract contracts and interfaces. | ||||||
|  |  * Immutables: Disallow assigning immutables more than once during their declaration. | ||||||
|  * Immutables: Properly treat complex assignment and increment/decrement as both reading and writing and thus disallow it everywhere for immutable variables. |  * Immutables: Properly treat complex assignment and increment/decrement as both reading and writing and thus disallow it everywhere for immutable variables. | ||||||
|  * Optimizer: Keep side-effects of ``x`` in ``byte(a, shr(b, x))`` even if the constants ``a`` and ``b`` would make the expression zero unconditionally. This optimizer rule is very hard if not impossible to trigger in a way that it can result in invalid code, though. |  * Optimizer: Keep side-effects of ``x`` in ``byte(a, shr(b, x))`` even if the constants ``a`` and ``b`` would make the expression zero unconditionally. This optimizer rule is very hard if not impossible to trigger in a way that it can result in invalid code, though. | ||||||
|  |  * References Resolver: Fix internal bug when using constructor for library. | ||||||
|  * Scanner: Fix bug where whitespace would be allowed within the ``->`` token (e.g. ``function f() -   > x {}`` becomes invalid in inline assembly and Yul). |  * Scanner: Fix bug where whitespace would be allowed within the ``->`` token (e.g. ``function f() -   > x {}`` becomes invalid in inline assembly and Yul). | ||||||
|  * SMTChecker: Fix internal error in BMC function inlining. |  * SMTChecker: Fix internal error in BMC function inlining. | ||||||
|  * SMTChecker: Fix internal error on array implicit conversion. |  * SMTChecker: Fix internal error on array implicit conversion. | ||||||
| @ -24,14 +27,11 @@ Bugfixes: | |||||||
|  * SMTChecker: Fix internal error on tuple assignment. |  * SMTChecker: Fix internal error on tuple assignment. | ||||||
|  * SMTChecker: Fix internal error on tuples of one element that have tuple type. |  * SMTChecker: Fix internal error on tuples of one element that have tuple type. | ||||||
|  * SMTChecker: Fix soundness of array ``pop``. |  * SMTChecker: Fix soundness of array ``pop``. | ||||||
|  * References Resolver: Fix internal bug when using constructor for library. |  | ||||||
|  * Yul Optimizer: Make function inlining order more resilient to whether or not unrelated source files are present. |  | ||||||
|  * Yul Optimizer: Ensure that Yul keywords are not mistakenly used by the NameDispenser and VarNameCleaners. The bug would manifest as uncompilable code. |  | ||||||
|  * Type Checker: Disallow signed literals as exponent in exponentiation operator. |  | ||||||
|  * Allow `type(Contract).name` for abstract contracts and interfaces. |  | ||||||
|  * Type Checker: Disallow structs containing nested mapping in memory as parameters for library functions. |  | ||||||
|  * Type Checker: Disallow ``using for`` directive inside interfaces. |  * Type Checker: Disallow ``using for`` directive inside interfaces. | ||||||
|  * Immutables: Disallow assigning immutables more than once during their declaration. |  * Type Checker: Disallow signed literals as exponent in exponentiation operator. | ||||||
|  |  * Type Checker: Disallow structs containing nested mapping in memory as parameters for library functions. | ||||||
|  |  * Yul Optimizer: Ensure that Yul keywords are not mistakenly used by the NameDispenser and VarNameCleaners. The bug would manifest as uncompilable code. | ||||||
|  |  * Yul Optimizer: Make function inlining order more resilient to whether or not unrelated source files are present. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ### 0.7.0 (2020-07-28) | ### 0.7.0 (2020-07-28) | ||||||
|  | |||||||
| @ -1185,5 +1185,9 @@ | |||||||
|     "0.7.0": { |     "0.7.0": { | ||||||
|         "bugs": [], |         "bugs": [], | ||||||
|         "released": "2020-07-28" |         "released": "2020-07-28" | ||||||
|  |     }, | ||||||
|  |     "0.7.1": { | ||||||
|  |         "bugs": [], | ||||||
|  |         "released": "2020-09-02" | ||||||
|     } |     } | ||||||
| } | } | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user