mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	Improve error message for contract size limit error
This commit is contained in:
		
							parent
							
								
									f4421f1b69
								
							
						
					
					
						commit
						79ffa16a61
					
				| @ -83,6 +83,7 @@ | ||||
| #include <utility> | ||||
| #include <map> | ||||
| #include <limits> | ||||
| #include <string> | ||||
| 
 | ||||
| using namespace std; | ||||
| using namespace solidity; | ||||
| @ -1248,7 +1249,9 @@ void CompilerStack::assemble( | ||||
| 		m_errorReporter.warning( | ||||
| 			5574_error, | ||||
| 			_contract.location(), | ||||
| 			"Contract code size exceeds 24576 bytes (a limit introduced in Spurious Dragon). " | ||||
| 			"Contract code size is "s + | ||||
| 			to_string(compiledContract.runtimeObject.bytecode.size()) + | ||||
| 			" bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). " | ||||
| 			"This contract may not be deployable on mainnet. " | ||||
| 			"Consider enabling the optimizer (with a low \"runs\" value!), " | ||||
| 			"turning off revert strings, or using libraries." | ||||
|  | ||||
| @ -1,3 +1,5 @@ | ||||
| pragma abicoder v2; | ||||
| 
 | ||||
| contract test { | ||||
|     function f() public pure returns (string memory ret) { | ||||
|         // 27000 bytes long data | ||||
| @ -5,6 +7,6 @@ contract test { | ||||
|     } | ||||
| } | ||||
| // ==== | ||||
| // EVMVersion: >=spuriousDragon | ||||
| // EVMVersion: >byzantium | ||||
| // ---- | ||||
| // Warning 5574: (0-27133): Contract code size exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on mainnet. Consider enabling the optimizer (with a low "runs" value!), turning off revert strings, or using libraries. | ||||
| // Warning 5574: (21-27154): Contract code size is 27199 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on mainnet. Consider enabling the optimizer (with a low "runs" value!), turning off revert strings, or using libraries. | ||||
|  | ||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user