From 0c32ddb0d6130b38b70180c4076fbc8123fb401f Mon Sep 17 00:00:00 2001 From: pcw109550 Date: Mon, 8 Apr 2024 11:48:53 -0600 Subject: [PATCH] Fix error msg for hex number combined with unit denomination --- libsolidity/analysis/TypeChecker.cpp | 2 +- .../denominations/combining_hex_and_denomination.sol | 2 +- .../syntaxTests/denominations/invalid_denomination_address.sol | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libsolidity/analysis/TypeChecker.cpp b/libsolidity/analysis/TypeChecker.cpp index 5bef2803acb6..0bcab65d932f 100644 --- a/libsolidity/analysis/TypeChecker.cpp +++ b/libsolidity/analysis/TypeChecker.cpp @@ -3874,7 +3874,7 @@ void TypeChecker::endVisit(Literal const& _literal) 5145_error, _literal.location(), "Hexadecimal numbers cannot be used with unit denominations. " - "You can use an expression of the form \"0x1234 * 1 day\" instead." + "You can use an expression of the form \"0x1234 * 1 days\" instead." ); if (_literal.subDenomination() == Literal::SubDenomination::Year) diff --git a/test/libsolidity/syntaxTests/denominations/combining_hex_and_denomination.sol b/test/libsolidity/syntaxTests/denominations/combining_hex_and_denomination.sol index 994c0568a141..f200b135600e 100644 --- a/test/libsolidity/syntaxTests/denominations/combining_hex_and_denomination.sol +++ b/test/libsolidity/syntaxTests/denominations/combining_hex_and_denomination.sol @@ -2,4 +2,4 @@ contract C { uint constant x = 0x01 wei; } // ---- -// TypeError 5145: (32-40): Hexadecimal numbers cannot be used with unit denominations. You can use an expression of the form "0x1234 * 1 day" instead. +// TypeError 5145: (32-40): Hexadecimal numbers cannot be used with unit denominations. You can use an expression of the form "0x1234 * 1 days" instead. diff --git a/test/libsolidity/syntaxTests/denominations/invalid_denomination_address.sol b/test/libsolidity/syntaxTests/denominations/invalid_denomination_address.sol index 8eec22dee3f0..7c1f1e270f08 100644 --- a/test/libsolidity/syntaxTests/denominations/invalid_denomination_address.sol +++ b/test/libsolidity/syntaxTests/denominations/invalid_denomination_address.sol @@ -2,4 +2,4 @@ contract C { address a = 0x11111122222333334444455555666667777788888 wei; } // ---- -// TypeError 5145: (26-73): Hexadecimal numbers cannot be used with unit denominations. You can use an expression of the form "0x1234 * 1 day" instead. +// TypeError 5145: (26-73): Hexadecimal numbers cannot be used with unit denominations. You can use an expression of the form "0x1234 * 1 days" instead.