Error message tweak: built-in unary/binary operator

This commit is contained in:
wechman 2022-09-16 13:17:46 +02:00 committed by Kamil Śliwak
parent 4c9a58eb0f
commit 6da09e8d9a
63 changed files with 172 additions and 172 deletions

View File

@ -1731,7 +1731,7 @@ bool TypeChecker::visit(UnaryOperation const& _operation)
TypeResult result = type(_operation.subExpression())->unaryOperatorResult(op);
if (!result)
{
string description = "Unary operator " + string(TokenTraits::toString(op)) + " cannot be applied to type " + subExprType->humanReadableName() + "." + (!result.message().empty() ? " " + result.message() : "");
string description = "Built-in unary operator " + string(TokenTraits::toString(op)) + " cannot be applied to type " + subExprType->humanReadableName() + "." + (!result.message().empty() ? " " + result.message() : "");
if (modifying)
// Cannot just report the error, ignore the unary operator, and continue,
// because the sub-expression was already processed with requireLValue()
@ -1760,9 +1760,9 @@ void TypeChecker::endVisit(BinaryOperation const& _operation)
m_errorReporter.typeError(
2271_error,
_operation.location(),
"Operator " +
"Built-in binary operator " +
string(TokenTraits::toString(_operation.getOperator())) +
" not compatible with types " +
" cannot be applied to types " +
leftType->humanReadableName() +
" and " +
rightType->humanReadableName() + "." +

View File

@ -15,9 +15,9 @@ contract C {
}
}
// ----
// TypeError 2271: (284-299): Operator + not compatible with types tuple(int_const 1,int_const 1) and tuple(int_const 2,int_const 2).
// TypeError 2271: (284-299): Built-in binary operator + cannot be applied to types tuple(int_const 1,int_const 1) and tuple(int_const 2,int_const 2).
// TypeError 9062: (284-299): Expected an inline tuple, not an expression of a tuple type.
// TypeError 2271: (334-345): Operator / not compatible with types tuple() and tuple().
// TypeError 2271: (334-345): Built-in binary operator / cannot be applied to types tuple() and tuple().
// TypeError 9062: (334-345): Expected an inline tuple, not an expression of a tuple type.
// TypeError 4907: (380-383): Unary operator ! cannot be applied to type tuple().
// TypeError 4907: (380-383): Built-in unary operator ! cannot be applied to type tuple().
// TypeError 9062: (380-383): Expected an inline tuple, not an expression of a tuple type.

View File

@ -19,9 +19,9 @@ contract C {
}
}
// ----
// TypeError 2271: (144-157): Operator != not compatible with types type(contract super C) and contract C.
// TypeError 2271: (167-180): Operator != not compatible with types contract C and type(contract super C).
// TypeError 2271: (254-264): Operator != not compatible with types type(contract super C) and contract C.
// TypeError 2271: (274-284): Operator != not compatible with types contract C and type(contract super C).
// TypeError 2271: (349-359): Operator != not compatible with types type(contract super C) and contract D.
// TypeError 2271: (369-379): Operator != not compatible with types contract D and type(contract super C).
// TypeError 2271: (144-157): Built-in binary operator != cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (167-180): Built-in binary operator != cannot be applied to types contract C and type(contract super C).
// TypeError 2271: (254-264): Built-in binary operator != cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (274-284): Built-in binary operator != cannot be applied to types contract C and type(contract super C).
// TypeError 2271: (349-359): Built-in binary operator != cannot be applied to types type(contract super C) and contract D.
// TypeError 2271: (369-379): Built-in binary operator != cannot be applied to types contract D and type(contract super C).

View File

@ -30,25 +30,25 @@ contract C {
}
}
// ----
// TypeError 2271: (49-62): Operator << not compatible with types type(contract super C) and contract C.
// TypeError 2271: (72-85): Operator >> not compatible with types type(contract super C) and contract C.
// TypeError 2271: (95-107): Operator ^ not compatible with types type(contract super C) and contract C.
// TypeError 2271: (117-129): Operator | not compatible with types type(contract super C) and contract C.
// TypeError 2271: (139-151): Operator & not compatible with types type(contract super C) and contract C.
// TypeError 2271: (162-174): Operator * not compatible with types type(contract super C) and contract C.
// TypeError 2271: (184-196): Operator / not compatible with types type(contract super C) and contract C.
// TypeError 2271: (206-218): Operator % not compatible with types type(contract super C) and contract C.
// TypeError 2271: (228-240): Operator - not compatible with types type(contract super C) and contract C.
// TypeError 2271: (250-262): Operator + not compatible with types type(contract super C) and contract C.
// TypeError 2271: (272-285): Operator ** not compatible with types type(contract super C) and contract C.
// TypeError 2271: (296-309): Operator == not compatible with types type(contract super C) and contract C.
// TypeError 2271: (319-332): Operator != not compatible with types type(contract super C) and contract C.
// TypeError 2271: (342-355): Operator >= not compatible with types type(contract super C) and contract C.
// TypeError 2271: (365-378): Operator <= not compatible with types type(contract super C) and contract C.
// TypeError 2271: (388-400): Operator < not compatible with types type(contract super C) and contract C.
// TypeError 2271: (410-422): Operator > not compatible with types type(contract super C) and contract C.
// TypeError 2271: (433-446): Operator || not compatible with types type(contract super C) and contract C.
// TypeError 2271: (456-469): Operator && not compatible with types type(contract super C) and contract C.
// TypeError 2271: (49-62): Built-in binary operator << cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (72-85): Built-in binary operator >> cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (95-107): Built-in binary operator ^ cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (117-129): Built-in binary operator | cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (139-151): Built-in binary operator & cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (162-174): Built-in binary operator * cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (184-196): Built-in binary operator / cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (206-218): Built-in binary operator % cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (228-240): Built-in binary operator - cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (250-262): Built-in binary operator + cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (272-285): Built-in binary operator ** cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (296-309): Built-in binary operator == cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (319-332): Built-in binary operator != cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (342-355): Built-in binary operator >= cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (365-378): Built-in binary operator <= cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (388-400): Built-in binary operator < cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (410-422): Built-in binary operator > cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (433-446): Built-in binary operator || cannot be applied to types type(contract super C) and contract C.
// TypeError 2271: (456-469): Built-in binary operator && cannot be applied to types type(contract super C) and contract C.
// TypeError 4247: (480-485): Expression has to be an lvalue.
// TypeError 7366: (480-493): Operator -= not compatible with types type(contract super C) and contract C.
// TypeError 4247: (503-508): Expression has to be an lvalue.

View File

@ -27,21 +27,21 @@ contract C {
}
// ----
// TypeError 2271: (86-116): Operator << not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (126-156): Operator >> not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (166-195): Operator ^ not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (205-234): Operator | not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (244-273): Operator & not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (284-313): Operator * not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (323-352): Operator / not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (362-391): Operator % not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (401-430): Operator + not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (440-469): Operator - not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (480-510): Operator == not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (520-550): Operator != not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (560-590): Operator >= not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (600-630): Operator <= not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (640-669): Operator < not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (679-708): Operator > not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (719-749): Operator || not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (759-789): Operator && not compatible with types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (86-116): Built-in binary operator << cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (126-156): Built-in binary operator >> cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (166-195): Built-in binary operator ^ cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (205-234): Built-in binary operator | cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (244-273): Built-in binary operator & cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (284-313): Built-in binary operator * cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (323-352): Built-in binary operator / cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (362-391): Built-in binary operator % cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (401-430): Built-in binary operator + cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (440-469): Built-in binary operator - cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (480-510): Built-in binary operator == cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (520-550): Built-in binary operator != cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (560-590): Built-in binary operator >= cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (600-630): Built-in binary operator <= cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (640-669): Built-in binary operator < cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (679-708): Built-in binary operator > cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (719-749): Built-in binary operator || cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).
// TypeError 2271: (759-789): Built-in binary operator && cannot be applied to types error MyCustomError(uint256,bool) and error MyCustomError(uint256,bool).

View File

@ -8,4 +8,4 @@ contract C {
// ----
// TypeError 4247: (86-99): Expression has to be an lvalue.
// TypeError 9767: (86-101): Unary operator ++ cannot be applied to type error MyCustomError(uint256,bool).
// TypeError 9767: (86-101): Built-in unary operator ++ cannot be applied to type error MyCustomError(uint256,bool).

View File

@ -26,21 +26,21 @@ contract C {
}
// ----
// TypeError 2271: (83-113): Operator << not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (123-153): Operator >> not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (163-192): Operator ^ not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (202-231): Operator | not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (241-270): Operator & not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (281-310): Operator * not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (320-349): Operator / not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (359-388): Operator % not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (398-427): Operator + not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (437-466): Operator - not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (477-507): Operator == not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (517-547): Operator != not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (557-587): Operator >= not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (597-627): Operator <= not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (637-666): Operator < not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (676-705): Operator > not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (716-746): Operator || not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (756-786): Operator && not compatible with types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (83-113): Built-in binary operator << cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (123-153): Built-in binary operator >> cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (163-192): Built-in binary operator ^ cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (202-231): Built-in binary operator | cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (241-270): Built-in binary operator & cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (281-310): Built-in binary operator * cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (320-349): Built-in binary operator / cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (359-388): Built-in binary operator % cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (398-427): Built-in binary operator + cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (437-466): Built-in binary operator - cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (477-507): Built-in binary operator == cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (517-547): Built-in binary operator != cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (557-587): Built-in binary operator >= cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (597-627): Built-in binary operator <= cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (637-666): Built-in binary operator < cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (676-705): Built-in binary operator > cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (716-746): Built-in binary operator || cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).
// TypeError 2271: (756-786): Built-in binary operator && cannot be applied to types event MyCustomEvent(uint256) and event MyCustomEvent(uint256).

View File

@ -7,4 +7,4 @@ contract C {
// ----
// TypeError 4247: (83-96): Expression has to be an lvalue.
// TypeError 9767: (83-98): Unary operator ++ cannot be applied to type event MyCustomEvent(uint256).
// TypeError 9767: (83-98): Built-in unary operator ++ cannot be applied to type event MyCustomEvent(uint256).

View File

@ -4,4 +4,4 @@ contract C {
}
}
// ----
// TypeError 2271: (73-88): Operator > not compatible with types function () external returns (bool) and function () external returns (bool).
// TypeError 2271: (73-88): Built-in binary operator > cannot be applied to types function () external returns (bool) and function () external returns (bool).

View File

@ -4,4 +4,4 @@ contract C {
}
}
// ----
// TypeError 2271: (73-78): Operator > not compatible with types function () returns (bool) and function () returns (bool).
// TypeError 2271: (73-78): Built-in binary operator > cannot be applied to types function () returns (bool) and function () returns (bool).

View File

@ -4,4 +4,4 @@ contract C {
}
}
// ----
// TypeError 2271: (73-88): Operator < not compatible with types function () external returns (bool) and function () external returns (bool).
// TypeError 2271: (73-88): Built-in binary operator < cannot be applied to types function () external returns (bool) and function () external returns (bool).

View File

@ -4,4 +4,4 @@ contract C {
}
}
// ----
// TypeError 2271: (73-78): Operator < not compatible with types function () returns (bool) and function () returns (bool).
// TypeError 2271: (73-78): Built-in binary operator < cannot be applied to types function () returns (bool) and function () returns (bool).

View File

@ -8,5 +8,5 @@ contract C {
}
}
// ----
// TypeError 2271: (193-259): Operator == not compatible with types function () external and function () external.
// TypeError 2271: (277-351): Operator == not compatible with types function () external and function () external.
// TypeError 2271: (193-259): Built-in binary operator == cannot be applied to types function () external and function () external.
// TypeError 2271: (277-351): Built-in binary operator == cannot be applied to types function () external and function () external.

View File

@ -19,5 +19,5 @@ contract C {
}
}
// ----
// TypeError 2271: (606-672): Operator != not compatible with types function () and function () external.
// TypeError 2271: (688-741): Operator != not compatible with types function () and function () external.
// TypeError 2271: (606-672): Built-in binary operator != cannot be applied to types function () and function () external.
// TypeError 2271: (688-741): Built-in binary operator != cannot be applied to types function () and function () external.

View File

@ -21,6 +21,6 @@ contract C {
// ----
// TypeError 9574: (249-333): Type function (uint256) external is not implicitly convertible to expected type function () external.
// TypeError 9574: (343-427): Type function (bool) external is not implicitly convertible to expected type function () external.
// TypeError 2271: (458-522): Operator == not compatible with types function (uint256) external and function () external.
// TypeError 2271: (538-602): Operator == not compatible with types function (bool) external and function () external.
// TypeError 2271: (726-786): Operator != not compatible with types function (bool) external and function (uint256) external.
// TypeError 2271: (458-522): Built-in binary operator == cannot be applied to types function (uint256) external and function () external.
// TypeError 2271: (538-602): Built-in binary operator == cannot be applied to types function (bool) external and function () external.
// TypeError 2271: (726-786): Built-in binary operator != cannot be applied to types function (bool) external and function (uint256) external.

View File

@ -6,4 +6,4 @@ contract C
}
}
// ----
// TypeError 9767: (59-64): Unary operator -- cannot be applied to type tuple(,).
// TypeError 9767: (59-64): Built-in unary operator -- cannot be applied to type tuple(,).

View File

@ -7,4 +7,4 @@ contract C
}
// ----
// TypeError 4247: (68-69): Expression has to be an lvalue.
// TypeError 9767: (59-70): Unary operator delete cannot be applied to type tuple(,int_const 0).
// TypeError 9767: (59-70): Built-in unary operator delete cannot be applied to type tuple(,int_const 0).

View File

@ -6,4 +6,4 @@ contract C
}
}
// ----
// TypeError 9767: (61-66): Unary operator ++ cannot be applied to type tuple(,).
// TypeError 9767: (61-66): Built-in unary operator ++ cannot be applied to type tuple(,).

View File

@ -10,11 +10,11 @@ contract C
}
// ----
// SyntaxError 9636: (59-66): Use of unary + is disallowed.
// TypeError 4907: (59-66): Unary operator + cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 4907: (59-66): Built-in unary operator + cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 7364: (51-66): Different number of components on the left hand side (1) than on the right hand side (2).
// TypeError 4907: (84-91): Unary operator - cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 4907: (84-91): Built-in unary operator - cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 7364: (76-91): Different number of components on the left hand side (1) than on the right hand side (2).
// TypeError 4907: (111-118): Unary operator ~ cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 4907: (111-118): Built-in unary operator ~ cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 7364: (101-118): Different number of components on the left hand side (1) than on the right hand side (2).
// TypeError 4907: (138-145): Unary operator ! cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 4907: (138-145): Built-in unary operator ! cannot be applied to type tuple(int_const 0,int_const 0).
// TypeError 7364: (128-145): Different number of components on the left hand side (1) than on the right hand side (2).

View File

@ -2,4 +2,4 @@ contract C {
uint constant a = 1 / 0;
}
// ----
// TypeError 2271: (35-40): Operator / not compatible with types int_const 1 and int_const 0.
// TypeError 2271: (35-40): Built-in binary operator / cannot be applied to types int_const 1 and int_const 0.

View File

@ -2,4 +2,4 @@ contract C {
uint constant a = 1 / ((1+3)-4);
}
// ----
// TypeError 2271: (35-48): Operator / not compatible with types int_const 1 and int_const 0.
// TypeError 2271: (35-48): Built-in binary operator / cannot be applied to types int_const 1 and int_const 0.

View File

@ -6,5 +6,5 @@ contract C {
}
}
// ----
// TypeError 2271: (67-78): Operator ** not compatible with types int256 and int_const 1000...(1226 digits omitted)...0000. Exponent too large.
// TypeError 2271: (88-98): Operator ** not compatible with types int256 and rational_const 1 / 2. Exponent is fractional.
// TypeError 2271: (67-78): Built-in binary operator ** cannot be applied to types int256 and int_const 1000...(1226 digits omitted)...0000. Exponent too large.
// TypeError 2271: (88-98): Built-in binary operator ** cannot be applied to types int256 and rational_const 1 / 2. Exponent is fractional.

View File

@ -2,4 +2,4 @@ contract C {
uint constant b3 = 1 % 0;
}
// ----
// TypeError 2271: (36-41): Operator % not compatible with types int_const 1 and int_const 0.
// TypeError 2271: (36-41): Built-in binary operator % cannot be applied to types int_const 1 and int_const 0.

View File

@ -2,4 +2,4 @@ contract C {
uint constant b3 = 1 % (-4+((2)*2));
}
// ----
// TypeError 2271: (36-52): Operator % not compatible with types int_const 1 and int_const 0.
// TypeError 2271: (36-52): Built-in binary operator % cannot be applied to types int_const 1 and int_const 0.

View File

@ -12,4 +12,4 @@ contract Test {
// ----
// TypeError 9574: (59-89): Type int256 is not implicitly convertible to expected type uint8.
// TypeError 9574: (99-127): Type int256 is not implicitly convertible to expected type uint256.
// TypeError 2271: (142-169): Operator == not compatible with types int256 and int_const 1157...(70 digits omitted)...9935.
// TypeError 2271: (142-169): Built-in binary operator == cannot be applied to types int256 and int_const 1157...(70 digits omitted)...9935.

View File

@ -2,4 +2,4 @@ contract test {
function f() public { int32(2) == uint64(2); }
}
// ----
// TypeError 2271: (42-63): Operator == not compatible with types int32 and uint64.
// TypeError 2271: (42-63): Built-in binary operator == cannot be applied to types int32 and uint64.

View File

@ -6,4 +6,4 @@ contract C {
}
}
// ----
// TypeError 2271: (147-153): Operator == not compatible with types mapping(uint256 => uint256) and mapping(uint256 => uint256).
// TypeError 2271: (147-153): Built-in binary operator == cannot be applied to types mapping(uint256 => uint256) and mapping(uint256 => uint256).

View File

@ -2,4 +2,4 @@ contract test {
function f() public returns (uint d) { return 2 ** 10000000000; }
}
// ----
// TypeError 2271: (66-82): Operator ** not compatible with types int_const 2 and int_const 10000000000.
// TypeError 2271: (66-82): Built-in binary operator ** cannot be applied to types int_const 2 and int_const 10000000000.

View File

@ -1,3 +1,3 @@
contract test { fallback() external { uint x = 1; uint y = 2; x || y; } }
// ----
// TypeError 2271: (62-68): Operator || not compatible with types uint256 and uint256.
// TypeError 2271: (62-68): Built-in binary operator || cannot be applied to types uint256 and uint256.

View File

@ -1,3 +1,3 @@
contract test { fallback() external { uint x = 1; uint y = 2; x && y; } }
// ----
// TypeError 2271: (62-68): Operator && not compatible with types uint256 and uint256.
// TypeError 2271: (62-68): Built-in binary operator && cannot be applied to types uint256 and uint256.

View File

@ -1,3 +1,3 @@
contract test { fallback() external { uint x = 1; !x; } }
// ----
// TypeError 4907: (50-52): Unary operator ! cannot be applied to type uint256.
// TypeError 4907: (50-52): Built-in unary operator ! cannot be applied to type uint256.

View File

@ -1,3 +1,3 @@
contract test { fallback() external { uint x = 3; int y = -4; x ** y; } }
// ----
// TypeError 2271: (62-68): Operator ** not compatible with types uint256 and int256. Exponentiation power is not allowed to be a signed integer type.
// TypeError 2271: (62-68): Built-in binary operator ** cannot be applied to types uint256 and int256. Exponentiation power is not allowed to be a signed integer type.

View File

@ -4,7 +4,7 @@ contract test {
function i() public { int16 x = 4; x ** -3; }
}
// ----
// TypeError 2271: (64-70): Operator ** not compatible with types int256 and int256. Exponentiation power is not allowed to be a signed integer type.
// TypeError 2271: (126-132): Operator ** not compatible with types uint8 and int16. Exponentiation power is not allowed to be a signed integer type.
// TypeError 2271: (64-70): Built-in binary operator ** cannot be applied to types int256 and int256. Exponentiation power is not allowed to be a signed integer type.
// TypeError 2271: (126-132): Built-in binary operator ** cannot be applied to types uint8 and int16. Exponentiation power is not allowed to be a signed integer type.
// Warning 3149: (126-132): The result type of the exponentiation operation is equal to the type of the first operand (uint8) ignoring the (larger) type of the second operand (int16) which might be unexpected. Silence this warning by either converting the first or the second operand to the type of the other.
// TypeError 2271: (175-182): Operator ** not compatible with types int16 and int_const -3. Exponentiation power is not allowed to be a negative integer literal.
// TypeError 2271: (175-182): Built-in binary operator ** cannot be applied to types int16 and int_const -3. Exponentiation power is not allowed to be a negative integer literal.

View File

@ -1,3 +1,3 @@
contract test { bytes a; bytes b; fallback() external { a == b; } }
// ----
// TypeError 2271: (56-62): Operator == not compatible with types bytes storage ref and bytes storage ref.
// TypeError 2271: (56-62): Built-in binary operator == cannot be applied to types bytes storage ref and bytes storage ref.

View File

@ -7,4 +7,4 @@ contract test {
}
}
// ----
// TypeError 2271: (79-85): Operator == not compatible with types struct test.s storage ref and struct test.s storage ref.
// TypeError 2271: (79-85): Built-in binary operator == cannot be applied to types struct test.s storage ref and struct test.s storage ref.

View File

@ -6,4 +6,4 @@ contract C {
}
}
// ----
// TypeError 9767: (97-105): Unary operator delete cannot be applied to type uint256[] storage pointer.
// TypeError 9767: (97-105): Built-in unary operator delete cannot be applied to type uint256[] storage pointer.

View File

@ -7,4 +7,4 @@ contract test {
}
// ----
// SyntaxError 9636: (70-75): Use of unary + is disallowed.
// TypeError 4907: (70-75): Unary operator + cannot be applied to type rational_const 13 / 4.
// TypeError 4907: (70-75): Built-in unary operator + cannot be applied to type rational_const 13 / 4.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (60-69): Operator ** not compatible with types int_const 2 and rational_const -11 / 5.
// TypeError 2271: (60-69): Built-in binary operator ** cannot be applied to types int_const 2 and rational_const -11 / 5.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (61-69): Operator ** not compatible with types int_const 3 and rational_const 5 / 2.
// TypeError 2271: (61-69): Built-in binary operator ** cannot be applied to types int_const 3 and rational_const 5 / 2.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (50-60): Operator ** not compatible with types int_const 2 and rational_const 1 / 2.
// TypeError 2271: (50-60): Built-in binary operator ** cannot be applied to types int_const 2 and rational_const 1 / 2.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (50-62): Operator ** not compatible with types int_const 42 and rational_const -1 / 4.
// TypeError 2271: (50-62): Built-in binary operator ** cannot be applied to types int_const 42 and rational_const -1 / 4.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (61-77): Operator ** not compatible with types int_const 3 and ufixed128x18. Exponent is fractional.
// TypeError 2271: (61-77): Built-in binary operator ** cannot be applied to types int_const 3 and ufixed128x18. Exponent is fractional.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (61-78): Operator ** not compatible with types int_const 42 and fixed128x18. Exponent is fractional.
// TypeError 2271: (61-78): Built-in binary operator ** cannot be applied to types int_const 42 and fixed128x18. Exponent is fractional.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 4907: (50-61): Unary operator ~ cannot be applied to type fixed128x18.
// TypeError 4907: (50-61): Built-in unary operator ~ cannot be applied to type fixed128x18.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (50-64): Operator | not compatible with types fixed128x18 and int_const 3.
// TypeError 2271: (50-64): Built-in binary operator | cannot be applied to types fixed128x18 and int_const 3.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (50-65): Operator ^ not compatible with types fixed128x18 and int_const 3.
// TypeError 2271: (50-65): Built-in binary operator ^ cannot be applied to types fixed128x18 and int_const 3.

View File

@ -4,4 +4,4 @@ contract test {
}
}
// ----
// TypeError 2271: (50-65): Operator & not compatible with types fixed128x18 and int_const 3.
// TypeError 2271: (50-65): Built-in binary operator & cannot be applied to types fixed128x18 and int_const 3.

View File

@ -2,4 +2,4 @@ contract C {
uint public a = 0x42 << -8;
}
// ----
// TypeError 2271: (33-43): Operator << not compatible with types int_const 66 and int_const -8.
// TypeError 2271: (33-43): Built-in binary operator << cannot be applied to types int_const 66 and int_const -8.

View File

@ -2,4 +2,4 @@ contract C {
uint public a = 0x42 >> -8;
}
// ----
// TypeError 2271: (33-43): Operator >> not compatible with types int_const 66 and int_const -8.
// TypeError 2271: (33-43): Built-in binary operator >> cannot be applied to types int_const 66 and int_const -8.

View File

@ -2,4 +2,4 @@ contract C {
uint public a = 0x42 << 0x100000000;
}
// ----
// TypeError 2271: (33-52): Operator << not compatible with types int_const 66 and int_const 4294967296.
// TypeError 2271: (33-52): Built-in binary operator << cannot be applied to types int_const 66 and int_const 4294967296.

View File

@ -2,4 +2,4 @@ contract C {
uint public a = 0x42 >> 0x100000000;
}
// ----
// TypeError 2271: (33-52): Operator >> not compatible with types int_const 66 and int_const 4294967296.
// TypeError 2271: (33-52): Built-in binary operator >> cannot be applied to types int_const 66 and int_const 4294967296.

View File

@ -2,4 +2,4 @@ contract C {
uint public a = 0x42 >> (1 / 2);
}
// ----
// TypeError 2271: (33-48): Operator >> not compatible with types int_const 66 and rational_const 1 / 2.
// TypeError 2271: (33-48): Built-in binary operator >> cannot be applied to types int_const 66 and rational_const 1 / 2.

View File

@ -6,4 +6,4 @@ contract test {
}
}
// ----
// TypeError 4907: (97-99): Unary operator - cannot be applied to type uint256. Unary negation is only allowed for signed integers.
// TypeError 4907: (97-99): Built-in unary operator - cannot be applied to type uint256. Unary negation is only allowed for signed integers.

View File

@ -6,4 +6,4 @@ contract test {
}
// ----
// SyntaxError 9636: (70-72): Use of unary + is disallowed.
// TypeError 4907: (70-72): Unary operator + cannot be applied to type uint256.
// TypeError 4907: (70-72): Built-in unary operator + cannot be applied to type uint256.

View File

@ -7,5 +7,5 @@ contract C {
}
}
// ----
// TypeError 2271: (89-95): Operator >> not compatible with types int256 and int256.
// TypeError 2271: (179-193): Operator >> not compatible with types int256 and int256.
// TypeError 2271: (89-95): Built-in binary operator >> cannot be applied to types int256 and int256.
// TypeError 2271: (179-193): Built-in binary operator >> cannot be applied to types int256 and int256.

View File

@ -7,4 +7,4 @@ contract test {
}
}
// ----
// TypeError 2271: (117-123): Operator % not compatible with types rational_const 1 / 2 and fixed128x18. Fractional literals not supported.
// TypeError 2271: (117-123): Built-in binary operator % cannot be applied to types rational_const 1 / 2 and fixed128x18. Fractional literals not supported.

View File

@ -9,7 +9,7 @@ contract C {
}
}
// ----
// TypeError 2271: (85-108): Operator + not compatible with types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.
// TypeError 2271: (122-145): Operator - not compatible with types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.
// TypeError 2271: (159-182): Operator * not compatible with types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.
// TypeError 2271: (196-219): Operator / not compatible with types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.
// TypeError 2271: (85-108): Built-in binary operator + cannot be applied to types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.
// TypeError 2271: (122-145): Built-in binary operator - cannot be applied to types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.
// TypeError 2271: (159-182): Built-in binary operator * cannot be applied to types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.
// TypeError 2271: (196-219): Built-in binary operator / cannot be applied to types address and address. Arithmetic operations on addresses are not supported. Convert to integer first before using them.

View File

@ -32,22 +32,22 @@ contract C {
}
}
// ----
// TypeError 2271: (231-236): Operator > not compatible with types bool and bool.
// TypeError 2271: (250-255): Operator < not compatible with types bool and bool.
// TypeError 2271: (269-275): Operator >= not compatible with types bool and bool.
// TypeError 2271: (289-295): Operator <= not compatible with types bool and bool.
// TypeError 2271: (309-314): Operator & not compatible with types bool and bool.
// TypeError 2271: (328-333): Operator | not compatible with types bool and bool.
// TypeError 2271: (347-352): Operator ^ not compatible with types bool and bool.
// TypeError 4907: (366-368): Unary operator ~ cannot be applied to type bool.
// TypeError 4907: (382-384): Unary operator ~ cannot be applied to type bool.
// TypeError 2271: (398-403): Operator + not compatible with types bool and bool.
// TypeError 2271: (417-422): Operator - not compatible with types bool and bool.
// TypeError 4907: (436-438): Unary operator - cannot be applied to type bool.
// TypeError 4907: (452-454): Unary operator - cannot be applied to type bool.
// TypeError 2271: (468-473): Operator * not compatible with types bool and bool.
// TypeError 2271: (487-492): Operator / not compatible with types bool and bool.
// TypeError 2271: (506-512): Operator ** not compatible with types bool and bool.
// TypeError 2271: (526-531): Operator % not compatible with types bool and bool.
// TypeError 2271: (545-551): Operator << not compatible with types bool and bool.
// TypeError 2271: (565-571): Operator >> not compatible with types bool and bool.
// TypeError 2271: (231-236): Built-in binary operator > cannot be applied to types bool and bool.
// TypeError 2271: (250-255): Built-in binary operator < cannot be applied to types bool and bool.
// TypeError 2271: (269-275): Built-in binary operator >= cannot be applied to types bool and bool.
// TypeError 2271: (289-295): Built-in binary operator <= cannot be applied to types bool and bool.
// TypeError 2271: (309-314): Built-in binary operator & cannot be applied to types bool and bool.
// TypeError 2271: (328-333): Built-in binary operator | cannot be applied to types bool and bool.
// TypeError 2271: (347-352): Built-in binary operator ^ cannot be applied to types bool and bool.
// TypeError 4907: (366-368): Built-in unary operator ~ cannot be applied to type bool.
// TypeError 4907: (382-384): Built-in unary operator ~ cannot be applied to type bool.
// TypeError 2271: (398-403): Built-in binary operator + cannot be applied to types bool and bool.
// TypeError 2271: (417-422): Built-in binary operator - cannot be applied to types bool and bool.
// TypeError 4907: (436-438): Built-in unary operator - cannot be applied to type bool.
// TypeError 4907: (452-454): Built-in unary operator - cannot be applied to type bool.
// TypeError 2271: (468-473): Built-in binary operator * cannot be applied to types bool and bool.
// TypeError 2271: (487-492): Built-in binary operator / cannot be applied to types bool and bool.
// TypeError 2271: (506-512): Built-in binary operator ** cannot be applied to types bool and bool.
// TypeError 2271: (526-531): Built-in binary operator % cannot be applied to types bool and bool.
// TypeError 2271: (545-551): Built-in binary operator << cannot be applied to types bool and bool.
// TypeError 2271: (565-571): Built-in binary operator >> cannot be applied to types bool and bool.

View File

@ -2,4 +2,4 @@ contract C {
bytes32 b = ~hex"00ff11";
}
// ----
// TypeError 4907: (29-41): Unary operator ~ cannot be applied to type literal_string hex"00ff11".
// TypeError 4907: (29-41): Built-in unary operator ~ cannot be applied to type literal_string hex"00ff11".

View File

@ -8,6 +8,6 @@ contract c {
}
// ----
// TypeError 7407: (71-80): Type int_const 5221...(1225 digits omitted)...5168 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (133-142): Operator << not compatible with types int_const 1 and int_const 4096.
// TypeError 2271: (169-182): Operator << not compatible with types int_const 1000...(1226 digits omitted)...0000 and int_const 2.
// TypeError 2271: (133-142): Built-in binary operator << cannot be applied to types int_const 1 and int_const 4096.
// TypeError 2271: (169-182): Built-in binary operator << cannot be applied to types int_const 1000...(1226 digits omitted)...0000 and int_const 2.
// TypeError 7407: (169-182): Type int_const 1000...(1226 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.

View File

@ -5,5 +5,5 @@ contract c {
}
}
// ----
// TypeError 2271: (71-92): Operator / not compatible with types rational_const 1 / 5221...(1225 digits omitted)...5168 and int_const 5221...(1225 digits omitted)...5168. Precision of rational constants is limited to 4096 bits.
// TypeError 2271: (71-92): Built-in binary operator / cannot be applied to types rational_const 1 / 5221...(1225 digits omitted)...5168 and int_const 5221...(1225 digits omitted)...5168. Precision of rational constants is limited to 4096 bits.
// TypeError 2326: (71-92): Type rational_const 1 / 5221...(1225 digits omitted)...5168 is not implicitly convertible to expected type int256. Try converting to type ufixed8x80 or use an explicit conversion.

View File

@ -19,29 +19,29 @@ contract c {
}
}
// ----
// TypeError 2271: (71-112): Operator ** not compatible with types int_const 1797...(301 digits omitted)...7216 and int_const 4.
// TypeError 2271: (71-112): Built-in binary operator ** cannot be applied to types int_const 1797...(301 digits omitted)...7216 and int_const 4.
// TypeError 7407: (71-112): Type int_const 1797...(301 digits omitted)...7216 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (135-151): Operator ** not compatible with types int_const 4 and int_const 1157...(70 digits omitted)...9936.
// TypeError 2271: (135-151): Built-in binary operator ** cannot be applied to types int_const 4 and int_const 1157...(70 digits omitted)...9936.
// TypeError 7407: (126-169): Type int_const 1340...(147 digits omitted)...4096 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (201-217): Operator ** not compatible with types int_const 4 and int_const 1340...(147 digits omitted)...4096.
// TypeError 2271: (183-219): Operator ** not compatible with types int_const 4 and int_const -115...(71 digits omitted)...9936.
// TypeError 2271: (233-244): Operator ** not compatible with types int_const 2 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 2271: (258-270): Operator ** not compatible with types int_const -2 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 2271: (284-296): Operator ** not compatible with types int_const 2 and int_const -100...(1227 digits omitted)...0000.
// TypeError 2271: (310-323): Operator ** not compatible with types int_const -2 and int_const -100...(1227 digits omitted)...0000.
// TypeError 2271: (337-348): Operator ** not compatible with types int_const 1000...(1226 digits omitted)...0000 and int_const 2.
// TypeError 2271: (201-217): Built-in binary operator ** cannot be applied to types int_const 4 and int_const 1340...(147 digits omitted)...4096.
// TypeError 2271: (183-219): Built-in binary operator ** cannot be applied to types int_const 4 and int_const -115...(71 digits omitted)...9936.
// TypeError 2271: (233-244): Built-in binary operator ** cannot be applied to types int_const 2 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 2271: (258-270): Built-in binary operator ** cannot be applied to types int_const -2 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 2271: (284-296): Built-in binary operator ** cannot be applied to types int_const 2 and int_const -100...(1227 digits omitted)...0000.
// TypeError 2271: (310-323): Built-in binary operator ** cannot be applied to types int_const -2 and int_const -100...(1227 digits omitted)...0000.
// TypeError 2271: (337-348): Built-in binary operator ** cannot be applied to types int_const 1000...(1226 digits omitted)...0000 and int_const 2.
// TypeError 7407: (337-348): Type int_const 1000...(1226 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (362-374): Operator ** not compatible with types int_const -100...(1227 digits omitted)...0000 and int_const 2.
// TypeError 2271: (362-374): Built-in binary operator ** cannot be applied to types int_const -100...(1227 digits omitted)...0000 and int_const 2.
// TypeError 7407: (362-374): Type int_const -100...(1227 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (388-400): Operator ** not compatible with types int_const 1000...(1226 digits omitted)...0000 and int_const -2.
// TypeError 2271: (388-400): Built-in binary operator ** cannot be applied to types int_const 1000...(1226 digits omitted)...0000 and int_const -2.
// TypeError 7407: (388-400): Type int_const 1000...(1226 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (414-427): Operator ** not compatible with types int_const -100...(1227 digits omitted)...0000 and int_const -2.
// TypeError 2271: (414-427): Built-in binary operator ** cannot be applied to types int_const -100...(1227 digits omitted)...0000 and int_const -2.
// TypeError 7407: (414-427): Type int_const -100...(1227 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (441-457): Operator ** not compatible with types int_const 1000...(1226 digits omitted)...0000 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 2271: (441-457): Built-in binary operator ** cannot be applied to types int_const 1000...(1226 digits omitted)...0000 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 7407: (441-457): Type int_const 1000...(1226 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (471-488): Operator ** not compatible with types int_const 1000...(1226 digits omitted)...0000 and int_const -100...(1227 digits omitted)...0000.
// TypeError 2271: (471-488): Built-in binary operator ** cannot be applied to types int_const 1000...(1226 digits omitted)...0000 and int_const -100...(1227 digits omitted)...0000.
// TypeError 7407: (471-488): Type int_const 1000...(1226 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (502-519): Operator ** not compatible with types int_const -100...(1227 digits omitted)...0000 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 2271: (502-519): Built-in binary operator ** cannot be applied to types int_const -100...(1227 digits omitted)...0000 and int_const 1000...(1226 digits omitted)...0000.
// TypeError 7407: (502-519): Type int_const -100...(1227 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.
// TypeError 2271: (533-551): Operator ** not compatible with types int_const -100...(1227 digits omitted)...0000 and int_const -100...(1227 digits omitted)...0000.
// TypeError 2271: (533-551): Built-in binary operator ** cannot be applied to types int_const -100...(1227 digits omitted)...0000 and int_const -100...(1227 digits omitted)...0000.
// TypeError 7407: (533-551): Type int_const -100...(1227 digits omitted)...0000 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.

View File

@ -5,5 +5,5 @@ contract c {
}
}
// ----
// TypeError 2271: (71-90): Operator * not compatible with types int_const 5221...(1225 digits omitted)...5168 and int_const 5221...(1225 digits omitted)...5168. Precision of rational constants is limited to 4096 bits.
// TypeError 2271: (71-90): Built-in binary operator * cannot be applied to types int_const 5221...(1225 digits omitted)...5168 and int_const 5221...(1225 digits omitted)...5168. Precision of rational constants is limited to 4096 bits.
// TypeError 7407: (71-90): Type int_const 5221...(1225 digits omitted)...5168 is not implicitly convertible to expected type int256. Literal is too large to fit in int256.