Merge remote-tracking branch 'origin/develop' into breaking

This commit is contained in:
chriseth
2020-12-09 15:24:49 +01:00
51 changed files with 481 additions and 340 deletions
+2 -2
View File
@@ -1,5 +1,5 @@
Warning: Unused local variable.
--> viair_subobjects/input.sol:7:9:
--> viair_subobjects/input.sol:8:9:
|
7 | C c = new C();
8 | C c = new C();
| ^^^
@@ -1,5 +1,6 @@
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.6.0;
pragma abicoder v2;
contract C {}
contract D {
+14 -14
View File
@@ -12,17 +12,17 @@ Optimized IR:
* !USE AT YOUR OWN RISK! *
*******************************************************/
object "C_2" {
object "C_3" {
code {
{
mstore(64, 128)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_2_deployed")
codecopy(0, dataoffset("C_2_deployed"), _1)
let _1 := datasize("C_3_deployed")
codecopy(0, dataoffset("C_3_deployed"), _1)
return(0, _1)
}
}
object "C_2_deployed" {
object "C_3_deployed" {
code {
{
mstore(64, 128)
@@ -46,17 +46,17 @@ Optimized IR:
* !USE AT YOUR OWN RISK! *
*******************************************************/
object "D_15" {
object "D_16" {
code {
{
mstore(64, 128)
if callvalue() { revert(0, 0) }
let _1 := datasize("D_15_deployed")
codecopy(0, dataoffset("D_15_deployed"), _1)
let _1 := datasize("D_16_deployed")
codecopy(0, dataoffset("D_16_deployed"), _1)
return(0, _1)
}
}
object "D_15_deployed" {
object "D_16_deployed" {
code {
{
mstore(64, 128)
@@ -67,10 +67,10 @@ object "D_15" {
{
if callvalue() { revert(_1, _1) }
if slt(add(calldatasize(), not(3)), _1) { revert(_1, _1) }
let _2 := datasize("C_2")
let _2 := datasize("C_3")
let _3 := add(128, _2)
if or(gt(_3, 0xffffffffffffffff), lt(_3, 128)) { panic_error_0x41() }
datacopy(128, dataoffset("C_2"), _2)
datacopy(128, dataoffset("C_3"), _2)
if iszero(create(_1, 128, _2))
{
returndatacopy(_1, _1, returndatasize())
@@ -95,17 +95,17 @@ object "D_15" {
revert(0, 0x24)
}
}
object "C_2" {
object "C_3" {
code {
{
mstore(64, 128)
if callvalue() { revert(0, 0) }
let _1 := datasize("C_2_deployed")
codecopy(0, dataoffset("C_2_deployed"), _1)
let _1 := datasize("C_3_deployed")
codecopy(0, dataoffset("C_3_deployed"), _1)
return(0, _1)
}
}
object "C_2_deployed" {
object "C_3_deployed" {
code {
{
mstore(64, 128)