mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Allow path syntax for super constructor calls
This commit is contained in:
@@ -34,17 +34,17 @@ Optimized IR:
|
||||
* !USE AT YOUR OWN RISK! *
|
||||
*******************************************************/
|
||||
|
||||
object "D_10" {
|
||||
object "D_9" {
|
||||
code {
|
||||
{
|
||||
mstore(64, memoryguard(0x80))
|
||||
if callvalue() { revert(0, 0) }
|
||||
let _1 := datasize("D_10_deployed")
|
||||
codecopy(0, dataoffset("D_10_deployed"), _1)
|
||||
let _1 := datasize("D_9_deployed")
|
||||
codecopy(0, dataoffset("D_9_deployed"), _1)
|
||||
return(0, _1)
|
||||
}
|
||||
}
|
||||
object "D_10_deployed" {
|
||||
object "D_9_deployed" {
|
||||
code {
|
||||
{
|
||||
mstore(64, memoryguard(0x80))
|
||||
|
||||
@@ -6,17 +6,17 @@ Optimized IR:
|
||||
* !USE AT YOUR OWN RISK! *
|
||||
*******************************************************/
|
||||
|
||||
object "C_56" {
|
||||
object "C_59" {
|
||||
code {
|
||||
{
|
||||
mstore(64, memoryguard(0x80))
|
||||
if callvalue() { revert(0, 0) }
|
||||
let _1 := datasize("C_56_deployed")
|
||||
codecopy(0, dataoffset("C_56_deployed"), _1)
|
||||
let _1 := datasize("C_59_deployed")
|
||||
codecopy(0, dataoffset("C_59_deployed"), _1)
|
||||
return(0, _1)
|
||||
}
|
||||
}
|
||||
object "C_56_deployed" {
|
||||
object "C_59_deployed" {
|
||||
code {
|
||||
{
|
||||
mstore(64, memoryguard(0x80))
|
||||
@@ -48,7 +48,7 @@ object "C_56" {
|
||||
dst := add(dst, _2)
|
||||
src := add(src, _2)
|
||||
}
|
||||
let ret, ret_1 := fun_sumArray_55(dst_1)
|
||||
let ret, ret_1 := fun_sumArray_58(dst_1)
|
||||
let memPos := allocateMemory(_1)
|
||||
return(memPos, sub(abi_encode_uint256_t_string(memPos, ret, ret_1), memPos))
|
||||
}
|
||||
@@ -107,15 +107,15 @@ object "C_56" {
|
||||
{
|
||||
value := shr(mul(offset, 8), slot_value)
|
||||
}
|
||||
function fun_sumArray_55(vloc__s_19_mpos) -> vloc, vloc__24_mpos
|
||||
function fun_sumArray_58(vloc__s_22_mpos) -> vloc, vloc__27_mpos
|
||||
{
|
||||
let _1 := mload(vloc__s_19_mpos)
|
||||
let _1 := mload(vloc__s_22_mpos)
|
||||
if iszero(lt(vloc, _1)) { invalid() }
|
||||
let _2 := mload(mload(add(add(vloc__s_19_mpos, mul(vloc, 32)), 32)))
|
||||
let _2 := mload(mload(add(add(vloc__s_22_mpos, mul(vloc, 32)), 32)))
|
||||
let _3, _4 := storage_array_index_access$_t_struct$_S_storage(vloc, vloc)
|
||||
sstore(_3, _2)
|
||||
if iszero(lt(0x01, _1)) { invalid() }
|
||||
let _5 := mload(mload(add(vloc__s_19_mpos, 64)))
|
||||
let _5 := mload(mload(add(vloc__s_22_mpos, 64)))
|
||||
if iszero(lt(vloc, 0x02)) { invalid() }
|
||||
let slot := add(0x02, vloc)
|
||||
let _6 := sload(slot)
|
||||
@@ -124,7 +124,7 @@ object "C_56" {
|
||||
sstore(slot, or(and(_6, not(mask)), and(shl(shiftBits, _5), mask)))
|
||||
let _7, _8 := storage_array_index_access$_t_struct$_S_storage(0x02, vloc)
|
||||
vloc := extract_from_storage_value_dynamict_uint256(sload(_7), _8)
|
||||
vloc__24_mpos := convert_t_stringliteral_6490_to_t_string()
|
||||
vloc__27_mpos := convert_t_stringliteral_6490_to_t_string()
|
||||
}
|
||||
function storage_array_index_access$_t_struct$_S_storage(array, index) -> slot, offset
|
||||
{
|
||||
|
||||
@@ -4,4 +4,4 @@ pragma solidity >=0.0; contract Errort6 { using foo for ; /* missing type name
|
||||
","message":"Expected type name","severity":"error","sourceLocation":{"end":94,"file":"A","start":93},"type":"ParserError"},{"component":"general","errorCode":"3796","formattedMessage":"A:2:84: Warning: Recovered in ContractDefinition at '}'.
|
||||
pragma solidity >=0.0; contract Errort6 { using foo for ; /* missing type name */ }
|
||||
^
|
||||
","message":"Recovered in ContractDefinition at '}'.","severity":"warning","sourceLocation":{"end":120,"file":"A","start":119},"type":"Warning"}],"sources":{"A":{"ast":{"absolutePath":"A","exportedSymbols":{"Errort6":[4]},"id":5,"license":"GPL-3.0","nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity",">=","0.0"],"nodeType":"PragmaDirective","src":"36:22:0"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":4,"linearizedBaseContracts":[4],"name":"Errort6","nodeType":"ContractDefinition","nodes":[],"scope":5,"src":"59:35:0"}],"src":"36:84:0"},"id":0}}}
|
||||
","message":"Recovered in ContractDefinition at '}'.","severity":"warning","sourceLocation":{"end":120,"file":"A","start":119},"type":"Warning"}],"sources":{"A":{"ast":{"absolutePath":"A","exportedSymbols":{"Errort6":[3]},"id":4,"license":"GPL-3.0","nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity",">=","0.0"],"nodeType":"PragmaDirective","src":"36:22:0"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":3,"linearizedBaseContracts":[3],"name":"Errort6","nodeType":"ContractDefinition","nodes":[],"scope":4,"src":"59:35:0"}],"src":"36:84:0"},"id":0}}}
|
||||
|
||||
Reference in New Issue
Block a user