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

This commit is contained in:
chriseth
2020-06-22 18:40:20 +02:00
1766 changed files with 3985 additions and 3906 deletions
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// TypeError: (72-73): Expected a library.
// TypeError 4977: (72-73): Expected a library.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (72-73): Access to functions is not allowed in inline assembly.
// DeclarationError 2025: (72-73): Access to functions is not allowed in inline assembly.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// DeclarationError: (112-113): Access to functions is not allowed in inline assembly.
// DeclarationError 2025: (112-113): Access to functions is not allowed in inline assembly.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (72-77): Identifier not found.
// DeclarationError 8198: (72-77): Identifier not found.
@@ -0,0 +1,8 @@
contract C {
function f() pure public {
uint x; uint y;
assembly { x, y := 7 }
}
}
// ----
// DeclarationError 8678: (87-96): Variable count does not match number of values (2 vs. 1)
@@ -11,9 +11,9 @@ contract C {
}
}
// ----
// 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.
// DeclarationError 4634: (58-63): Variable not found or variable not lvalue.
// DeclarationError 4634: (75-79): Variable not found or variable not lvalue.
// DeclarationError 4634: (91-94): Variable not found or variable not lvalue.
// DeclarationError 4634: (106-111): Variable not found or variable not lvalue.
// TypeError 1990: (123-124): Only local variables can be assigned to in inline assembly.
// TypeError 1990: (136-137): Only local variables can be assigned to in inline assembly.
@@ -8,5 +8,5 @@ contract C {
}
}
// ----
// TypeError: (52-54): Initial value for constant variable has to be compile-time constant.
// TypeError: (112-113): Only direct number constants and references to such constants are supported by inline assembly.
// TypeError 8349: (52-54): Initial value for constant variable has to be compile-time constant.
// TypeError 7615: (112-113): Only direct number constants and references to such constants are supported by inline assembly.
@@ -7,6 +7,6 @@ contract C {
}
}
// ----
// TypeError: (33-37): Type contract C is not implicitly convertible to expected type bool.
// TypeError: (33-37): Initial value for constant variable has to be compile-time constant.
// TypeError: (95-96): Only direct number constants and references to such constants are supported by inline assembly.
// TypeError 7407: (33-37): Type contract C is not implicitly convertible to expected type bool.
// TypeError 8349: (33-37): Initial value for constant variable has to be compile-time constant.
// TypeError 7615: (95-96): Only direct number constants and references to such constants are supported by inline assembly.
@@ -7,5 +7,5 @@ contract C {
}
}
// ----
// TypeError: (17-32): Uninitialized "constant" variable.
// TypeError: (106-107): Constant has no value.
// TypeError 4266: (17-32): Uninitialized "constant" variable.
// TypeError 3224: (106-107): Constant has no value.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// TypeError: (115-116): Only direct number constants and references to such constants are supported by inline assembly.
// TypeError 7615: (115-116): Only direct number constants and references to such constants are supported by inline assembly.
@@ -8,4 +8,4 @@ contract C {
}
}
// ----
// TypeError: (168-169): Only direct number constants and references to such constants are supported by inline assembly.
// TypeError 7615: (168-169): Only direct number constants and references to such constants are supported by inline assembly.
@@ -10,5 +10,5 @@ contract C {
}
}
// ----
// TypeError: (87-88): Function expects 1 arguments but got 0.
// TypeError: (108-109): Function expects 1 arguments but got 2.
// TypeError 7000: (87-88): Function expects 1 arguments but got 0.
// TypeError 7000: (108-109): Function expects 1 arguments but got 2.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (63-64): Function not found.
// DeclarationError 4619: (63-64): Function not found.
@@ -8,4 +8,4 @@ contract C {
}
}
// ----
// TypeError: (81-82): Attempt to call variable instead of function.
// TypeError 4202: (81-82): Attempt to call variable instead of function.
@@ -8,4 +8,4 @@ contract C {
}
}
// ----
// ParserError: (92-93): Call or assignment expected.
// ParserError 6913: (92-93): Call or assignment expected.
@@ -7,5 +7,5 @@ contract C {
}
}
// ----
// DeclarationError: (63-75): Function not found.
// DeclarationError: (92-105): Function not found.
// DeclarationError 4619: (63-75): Function not found.
// DeclarationError 4619: (92-105): Function not found.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// ParserError: (67-70): Cannot use builtin function name "mod" as identifier name.
// ParserError 5568: (67-70): Cannot use builtin function name "mod" as identifier name.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// ParserError: (95-98): Expected '(' but got identifier
// ParserError 2314: (95-98): Expected '(' but got identifier
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// TypeError: (111-126): Call data elements cannot be accessed directly. Copy to a local variable first or use "calldataload" or "calldatacopy" with manually determined offsets and sizes.
// TypeError 2370: (111-126): Call data elements cannot be accessed directly. Copy to a local variable first or use "calldataload" or "calldatacopy" with manually determined offsets and sizes.
@@ -7,6 +7,6 @@ contract C {
int constant c = 0 + 1;
}
// ----
// SyntaxError: (15-83): No visibility specified. Did you intend to add "public"?
// TypeError: (71-72): Constant variables with non-literal values cannot be forward referenced from inline assembly.
// TypeError: (51-52): Constant variables cannot be assigned to.
// SyntaxError 4937: (15-83): No visibility specified. Did you intend to add "public"?
// TypeError 2249: (71-72): Constant variables with non-literal values cannot be forward referenced from inline assembly.
// TypeError 6252: (51-52): Constant variables cannot be assigned to.
@@ -7,4 +7,4 @@ contract test {
}
}
// ----
// TypeError: (98-99): Constant variables cannot be assigned to.
// TypeError 6252: (98-99): Constant variables cannot be assigned to.
@@ -7,4 +7,4 @@ contract test {
}
}
// ----
// TypeError: (112-120): The suffixes _offset and _slot can only be used on non-constant storage variables.
// TypeError 6617: (112-120): The suffixes _offset and _slot can only be used on non-constant storage variables.
@@ -8,4 +8,4 @@ contract C {
}
}
// ----
// ParserError: (101-102): Literal or identifier expected.
// ParserError 1856: (101-102): Literal or identifier expected.
@@ -8,4 +8,4 @@ contract C {
}
}
// ----
// ParserError: (103-104): Literal or identifier expected.
// ParserError 1856: (103-104): Literal or identifier expected.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// ParserError: (96-97): Literal or identifier expected.
// ParserError 1856: (96-97): Literal or identifier expected.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// ParserError: (72-73): Expected identifier but got '('
// ParserError 2314: (72-73): Expected identifier but got '('
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// ParserError: (72-73): Literal or identifier expected.
// ParserError 1856: (72-73): Literal or identifier expected.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (75-79): Function not found.
// DeclarationError 4619: (75-79): Function not found.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// ParserError: (80-81): Call or assignment expected.
// ParserError 6913: (80-81): Call or assignment expected.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// TypeError: (75-83): Top-level expressions are not supposed to return values (this expression returns 1 value). Use ``pop()`` or assign them.
// TypeError 3083: (75-83): Top-level expressions are not supposed to return values (this expression returns 1 value). Use ``pop()`` or assign them.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// ParserError: (85-86): Call or assignment expected.
// ParserError 6913: (85-86): Call or assignment expected.
@@ -7,4 +7,4 @@ contract test {
}
}
// ----
// DeclarationError: (114-115): Cannot access local Solidity variables from inside an inline assembly function.
// DeclarationError 6578: (114-115): Cannot access local Solidity variables from inside an inline assembly function.
@@ -8,4 +8,4 @@ contract test {
}
}
// ----
// DeclarationError: (142-150): Cannot access local Solidity variables from inside an inline assembly function.
// DeclarationError 6578: (142-150): Cannot access local Solidity variables from inside an inline assembly function.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (63-64): Variable not found or variable not lvalue.
// DeclarationError 4634: (63-64): Variable not found or variable not lvalue.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// ParserError: (87-89): Literal or identifier expected.
// ParserError 1856: (87-89): Literal or identifier expected.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// ParserError: (102-105): Cannot use builtin function name "sub" as identifier name.
// ParserError 5568: (102-105): Cannot use builtin function name "sub" as identifier name.
@@ -9,4 +9,4 @@ contract C {
}
}
// ----
// DeclarationError: (130-131): Cannot access local Solidity variables from inside an inline assembly function.
// DeclarationError 6578: (130-131): Cannot access local Solidity variables from inside an inline assembly function.
@@ -7,4 +7,4 @@ contract test {
}
}
// ----
// TypeError: (89-90): Only local variables are supported. To access storage variables, use the _slot and _offset suffixes.
// TypeError 1408: (89-90): Only local variables are supported. To access storage variables, use the _slot and _offset suffixes.
@@ -10,4 +10,4 @@ contract test {
}
}
// ----
// TypeError: (80-81): Only local variables are supported. To access storage variables, use the _slot and _offset suffixes.
// TypeError 1408: (80-81): Only local variables are supported. To access storage variables, use the _slot and _offset suffixes.
@@ -6,4 +6,4 @@ contract test {
}
}
// ----
// ParserError: (85-86): Expected '(' but got '}'
// ParserError 2314: (85-86): Expected '(' but got '}'
@@ -6,4 +6,4 @@ contract test {
}
}
// ----
// ParserError: (83-84): Call or assignment expected.
// ParserError 6913: (83-84): Call or assignment expected.
@@ -5,4 +5,4 @@ contract c {
}
}
// ----
// TypeError: (75-76): Only local variables are supported. To access storage variables, use the _slot and _offset suffixes.
// TypeError 1408: (75-76): Only local variables are supported. To access storage variables, use the _slot and _offset suffixes.
@@ -9,7 +9,7 @@ contract C {
}
}
// ----
// DeclarationError: (79-87): In variable declarations _slot and _offset can not be used as a suffix.
// DeclarationError: (109-115): In variable declarations _slot and _offset can not be used as a suffix.
// DeclarationError: (137-144): In variable declarations _slot and _offset can not be used as a suffix.
// DeclarationError: (166-171): In variable declarations _slot and _offset can not be used as a suffix.
// DeclarationError 9155: (79-87): In variable declarations _slot and _offset can not be used as a suffix.
// DeclarationError 9155: (109-115): In variable declarations _slot and _offset can not be used as a suffix.
// DeclarationError 9155: (137-144): In variable declarations _slot and _offset can not be used as a suffix.
// DeclarationError 9155: (166-171): In variable declarations _slot and _offset can not be used as a suffix.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// ParserError: (71-72): Expected identifier but got '='
// ParserError 2314: (71-72): Expected identifier but got '='
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// ParserError: (109-110): Expected identifier but got '='
// ParserError 2314: (109-110): Expected identifier but got '='
@@ -13,7 +13,7 @@ contract C {
// ====
// EVMVersion: =petersburg
// ----
// TypeError: (101-108): The "chainid" instruction is only available for Istanbul-compatible VMs (you are currently compiling for "petersburg").
// DeclarationError: (95-110): Variable count does not match number of values (1 vs. 0)
// TypeError: (215-226): The "selfbalance" instruction is only available for Istanbul-compatible VMs (you are currently compiling for "petersburg").
// DeclarationError: (209-228): Variable count does not match number of values (1 vs. 0)
// TypeError 7079: (101-108): The "chainid" instruction is only available for Istanbul-compatible VMs (you are currently compiling for "petersburg").
// DeclarationError 8678: (95-110): Variable count does not match number of values (1 vs. 0)
// TypeError 7079: (215-226): The "selfbalance" instruction is only available for Istanbul-compatible VMs (you are currently compiling for "petersburg").
// DeclarationError 8678: (209-228): Variable count does not match number of values (1 vs. 0)
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// SyntaxError: (63-68): Keyword "leave" can only be used inside a function.
// SyntaxError 8149: (63-68): Keyword "leave" can only be used inside a function.
@@ -8,4 +8,4 @@ contract C {
}
}
// ----
// DeclarationError: (155-156): Multiple matching identifiers. Resolving overloaded identifiers is not supported.
// DeclarationError 4718: (155-156): Multiple matching identifiers. Resolving overloaded identifiers is not supported.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (85-86): This declaration shadows a declaration outside the inline assembly block.
// DeclarationError 3859: (85-86): This declaration shadows a declaration outside the inline assembly block.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// DeclarationError: (100-101): This declaration shadows a declaration outside the inline assembly block.
// DeclarationError 3859: (100-101): This declaration shadows a declaration outside the inline assembly block.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (79-80): This declaration shadows a declaration outside the inline assembly block.
// DeclarationError 3859: (79-80): This declaration shadows a declaration outside the inline assembly block.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (79-80): This declaration shadows a declaration outside the inline assembly block.
// DeclarationError 3859: (79-80): This declaration shadows a declaration outside the inline assembly block.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// DeclarationError: (95-96): This declaration shadows a declaration outside the inline assembly block.
// DeclarationError 3859: (95-96): This declaration shadows a declaration outside the inline assembly block.
@@ -14,5 +14,5 @@ contract B {
}
}
// ----
// DeclarationError: (b:105-106): This declaration shadows a declaration outside the inline assembly block.
// DeclarationError: (b:128-131): The prefix of this declaration conflicts with a declaration outside the inline assembly block.
// DeclarationError 3859: (b:105-106): This declaration shadows a declaration outside the inline assembly block.
// DeclarationError 3859: (b:128-131): The prefix of this declaration conflicts with a declaration outside the inline assembly block.
@@ -10,5 +10,5 @@ contract C {
}
}
// ----
// DeclarationError: (115-118): The prefix of this declaration conflicts with a declaration outside the inline assembly block.
// DeclarationError: (140-143): The prefix of this declaration conflicts with a declaration outside the inline assembly block.
// DeclarationError 3859: (115-118): The prefix of this declaration conflicts with a declaration outside the inline assembly block.
// DeclarationError 3859: (140-143): The prefix of this declaration conflicts with a declaration outside the inline assembly block.
@@ -8,4 +8,4 @@ contract C {
}
}
// ----
// TypeError: (118-119): You have to use the _slot or _offset suffix to access storage reference variables.
// TypeError 9068: (118-119): You have to use the _slot or _offset suffix to access storage reference variables.
@@ -9,4 +9,4 @@ contract C {
}
}
// ----
// TypeError: (138-146): Only _slot can be assigned to.
// TypeError 9739: (138-146): Only _slot can be assigned to.
@@ -8,5 +8,5 @@ contract C {
}
}
// ----
// TypeError: (84-90): State variables cannot be assigned to - you have to use "sstore()".
// TypeError: (108-116): State variables cannot be assigned to - you have to use "sstore()".
// TypeError 4713: (84-90): State variables cannot be assigned to - you have to use "sstore()".
// TypeError 4713: (108-116): State variables cannot be assigned to - you have to use "sstore()".
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (84-91): In variable names _slot and _offset can only be used as a suffix.
// DeclarationError 4794: (84-91): In variable names _slot and _offset can only be used as a suffix.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// DeclarationError: (84-89): In variable names _slot and _offset can only be used as a suffix.
// DeclarationError 4794: (84-89): In variable names _slot and _offset can only be used as a suffix.
@@ -6,4 +6,4 @@ contract C {
}
}
// ----
// TypeError: (84-90): The suffixes _offset and _slot can only be used on storage variables.
// TypeError 7944: (84-90): The suffixes _offset and _slot can only be used on storage variables.
@@ -9,5 +9,5 @@ contract C {
}
}
// ----
// TypeError: (117-123): The suffixes _offset and _slot can only be used on storage variables.
// TypeError: (141-149): The suffixes _offset and _slot can only be used on storage variables.
// TypeError 3622: (117-123): The suffixes _offset and _slot can only be used on storage variables.
// TypeError 3622: (141-149): The suffixes _offset and _slot can only be used on storage variables.
@@ -9,4 +9,4 @@ contract C {
}
}
// ----
// TypeError: (138-146): Only _slot can be assigned to.
// TypeError 9739: (138-146): Only _slot can be assigned to.
@@ -7,4 +7,4 @@ contract C {
}
}
// ----
// TypeError: (132-147): Only types that use one stack slot are supported.
// TypeError 9857: (132-147): Only types that use one stack slot are supported.
@@ -8,4 +8,4 @@ contract C {
// ====
// optimize-yul: true
// ----
// SyntaxError: (52-101): The msize instruction cannot be used when the Yul optimizer is activated because it can change its semantics. Either disable the Yul optimizer or do not use the instruction.
// SyntaxError 6553: (52-101): The msize instruction cannot be used when the Yul optimizer is activated because it can change its semantics. Either disable the Yul optimizer or do not use the instruction.