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

This commit is contained in:
chriseth
2019-10-28 12:12:52 +01:00
22 changed files with 334 additions and 277 deletions
@@ -0,0 +1,10 @@
// Used to cause ICE because of a too strict assert
pragma experimental ABIEncoderV2;
contract C {
struct S { uint a; T[222222222222222222222222222] sub; }
struct T { uint[] x; }
function f() public returns (uint, S memory) {
}
}
// ----
// Warning: (52-85): Experimental features are turned on. Do not use experimental features on live deployments.
@@ -8,5 +8,5 @@ contract test {
}
}
// ----
// TypeError: (58-62): "sha3" has been deprecated in favour of "keccak256"
// TypeError: (101-108): "suicide" has been deprecated in favour of "selfdestruct"
// TypeError: (58-62): "sha3" has been deprecated in favour of "keccak256".
// TypeError: (101-108): "suicide" has been deprecated in favour of "selfdestruct".
@@ -5,4 +5,4 @@ contract C
}
}
// ----
// TypeError: (60-64): "sha3" has been deprecated in favour of "keccak256"
// TypeError: (60-64): "sha3" has been deprecated in favour of "keccak256".
@@ -5,4 +5,4 @@ contract C
}
}
// ----
// TypeError: (60-67): "suicide" has been deprecated in favour of "selfdestruct"
// TypeError: (60-67): "suicide" has been deprecated in favour of "selfdestruct".
@@ -2,12 +2,18 @@ contract C {
function f() public {
assembly {
super := 1
this := 1
msg := 1
block := 1
f := 1
C := 1
}
}
}
// ----
// TypeError: (58-63): Only local variables can be assigned to in inline assembly.
// TypeError: (75-76): Only local variables can be assigned to in inline assembly.
// TypeError: (88-89): Only local variables can be assigned to in inline assembly.
// DeclarationError: (58-63): Variable not found or variable not lvalue.
// DeclarationError: (75-79): Variable not found or variable not lvalue.
// DeclarationError: (91-94): Variable not found or variable not lvalue.
// DeclarationError: (106-111): Variable not found or variable not lvalue.
// TypeError: (123-124): Only local variables can be assigned to in inline assembly.
// TypeError: (136-137): Only local variables can be assigned to in inline assembly.
@@ -0,0 +1,5 @@
contract C {
constructor() C() public {}
}
// ----
// TypeError: (31-34): Referenced declaration is neither modifier nor base class.
@@ -0,0 +1,9 @@
contract test {
modifier mod() { _; }
function f() public {
mod ;
}
}
// ----
// TypeError: (77-80): Modifier can only be referenced in function headers.