From e9197ff30fce44fd77b04de20e2f2cd08e759733 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kamil=20=C5=9Aliwak?= Date: Fri, 24 Feb 2023 19:35:45 +0100 Subject: [PATCH] Allow marking free functions as suffixes --- Changelog.md | 3 + libsolidity/analysis/TypeChecker.cpp | 98 +++++++++++++++++++ libsolidity/ast/AST.h | 12 ++- libsolidity/ast/ASTJsonExporter.cpp | 1 + libsolidity/ast/ASTJsonImporter.cpp | 1 + libsolidity/parsing/Parser.cpp | 20 +++- libsolidity/parsing/Parser.h | 3 +- .../input.sol | 1 + .../recovery_ast_constructor/output | 2 + .../standard_import_ast/input.json | 1 + .../standard_import_ast/output.json | 1 + .../standard_only_ast_requested/output.json | 1 + .../ASTJSON/abstract_contract.json | 1 + .../ASTJSON/abstract_contract_parseOnly.json | 1 + test/libsolidity/ASTJSON/address_payable.json | 1 + .../ASTJSON/address_payable_parseOnly.json | 1 + test/libsolidity/ASTJSON/assembly/call.json | 1 + .../ASTJSON/assembly/call_parseOnly.json | 1 + .../ASTJSON/assembly/empty_block.json | 1 + .../assembly/empty_block_parseOnly.json | 1 + .../ASTJSON/assembly/function.json | 1 + .../ASTJSON/assembly/function_parseOnly.json | 1 + test/libsolidity/ASTJSON/assembly/leave.json | 1 + .../ASTJSON/assembly/leave_parseOnly.json | 1 + test/libsolidity/ASTJSON/assembly/loop.json | 1 + .../ASTJSON/assembly/loop_parseOnly.json | 1 + .../ASTJSON/assembly/nested_functions.json | 1 + .../assembly/nested_functions_parseOnly.json | 1 + .../ASTJSON/assembly/slot_offset.json | 1 + .../assembly/slot_offset_parseOnly.json | 1 + .../ASTJSON/assembly/stringlit.json | 1 + .../ASTJSON/assembly/stringlit_parseOnly.json | 1 + test/libsolidity/ASTJSON/assembly/switch.json | 1 + .../ASTJSON/assembly/switch_default.json | 1 + .../assembly/switch_default_parseOnly.json | 1 + .../ASTJSON/assembly/switch_parseOnly.json | 1 + .../ASTJSON/assembly/var_access.json | 1 + .../assembly/var_access_parseOnly.json | 1 + ...nternal_function_different_ids_export.json | 7 ++ .../ast_internal_function_id_export.json | 18 ++++ .../ASTJSON/base_constructor_call.json | 2 + .../base_constructor_call_parseOnly.json | 2 + test/libsolidity/ASTJSON/constructor.json | 1 + .../ASTJSON/constructor_parseOnly.json | 1 + test/libsolidity/ASTJSON/documentation.json | 1 + .../ASTJSON/documentation_local_variable.json | 2 + ...ocumentation_local_variable_parseOnly.json | 2 + .../ASTJSON/documentation_on_statements.json | 1 + ...documentation_on_statements_parseOnly.json | 1 + .../ASTJSON/documentation_parseOnly.json | 1 + .../ASTJSON/documentation_triple.json | 1 + .../documentation_triple_parseOnly.json | 1 + .../ASTJSON/enum_value_declaration.json | 1 + .../enum_value_declaration_parseOnly.json | 1 + .../ASTJSON/event_aggregated_contract.json | 2 + .../event_emited_in_base_contract.json | 1 + .../ASTJSON/fail_after_parsing_parseOnly.json | 2 + test/libsolidity/ASTJSON/fallback.json | 1 + .../ASTJSON/fallback_and_receive_ether.json | 2 + .../fallback_and_receive_ether_parseOnly.json | 2 + .../ASTJSON/fallback_parseOnly.json | 1 + .../libsolidity/ASTJSON/fallback_payable.json | 1 + .../ASTJSON/fallback_payable_parseOnly.json | 1 + test/libsolidity/ASTJSON/function_type.json | 1 + .../ASTJSON/function_type_parseOnly.json | 1 + test/libsolidity/ASTJSON/indirect_event.json | 2 + .../ASTJSON/indirect_event_parseOnly.json | 2 + .../long_type_name_binary_operation.json | 1 + ..._type_name_binary_operation_parseOnly.json | 1 + .../ASTJSON/long_type_name_identifier.json | 1 + .../long_type_name_identifier_parseOnly.json | 1 + .../ASTJSON/modifier_definition.json | 1 + .../modifier_definition_parseOnly.json | 1 + .../ASTJSON/modifier_invocation.json | 1 + .../modifier_invocation_parseOnly.json | 1 + test/libsolidity/ASTJSON/non_utf8.json | 1 + .../ASTJSON/non_utf8_parseOnly.json | 1 + .../not_existing_import_parseOnly.json | 1 + test/libsolidity/ASTJSON/override.json | 5 + .../ASTJSON/override_parseOnly.json | 5 + test/libsolidity/ASTJSON/receive_ether.json | 1 + .../ASTJSON/receive_ether_parseOnly.json | 1 + test/libsolidity/ASTJSON/short_type_name.json | 1 + .../ASTJSON/short_type_name_parseOnly.json | 1 + .../ASTJSON/short_type_name_ref.json | 1 + .../short_type_name_ref_parseOnly.json | 1 + test/libsolidity/ASTJSON/source_location.json | 1 + .../ASTJSON/source_location_parseOnly.json | 1 + test/libsolidity/ASTJSON/string.json | 1 + .../libsolidity/ASTJSON/string_parseOnly.json | 1 + .../ASTJSON/two_base_functions.json | 3 + .../ASTJSON/two_base_functions_parseOnly.json | 3 + test/libsolidity/ASTJSON/unicode.json | 1 + .../ASTJSON/unicode_parseOnly.json | 1 + test/libsolidity/ASTJSON/used_errors.json | 2 + .../ASTJSON/used_errors_parseOnly.json | 2 + .../ASTJSON/userDefinedValueType.json | 1 + .../userDefinedValueType_parseOnly.json | 1 + .../ASTJSON/user_defined_operator.json | 3 + .../ASTJSON/using_for_directive.json | 1 + .../using_for_directive_parseOnly.json | 1 + test/libsolidity/ASTJSON/yul_hex_literal.json | 1 + .../ASTJSON/yul_hex_literal_parseOnly.json | 1 + 103 files changed, 276 insertions(+), 8 deletions(-) diff --git a/Changelog.md b/Changelog.md index 71ccea0df..e3eba2c5e 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,6 +1,7 @@ ### 0.8.21 (unreleased) Language Features: + * General: Introduce literal suffix functions. Free functions can now be marked as suffixes and applied to literals using a new suffix call syntax. Compiler Features: @@ -13,6 +14,8 @@ Bugfixes: AST Changes: + * AST: Add ``isSuffixCall`` field to ``FunctionCall`` AST node, which is ``true`` for calls resulting from applying a literal suffix. + * AST: Add ``suffix`` field to ``FunctionDefinition`` AST node, which is ``true`` for free function definitions using the ``suffix`` modifier. * AST: Add the ``experimentalSolidity`` field to the ``SourceUnit`` nodes, which indicate whether the experimental parsing mode has been enabled via ``pragma experimental solidity``. diff --git a/libsolidity/analysis/TypeChecker.cpp b/libsolidity/analysis/TypeChecker.cpp index e7721fd9e..f05ee0d77 100644 --- a/libsolidity/analysis/TypeChecker.cpp +++ b/libsolidity/analysis/TypeChecker.cpp @@ -426,6 +426,104 @@ bool TypeChecker::visit(FunctionDefinition const& _function) else if (_function.libraryFunction()) m_errorReporter.typeError(7801_error, _function.location(), "Library functions cannot be \"virtual\"."); } + if (_function.usableAsSuffix()) + { + if (_function.stateMutability() != StateMutability::Pure) + m_errorReporter.typeError( + 1716_error, + _function.location(), + "Only pure functions can be used as literal suffixes" + ); + + optional parameterCountMessage; + if (_function.parameterList().parameters().size() == 0) + parameterCountMessage = "Functions that take no arguments cannot be used as literal suffixes."; + else if (_function.parameterList().parameters().size() >= 3) + parameterCountMessage = "Functions that take 3 or more arguments cannot be used as literal suffixes."; + + if (parameterCountMessage.has_value()) + m_errorReporter.typeError(9128_error, _function.parameterList().location(), parameterCountMessage.value()); + else if (_function.parameterList().parameters().size() == 2) + { + auto const* mantissaType = dynamic_cast(_function.parameterList().parameters()[0]->type()); + auto const* exponentType = dynamic_cast(_function.parameterList().parameters()[1]->type()); + + vector mantissaOrExponentTypeErrorMessages; + if (!mantissaType) + mantissaOrExponentTypeErrorMessages.emplace_back("The mantissa parameter must be an integer."); + if (!exponentType) + mantissaOrExponentTypeErrorMessages.emplace_back("The exponent parameter must be an unsigned integer."); + + if (!mantissaOrExponentTypeErrorMessages.empty()) + m_errorReporter.typeError( + 1587_error, + _function.parameterList().location(), + "Literal suffix function has invalid parameter types. " + + joinHumanReadable(mantissaOrExponentTypeErrorMessages, " ") + ); + + if (exponentType && exponentType->isSigned()) + m_errorReporter.typeError( + 3123_error, + _function.parameterList().parameters()[1]->typeName().location(), + "The exponent parameter of a literal suffix function must be unsigned. " + "Exponent is always either zero or a negative power of 10 but the parameter represents its absolute value." + ); + } + else if (_function.parameterList().parameters().size() == 1) + { + auto const* parameterType = _function.parameterList().parameters()[0]->type(); + + if (dynamic_cast(parameterType)) + m_errorReporter.typeError( + 2699_error, + _function.parameterList().parameters()[0]->location(), + "Parameters of fixed-point types are not allowed in literal suffix functions. " + "To support fractional literals the suffix function must accept two integer arguments " + "(mantissa and exponent) that such literals can be decomposed into." + ); + + if ( + !TypeProvider::boolean()->isImplicitlyConvertibleTo(*parameterType) && + // ASSUMPTION: There are no address payable literals. + !TypeProvider::address()->isImplicitlyConvertibleTo(*parameterType) && + // ASSUMPTION: Literal 1 is implicitly convertible to any integer type. + !TypeProvider::rationalNumber(1)->isImplicitlyConvertibleTo(*parameterType) && + // ASSUMPTION: bytes1 is implicitly convertible to any fixed-bytes type. + !TypeProvider::fixedBytes(1)->isImplicitlyConvertibleTo(*parameterType) && + !TypeProvider::stringLiteral("a")->isImplicitlyConvertibleTo(*parameterType) + ) + m_errorReporter.typeError( + 2998_error, + _function.parameterList().parameters()[0]->location(), + "This literal suffix function is not usable as a suffix because no literal is " + "implicitly convertible to its parameter type." + ); + } + + solAssert(_function.returnParameterList()); + if (_function.returnParameterList()->parameters().size() != 1) + { + m_errorReporter.typeError( + 7848_error, + _function.returnParameterList()->location(), + "Literal suffix functions must return exactly one value." + ); + } + + for (ASTPointer returnParameter: _function.returnParameterList()->parameters()) + { + solAssert(returnParameter); + auto referenceType = dynamic_cast(returnParameter->type()); + auto mappingType = dynamic_cast(returnParameter->type()); + if (mappingType || (referenceType && !referenceType->dataStoredIn(DataLocation::Memory))) + m_errorReporter.typeError( + 7251_error, + returnParameter->location(), + "Literal suffix functions can only return value types and reference types stored in memory." + ); + } + } if (_function.overrides() && _function.isFree()) m_errorReporter.syntaxError(1750_error, _function.location(), "Free functions cannot override."); diff --git a/libsolidity/ast/AST.h b/libsolidity/ast/AST.h index 494cbeac2..2608fb8bb 100644 --- a/libsolidity/ast/AST.h +++ b/libsolidity/ast/AST.h @@ -951,6 +951,7 @@ public: bool _free, Token _kind, bool _isVirtual, + bool _usableAsSuffix, ASTPointer const& _overrides, ASTPointer const& _documentation, ASTPointer const& _parameters, @@ -964,11 +965,14 @@ public: m_stateMutability(_stateMutability), m_free(_free), m_kind(_kind), + m_usableAsSuffix(_usableAsSuffix), m_functionModifiers(std::move(_modifiers)), m_body(_body) { solAssert(_kind == Token::Constructor || _kind == Token::Function || _kind == Token::Fallback || _kind == Token::Receive, ""); solAssert(isOrdinary() == !name().empty(), ""); + if (_usableAsSuffix) + solAssert(_free); } void accept(ASTVisitor& _visitor) override; @@ -981,6 +985,7 @@ public: bool isFallback() const { return m_kind == Token::Fallback; } bool isReceive() const { return m_kind == Token::Receive; } bool isFree() const { return m_free; } + bool usableAsSuffix() const { return m_usableAsSuffix; } Token kind() const { return m_kind; } bool isPayable() const { return m_stateMutability == StateMutability::Payable; } std::vector> const& modifiers() const { return m_functionModifiers; } @@ -1027,9 +1032,10 @@ public: ) const override; private: - StateMutability m_stateMutability; - bool m_free; - Token const m_kind; + StateMutability m_stateMutability{}; + bool m_free{}; + Token const m_kind{}; + bool m_usableAsSuffix{}; std::vector> m_functionModifiers; ASTPointer m_body; }; diff --git a/libsolidity/ast/ASTJsonExporter.cpp b/libsolidity/ast/ASTJsonExporter.cpp index da7f76936..c91506545 100644 --- a/libsolidity/ast/ASTJsonExporter.cpp +++ b/libsolidity/ast/ASTJsonExporter.cpp @@ -458,6 +458,7 @@ bool ASTJsonExporter::visit(FunctionDefinition const& _node) make_pair("kind", _node.isFree() ? "freeFunction" : TokenTraits::toString(_node.kind())), make_pair("stateMutability", stateMutabilityToString(_node.stateMutability())), make_pair("virtual", _node.markedVirtual()), + make_pair("suffix", _node.usableAsSuffix()), make_pair("overrides", _node.overrides() ? toJson(*_node.overrides()) : Json::nullValue), make_pair("parameters", toJson(_node.parameterList())), make_pair("returnParameters", toJson(*_node.returnParameterList())), diff --git a/libsolidity/ast/ASTJsonImporter.cpp b/libsolidity/ast/ASTJsonImporter.cpp index dd7098aab..9329f02cc 100644 --- a/libsolidity/ast/ASTJsonImporter.cpp +++ b/libsolidity/ast/ASTJsonImporter.cpp @@ -557,6 +557,7 @@ ASTPointer ASTJsonImporter::createFunctionDefinition(Json::V freeFunction, kind, memberAsBool(_node, "virtual"), + memberAsBool(_node, "suffix"), _node["overrides"].isNull() ? nullptr : createOverrideSpecifier(member(_node, "overrides")), _node["documentation"].isNull() ? nullptr : createDocumentation(member(_node, "documentation")), createParameterList(member(_node, "parameters")), diff --git a/libsolidity/parsing/Parser.cpp b/libsolidity/parsing/Parser.cpp index 39b2df131..dae0b5fae 100644 --- a/libsolidity/parsing/Parser.cpp +++ b/libsolidity/parsing/Parser.cpp @@ -540,7 +540,7 @@ StateMutability Parser::parseStateMutability() return stateMutability; } -Parser::FunctionHeaderParserResult Parser::parseFunctionHeader(bool _isStateVariable) +Parser::FunctionHeaderParserResult Parser::parseFunctionHeader(bool _isStateVariable, bool _freeFunction) { RecursionGuard recursionGuard(*this); FunctionHeaderParserResult result; @@ -552,7 +552,18 @@ Parser::FunctionHeaderParserResult Parser::parseFunctionHeader(bool _isStateVari { Token token = m_scanner->currentToken(); if (!_isStateVariable && token == Token::Identifier) - result.modifiers.push_back(parseModifierInvocation()); + { + if (_freeFunction && currentLiteral() == "suffix") + { + if (result.usableAsSuffix) + parserError(2878_error, "Suffix already specified."); + else + result.usableAsSuffix = true; + advance(); + } + else + result.modifiers.push_back(parseModifierInvocation()); + } else if (TokenTraits::isVisibilitySpecifier(token)) { if (result.visibility != Visibility::Default) @@ -662,7 +673,7 @@ ASTPointer Parser::parseFunctionDefinition(bool _freeFunction) name = make_shared(); } - FunctionHeaderParserResult header = parseFunctionHeader(false); + FunctionHeaderParserResult header = parseFunctionHeader(false /* _isStateVariable */, _freeFunction); ASTPointer block; nodeFactory.markEndPosition(); @@ -681,6 +692,7 @@ ASTPointer Parser::parseFunctionDefinition(bool _freeFunction) _freeFunction, kind, header.isVirtual, + header.usableAsSuffix, header.overrides, documentation, header.parameters, @@ -1207,7 +1219,7 @@ ASTPointer Parser::parseFunctionType() RecursionGuard recursionGuard(*this); ASTNodeFactory nodeFactory(*this); expectToken(Token::Function); - FunctionHeaderParserResult header = parseFunctionHeader(true); + FunctionHeaderParserResult header = parseFunctionHeader(true /* _isStateVariable */, false /* _freeFunction */); return nodeFactory.createNode( header.parameters, header.returnParameters, diff --git a/libsolidity/parsing/Parser.h b/libsolidity/parsing/Parser.h index c83b307b8..e268d1e69 100644 --- a/libsolidity/parsing/Parser.h +++ b/libsolidity/parsing/Parser.h @@ -69,6 +69,7 @@ private: struct FunctionHeaderParserResult { bool isVirtual = false; + bool usableAsSuffix = false; ASTPointer overrides; ASTPointer parameters; ASTPointer returnParameters; @@ -99,7 +100,7 @@ private: Visibility parseVisibilitySpecifier(); ASTPointer parseOverrideSpecifier(); StateMutability parseStateMutability(); - FunctionHeaderParserResult parseFunctionHeader(bool _isStateVariable); + FunctionHeaderParserResult parseFunctionHeader(bool _isStateVariable, bool _freeFunction); ASTPointer parseFunctionDefinition(bool _freeFunction = false); ASTPointer parseStructDefinition(); ASTPointer parseEnumDefinition(); diff --git a/test/cmdlineTests/ast_json_import_wrong_evmVersion/input.sol b/test/cmdlineTests/ast_json_import_wrong_evmVersion/input.sol index 4f8eb2c79..b46d3e79f 100644 --- a/test/cmdlineTests/ast_json_import_wrong_evmVersion/input.sol +++ b/test/cmdlineTests/ast_json_import_wrong_evmVersion/input.sol @@ -103,6 +103,7 @@ "scope": 7, "src": "40:46:0", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/cmdlineTests/recovery_ast_constructor/output b/test/cmdlineTests/recovery_ast_constructor/output index fd92fb7fa..1bc33b403 100644 --- a/test/cmdlineTests/recovery_ast_constructor/output +++ b/test/cmdlineTests/recovery_ast_constructor/output @@ -80,6 +80,7 @@ JSON AST (compact format): "scope": 18, "src": "82:63:0", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -174,6 +175,7 @@ JSON AST (compact format): "scope": 18, "src": "398:61:0", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/cmdlineTests/standard_import_ast/input.json b/test/cmdlineTests/standard_import_ast/input.json index 5ae7a5297..c5993b00a 100644 --- a/test/cmdlineTests/standard_import_ast/input.json +++ b/test/cmdlineTests/standard_import_ast/input.json @@ -68,6 +68,7 @@ "scope": 6, "src": "72:27:0", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/cmdlineTests/standard_import_ast/output.json b/test/cmdlineTests/standard_import_ast/output.json index 6ecac5ca3..12bad1863 100644 --- a/test/cmdlineTests/standard_import_ast/output.json +++ b/test/cmdlineTests/standard_import_ast/output.json @@ -79,6 +79,7 @@ "scope": 6, "src": "72:27:0", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/cmdlineTests/standard_only_ast_requested/output.json b/test/cmdlineTests/standard_only_ast_requested/output.json index 6ecac5ca3..12bad1863 100644 --- a/test/cmdlineTests/standard_only_ast_requested/output.json +++ b/test/cmdlineTests/standard_only_ast_requested/output.json @@ -79,6 +79,7 @@ "scope": 6, "src": "72:27:0", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/abstract_contract.json b/test/libsolidity/ASTJSON/abstract_contract.json index 48c20b435..df346f4a2 100644 --- a/test/libsolidity/ASTJSON/abstract_contract.json +++ b/test/libsolidity/ASTJSON/abstract_contract.json @@ -60,6 +60,7 @@ "scope": 5, "src": "23:18:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" } diff --git a/test/libsolidity/ASTJSON/abstract_contract_parseOnly.json b/test/libsolidity/ASTJSON/abstract_contract_parseOnly.json index d9ba04e6c..58eda057b 100644 --- a/test/libsolidity/ASTJSON/abstract_contract_parseOnly.json +++ b/test/libsolidity/ASTJSON/abstract_contract_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "23:18:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false } ], diff --git a/test/libsolidity/ASTJSON/address_payable.json b/test/libsolidity/ASTJSON/address_payable.json index adf79823e..eab7e22a8 100644 --- a/test/libsolidity/ASTJSON/address_payable.json +++ b/test/libsolidity/ASTJSON/address_payable.json @@ -565,6 +565,7 @@ "scope": 39, "src": "67:189:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/address_payable_parseOnly.json b/test/libsolidity/ASTJSON/address_payable_parseOnly.json index 02b809cc9..28ced57e7 100644 --- a/test/libsolidity/ASTJSON/address_payable_parseOnly.json +++ b/test/libsolidity/ASTJSON/address_payable_parseOnly.json @@ -373,6 +373,7 @@ }, "src": "67:189:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/call.json b/test/libsolidity/ASTJSON/assembly/call.json index 7081d2f98..1a9040779 100644 --- a/test/libsolidity/ASTJSON/assembly/call.json +++ b/test/libsolidity/ASTJSON/assembly/call.json @@ -158,6 +158,7 @@ "scope": 6, "src": "17:79:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/call_parseOnly.json b/test/libsolidity/ASTJSON/assembly/call_parseOnly.json index 1a9dc74a2..f10642d8f 100644 --- a/test/libsolidity/ASTJSON/assembly/call_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/call_parseOnly.json @@ -143,6 +143,7 @@ }, "src": "17:79:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/empty_block.json b/test/libsolidity/ASTJSON/assembly/empty_block.json index 05dc8c0c0..7991551e0 100644 --- a/test/libsolidity/ASTJSON/assembly/empty_block.json +++ b/test/libsolidity/ASTJSON/assembly/empty_block.json @@ -83,6 +83,7 @@ "scope": 6, "src": "17:56:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/empty_block_parseOnly.json b/test/libsolidity/ASTJSON/assembly/empty_block_parseOnly.json index 4a1d1f614..43b1f31ec 100644 --- a/test/libsolidity/ASTJSON/assembly/empty_block_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/empty_block_parseOnly.json @@ -68,6 +68,7 @@ }, "src": "17:56:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/function.json b/test/libsolidity/ASTJSON/assembly/function.json index d8822183c..b7733cad9 100644 --- a/test/libsolidity/ASTJSON/assembly/function.json +++ b/test/libsolidity/ASTJSON/assembly/function.json @@ -145,6 +145,7 @@ "scope": 6, "src": "17:93:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/function_parseOnly.json b/test/libsolidity/ASTJSON/assembly/function_parseOnly.json index 8115fc0ae..e36e0d295 100644 --- a/test/libsolidity/ASTJSON/assembly/function_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/function_parseOnly.json @@ -130,6 +130,7 @@ }, "src": "17:93:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/leave.json b/test/libsolidity/ASTJSON/assembly/leave.json index 23ac98ccb..9f0e23ebb 100644 --- a/test/libsolidity/ASTJSON/assembly/leave.json +++ b/test/libsolidity/ASTJSON/assembly/leave.json @@ -95,6 +95,7 @@ "scope": 6, "src": "17:71:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/leave_parseOnly.json b/test/libsolidity/ASTJSON/assembly/leave_parseOnly.json index 215266456..167a1d3c7 100644 --- a/test/libsolidity/ASTJSON/assembly/leave_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/leave_parseOnly.json @@ -80,6 +80,7 @@ }, "src": "17:71:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/loop.json b/test/libsolidity/ASTJSON/assembly/loop.json index 7e684b4a3..e5e313ffd 100644 --- a/test/libsolidity/ASTJSON/assembly/loop.json +++ b/test/libsolidity/ASTJSON/assembly/loop.json @@ -158,6 +158,7 @@ "scope": 6, "src": "17:99:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/loop_parseOnly.json b/test/libsolidity/ASTJSON/assembly/loop_parseOnly.json index 934afdf42..46aa06764 100644 --- a/test/libsolidity/ASTJSON/assembly/loop_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/loop_parseOnly.json @@ -143,6 +143,7 @@ }, "src": "17:99:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/nested_functions.json b/test/libsolidity/ASTJSON/assembly/nested_functions.json index 881e7456f..fb078f623 100644 --- a/test/libsolidity/ASTJSON/assembly/nested_functions.json +++ b/test/libsolidity/ASTJSON/assembly/nested_functions.json @@ -163,6 +163,7 @@ "scope": 8, "src": "15:137:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/nested_functions_parseOnly.json b/test/libsolidity/ASTJSON/assembly/nested_functions_parseOnly.json index a9ac0965a..8c2eaaf59 100644 --- a/test/libsolidity/ASTJSON/assembly/nested_functions_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/nested_functions_parseOnly.json @@ -130,6 +130,7 @@ }, "src": "15:137:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/slot_offset.json b/test/libsolidity/ASTJSON/assembly/slot_offset.json index e61125cbd..eb5f1a161 100644 --- a/test/libsolidity/ASTJSON/assembly/slot_offset.json +++ b/test/libsolidity/ASTJSON/assembly/slot_offset.json @@ -239,6 +239,7 @@ "scope": 12, "src": "51:95:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/slot_offset_parseOnly.json b/test/libsolidity/ASTJSON/assembly/slot_offset_parseOnly.json index ccf9c53fe..a37d76e1d 100644 --- a/test/libsolidity/ASTJSON/assembly/slot_offset_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/slot_offset_parseOnly.json @@ -184,6 +184,7 @@ }, "src": "51:95:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/stringlit.json b/test/libsolidity/ASTJSON/assembly/stringlit.json index 33211190e..a53b79a42 100644 --- a/test/libsolidity/ASTJSON/assembly/stringlit.json +++ b/test/libsolidity/ASTJSON/assembly/stringlit.json @@ -100,6 +100,7 @@ "scope": 6, "src": "17:63:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/stringlit_parseOnly.json b/test/libsolidity/ASTJSON/assembly/stringlit_parseOnly.json index dd4e1d061..23de54b87 100644 --- a/test/libsolidity/ASTJSON/assembly/stringlit_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/stringlit_parseOnly.json @@ -85,6 +85,7 @@ }, "src": "17:63:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/switch.json b/test/libsolidity/ASTJSON/assembly/switch.json index 26874da0e..4e531ee89 100644 --- a/test/libsolidity/ASTJSON/assembly/switch.json +++ b/test/libsolidity/ASTJSON/assembly/switch.json @@ -191,6 +191,7 @@ "scope": 6, "src": "17:179:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/switch_default.json b/test/libsolidity/ASTJSON/assembly/switch_default.json index d472ea018..0d6782417 100644 --- a/test/libsolidity/ASTJSON/assembly/switch_default.json +++ b/test/libsolidity/ASTJSON/assembly/switch_default.json @@ -122,6 +122,7 @@ "scope": 6, "src": "17:83:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/switch_default_parseOnly.json b/test/libsolidity/ASTJSON/assembly/switch_default_parseOnly.json index e4a3e1b40..ac08b8749 100644 --- a/test/libsolidity/ASTJSON/assembly/switch_default_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/switch_default_parseOnly.json @@ -107,6 +107,7 @@ }, "src": "17:83:1", "stateMutability": "view", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/switch_parseOnly.json b/test/libsolidity/ASTJSON/assembly/switch_parseOnly.json index d7392a8c8..e3a4f9e20 100644 --- a/test/libsolidity/ASTJSON/assembly/switch_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/switch_parseOnly.json @@ -176,6 +176,7 @@ }, "src": "17:179:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/var_access.json b/test/libsolidity/ASTJSON/assembly/var_access.json index c93667df2..2ee39290c 100644 --- a/test/libsolidity/ASTJSON/assembly/var_access.json +++ b/test/libsolidity/ASTJSON/assembly/var_access.json @@ -149,6 +149,7 @@ "scope": 9, "src": "17:76:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/assembly/var_access_parseOnly.json b/test/libsolidity/ASTJSON/assembly/var_access_parseOnly.json index b56324944..79368065e 100644 --- a/test/libsolidity/ASTJSON/assembly/var_access_parseOnly.json +++ b/test/libsolidity/ASTJSON/assembly/var_access_parseOnly.json @@ -116,6 +116,7 @@ }, "src": "17:76:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/ast_internal_function_different_ids_export.json b/test/libsolidity/ASTJSON/ast_internal_function_different_ids_export.json index 07886a166..cb8ef7724 100644 --- a/test/libsolidity/ASTJSON/ast_internal_function_different_ids_export.json +++ b/test/libsolidity/ASTJSON/ast_internal_function_different_ids_export.json @@ -52,6 +52,7 @@ "scope": 79, "src": "0:19:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -87,6 +88,7 @@ "scope": 79, "src": "20:19:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -139,6 +141,7 @@ "scope": 78, "src": "56:24:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -174,6 +177,7 @@ "scope": 78, "src": "85:24:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" } @@ -495,6 +499,7 @@ "scope": 22, "src": "29:80:2", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } @@ -695,6 +700,7 @@ "scope": 37, "src": "129:63:2", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } @@ -1012,6 +1018,7 @@ "scope": 60, "src": "29:80:3", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/ast_internal_function_id_export.json b/test/libsolidity/ASTJSON/ast_internal_function_id_export.json index d452f2d99..724413bfa 100644 --- a/test/libsolidity/ASTJSON/ast_internal_function_id_export.json +++ b/test/libsolidity/ASTJSON/ast_internal_function_id_export.json @@ -63,6 +63,7 @@ "scope": 142, "src": "0:19:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -98,6 +99,7 @@ "scope": 142, "src": "20:19:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -133,6 +135,7 @@ "scope": 142, "src": "40:19:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -193,6 +196,7 @@ "scope": 53, "src": "76:26:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "external" }, @@ -228,6 +232,7 @@ "scope": 53, "src": "107:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -263,6 +268,7 @@ "scope": 53, "src": "139:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -298,6 +304,7 @@ "scope": 53, "src": "171:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -411,6 +418,7 @@ "scope": 53, "src": "203:76:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -565,6 +573,7 @@ "scope": 53, "src": "284:73:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } @@ -633,6 +642,7 @@ "scope": 128, "src": "377:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "external" }, @@ -669,6 +679,7 @@ "scope": 128, "src": "409:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "external" }, @@ -705,6 +716,7 @@ "scope": 128, "src": "441:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "external" }, @@ -740,6 +752,7 @@ "scope": 128, "src": "473:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -775,6 +788,7 @@ "scope": 128, "src": "505:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -810,6 +824,7 @@ "scope": 128, "src": "537:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -997,6 +1012,7 @@ "scope": 128, "src": "569:111:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -1379,6 +1395,7 @@ "scope": 128, "src": "685:135:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } @@ -1548,6 +1565,7 @@ "scope": 141, "src": "845:61:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/base_constructor_call.json b/test/libsolidity/ASTJSON/base_constructor_call.json index 2c3c68c40..53b3d7bba 100644 --- a/test/libsolidity/ASTJSON/base_constructor_call.json +++ b/test/libsolidity/ASTJSON/base_constructor_call.json @@ -96,6 +96,7 @@ "scope": 7, "src": "13:20:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } @@ -214,6 +215,7 @@ "scope": 17, "src": "54:21:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/base_constructor_call_parseOnly.json b/test/libsolidity/ASTJSON/base_constructor_call_parseOnly.json index 730a05178..8caaa25a2 100644 --- a/test/libsolidity/ASTJSON/base_constructor_call_parseOnly.json +++ b/test/libsolidity/ASTJSON/base_constructor_call_parseOnly.json @@ -69,6 +69,7 @@ }, "src": "13:20:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false } ], @@ -166,6 +167,7 @@ }, "src": "54:21:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false } ], diff --git a/test/libsolidity/ASTJSON/constructor.json b/test/libsolidity/ASTJSON/constructor.json index 53e622b5d..4b87bf069 100644 --- a/test/libsolidity/ASTJSON/constructor.json +++ b/test/libsolidity/ASTJSON/constructor.json @@ -60,6 +60,7 @@ "scope": 5, "src": "14:18:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/constructor_parseOnly.json b/test/libsolidity/ASTJSON/constructor_parseOnly.json index 9b1d4cfc4..a7702e27a 100644 --- a/test/libsolidity/ASTJSON/constructor_parseOnly.json +++ b/test/libsolidity/ASTJSON/constructor_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "14:18:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false } ], diff --git a/test/libsolidity/ASTJSON/documentation.json b/test/libsolidity/ASTJSON/documentation.json index 43224bc64..db224d822 100644 --- a/test/libsolidity/ASTJSON/documentation.json +++ b/test/libsolidity/ASTJSON/documentation.json @@ -255,6 +255,7 @@ "scope": 23, "src": "188:23:3", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/documentation_local_variable.json b/test/libsolidity/ASTJSON/documentation_local_variable.json index edaa89c18..8d299502a 100644 --- a/test/libsolidity/ASTJSON/documentation_local_variable.json +++ b/test/libsolidity/ASTJSON/documentation_local_variable.json @@ -350,6 +350,7 @@ "scope": 41, "src": "17:355:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -478,6 +479,7 @@ "scope": 41, "src": "377:287:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/documentation_local_variable_parseOnly.json b/test/libsolidity/ASTJSON/documentation_local_variable_parseOnly.json index 872583839..214321cc4 100644 --- a/test/libsolidity/ASTJSON/documentation_local_variable_parseOnly.json +++ b/test/libsolidity/ASTJSON/documentation_local_variable_parseOnly.json @@ -246,6 +246,7 @@ }, "src": "17:355:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -345,6 +346,7 @@ }, "src": "377:287:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/documentation_on_statements.json b/test/libsolidity/ASTJSON/documentation_on_statements.json index f7b424ea6..5fe533935 100644 --- a/test/libsolidity/ASTJSON/documentation_on_statements.json +++ b/test/libsolidity/ASTJSON/documentation_on_statements.json @@ -363,6 +363,7 @@ "scope": 27, "src": "57:271:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/documentation_on_statements_parseOnly.json b/test/libsolidity/ASTJSON/documentation_on_statements_parseOnly.json index 3872027cb..469c3949f 100644 --- a/test/libsolidity/ASTJSON/documentation_on_statements_parseOnly.json +++ b/test/libsolidity/ASTJSON/documentation_on_statements_parseOnly.json @@ -248,6 +248,7 @@ }, "src": "57:271:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/documentation_parseOnly.json b/test/libsolidity/ASTJSON/documentation_parseOnly.json index 7f446279b..0deea1a48 100644 --- a/test/libsolidity/ASTJSON/documentation_parseOnly.json +++ b/test/libsolidity/ASTJSON/documentation_parseOnly.json @@ -194,6 +194,7 @@ }, "src": "188:23:3", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/documentation_triple.json b/test/libsolidity/ASTJSON/documentation_triple.json index bd6f483b5..35d76f15b 100644 --- a/test/libsolidity/ASTJSON/documentation_triple.json +++ b/test/libsolidity/ASTJSON/documentation_triple.json @@ -373,6 +373,7 @@ "scope": 28, "src": "42:223:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/documentation_triple_parseOnly.json b/test/libsolidity/ASTJSON/documentation_triple_parseOnly.json index 5ccc2631c..cee533c28 100644 --- a/test/libsolidity/ASTJSON/documentation_triple_parseOnly.json +++ b/test/libsolidity/ASTJSON/documentation_triple_parseOnly.json @@ -251,6 +251,7 @@ }, "src": "42:223:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/enum_value_declaration.json b/test/libsolidity/ASTJSON/enum_value_declaration.json index acdcc736e..110b7888f 100644 --- a/test/libsolidity/ASTJSON/enum_value_declaration.json +++ b/test/libsolidity/ASTJSON/enum_value_declaration.json @@ -156,6 +156,7 @@ "scope": 14, "src": "16:45:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "internal" } diff --git a/test/libsolidity/ASTJSON/enum_value_declaration_parseOnly.json b/test/libsolidity/ASTJSON/enum_value_declaration_parseOnly.json index 8fa574fa7..19e2d4063 100644 --- a/test/libsolidity/ASTJSON/enum_value_declaration_parseOnly.json +++ b/test/libsolidity/ASTJSON/enum_value_declaration_parseOnly.json @@ -117,6 +117,7 @@ }, "src": "16:45:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "internal" } diff --git a/test/libsolidity/ASTJSON/event_aggregated_contract.json b/test/libsolidity/ASTJSON/event_aggregated_contract.json index e312320c1..b1b8f76dd 100644 --- a/test/libsolidity/ASTJSON/event_aggregated_contract.json +++ b/test/libsolidity/ASTJSON/event_aggregated_contract.json @@ -123,6 +123,7 @@ "scope": 10, "src": "32:45:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } @@ -384,6 +385,7 @@ "scope": 30, "src": "106:57:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/event_emited_in_base_contract.json b/test/libsolidity/ASTJSON/event_emited_in_base_contract.json index 6b183b493..a7dbac9dd 100644 --- a/test/libsolidity/ASTJSON/event_emited_in_base_contract.json +++ b/test/libsolidity/ASTJSON/event_emited_in_base_contract.json @@ -228,6 +228,7 @@ "scope": 16, "src": "49:42:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/fail_after_parsing_parseOnly.json b/test/libsolidity/ASTJSON/fail_after_parsing_parseOnly.json index f1d958617..68487d21e 100644 --- a/test/libsolidity/ASTJSON/fail_after_parsing_parseOnly.json +++ b/test/libsolidity/ASTJSON/fail_after_parsing_parseOnly.json @@ -28,6 +28,7 @@ }, "src": "0:20:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -284,6 +285,7 @@ }, "src": "61:112:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/fallback.json b/test/libsolidity/ASTJSON/fallback.json index f68c72ce6..85a88eb00 100644 --- a/test/libsolidity/ASTJSON/fallback.json +++ b/test/libsolidity/ASTJSON/fallback.json @@ -60,6 +60,7 @@ "scope": 5, "src": "15:33:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/fallback_and_receive_ether.json b/test/libsolidity/ASTJSON/fallback_and_receive_ether.json index f41559d2a..8f13fc64f 100644 --- a/test/libsolidity/ASTJSON/fallback_and_receive_ether.json +++ b/test/libsolidity/ASTJSON/fallback_and_receive_ether.json @@ -60,6 +60,7 @@ "scope": 9, "src": "15:32:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" }, @@ -95,6 +96,7 @@ "scope": 9, "src": "50:33:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/fallback_and_receive_ether_parseOnly.json b/test/libsolidity/ASTJSON/fallback_and_receive_ether_parseOnly.json index 215bf3a83..e8f464525 100644 --- a/test/libsolidity/ASTJSON/fallback_and_receive_ether_parseOnly.json +++ b/test/libsolidity/ASTJSON/fallback_and_receive_ether_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "15:32:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" }, @@ -80,6 +81,7 @@ }, "src": "50:33:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/fallback_parseOnly.json b/test/libsolidity/ASTJSON/fallback_parseOnly.json index eb81fafbe..7a9322cb1 100644 --- a/test/libsolidity/ASTJSON/fallback_parseOnly.json +++ b/test/libsolidity/ASTJSON/fallback_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "15:33:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/fallback_payable.json b/test/libsolidity/ASTJSON/fallback_payable.json index 790351764..4da55ddc4 100644 --- a/test/libsolidity/ASTJSON/fallback_payable.json +++ b/test/libsolidity/ASTJSON/fallback_payable.json @@ -60,6 +60,7 @@ "scope": 5, "src": "14:22:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/fallback_payable_parseOnly.json b/test/libsolidity/ASTJSON/fallback_payable_parseOnly.json index e1810828a..7758c8ad1 100644 --- a/test/libsolidity/ASTJSON/fallback_payable_parseOnly.json +++ b/test/libsolidity/ASTJSON/fallback_payable_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "14:22:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/function_type.json b/test/libsolidity/ASTJSON/function_type.json index e1a5156cf..ee9002dbf 100644 --- a/test/libsolidity/ASTJSON/function_type.json +++ b/test/libsolidity/ASTJSON/function_type.json @@ -219,6 +219,7 @@ "scope": 17, "src": "13:116:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/function_type_parseOnly.json b/test/libsolidity/ASTJSON/function_type_parseOnly.json index 64b09d5d9..f84246fb0 100644 --- a/test/libsolidity/ASTJSON/function_type_parseOnly.json +++ b/test/libsolidity/ASTJSON/function_type_parseOnly.json @@ -168,6 +168,7 @@ }, "src": "13:116:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/indirect_event.json b/test/libsolidity/ASTJSON/indirect_event.json index fcbe81756..0f836e172 100644 --- a/test/libsolidity/ASTJSON/indirect_event.json +++ b/test/libsolidity/ASTJSON/indirect_event.json @@ -123,6 +123,7 @@ "scope": 10, "src": "67:35:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" } @@ -301,6 +302,7 @@ "scope": 25, "src": "137:40:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/indirect_event_parseOnly.json b/test/libsolidity/ASTJSON/indirect_event_parseOnly.json index 17ca036d3..e2d4cd123 100644 --- a/test/libsolidity/ASTJSON/indirect_event_parseOnly.json +++ b/test/libsolidity/ASTJSON/indirect_event_parseOnly.json @@ -89,6 +89,7 @@ }, "src": "67:35:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" } @@ -215,6 +216,7 @@ }, "src": "137:40:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/long_type_name_binary_operation.json b/test/libsolidity/ASTJSON/long_type_name_binary_operation.json index 9bcd5e8fd..943d16bfb 100644 --- a/test/libsolidity/ASTJSON/long_type_name_binary_operation.json +++ b/test/libsolidity/ASTJSON/long_type_name_binary_operation.json @@ -162,6 +162,7 @@ "scope": 11, "src": "13:39:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/long_type_name_binary_operation_parseOnly.json b/test/libsolidity/ASTJSON/long_type_name_binary_operation_parseOnly.json index 2cb372dd2..c680efd43 100644 --- a/test/libsolidity/ASTJSON/long_type_name_binary_operation_parseOnly.json +++ b/test/libsolidity/ASTJSON/long_type_name_binary_operation_parseOnly.json @@ -110,6 +110,7 @@ }, "src": "13:39:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/long_type_name_identifier.json b/test/libsolidity/ASTJSON/long_type_name_identifier.json index c22aeb40c..b309d6b1c 100644 --- a/test/libsolidity/ASTJSON/long_type_name_identifier.json +++ b/test/libsolidity/ASTJSON/long_type_name_identifier.json @@ -171,6 +171,7 @@ "scope": 15, "src": "23:45:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/long_type_name_identifier_parseOnly.json b/test/libsolidity/ASTJSON/long_type_name_identifier_parseOnly.json index 1bf50bed6..bdde90ded 100644 --- a/test/libsolidity/ASTJSON/long_type_name_identifier_parseOnly.json +++ b/test/libsolidity/ASTJSON/long_type_name_identifier_parseOnly.json @@ -125,6 +125,7 @@ }, "src": "23:45:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/modifier_definition.json b/test/libsolidity/ASTJSON/modifier_definition.json index 30ebcb7c2..3f02e3be7 100644 --- a/test/libsolidity/ASTJSON/modifier_definition.json +++ b/test/libsolidity/ASTJSON/modifier_definition.json @@ -163,6 +163,7 @@ "scope": 14, "src": "39:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/modifier_definition_parseOnly.json b/test/libsolidity/ASTJSON/modifier_definition_parseOnly.json index f8067952a..6f8d3f2a8 100644 --- a/test/libsolidity/ASTJSON/modifier_definition_parseOnly.json +++ b/test/libsolidity/ASTJSON/modifier_definition_parseOnly.json @@ -129,6 +129,7 @@ }, "src": "39:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/modifier_invocation.json b/test/libsolidity/ASTJSON/modifier_invocation.json index 30ebcb7c2..3f02e3be7 100644 --- a/test/libsolidity/ASTJSON/modifier_invocation.json +++ b/test/libsolidity/ASTJSON/modifier_invocation.json @@ -163,6 +163,7 @@ "scope": 14, "src": "39:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/modifier_invocation_parseOnly.json b/test/libsolidity/ASTJSON/modifier_invocation_parseOnly.json index f8067952a..6f8d3f2a8 100644 --- a/test/libsolidity/ASTJSON/modifier_invocation_parseOnly.json +++ b/test/libsolidity/ASTJSON/modifier_invocation_parseOnly.json @@ -129,6 +129,7 @@ }, "src": "39:27:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/non_utf8.json b/test/libsolidity/ASTJSON/non_utf8.json index 0058e56eb..2931e66f3 100644 --- a/test/libsolidity/ASTJSON/non_utf8.json +++ b/test/libsolidity/ASTJSON/non_utf8.json @@ -224,6 +224,7 @@ "scope": 15, "src": "13:65:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/non_utf8_parseOnly.json b/test/libsolidity/ASTJSON/non_utf8_parseOnly.json index bbc350f96..ddf5de637 100644 --- a/test/libsolidity/ASTJSON/non_utf8_parseOnly.json +++ b/test/libsolidity/ASTJSON/non_utf8_parseOnly.json @@ -144,6 +144,7 @@ }, "src": "13:65:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/not_existing_import_parseOnly.json b/test/libsolidity/ASTJSON/not_existing_import_parseOnly.json index ea08150fd..d6ee3a88e 100644 --- a/test/libsolidity/ASTJSON/not_existing_import_parseOnly.json +++ b/test/libsolidity/ASTJSON/not_existing_import_parseOnly.json @@ -107,6 +107,7 @@ }, "src": "113:16:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false } ], diff --git a/test/libsolidity/ASTJSON/override.json b/test/libsolidity/ASTJSON/override.json index 35d36eac4..cb4276fae 100644 --- a/test/libsolidity/ASTJSON/override.json +++ b/test/libsolidity/ASTJSON/override.json @@ -69,6 +69,7 @@ "scope": 5, "src": "14:32:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -141,6 +142,7 @@ "scope": 16, "src": "77:30:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" }, @@ -188,6 +190,7 @@ "scope": 16, "src": "109:41:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -279,6 +282,7 @@ "scope": 29, "src": "172:34:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -326,6 +330,7 @@ "scope": 29, "src": "208:34:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/override_parseOnly.json b/test/libsolidity/ASTJSON/override_parseOnly.json index 3a927f5f2..786dcb065 100644 --- a/test/libsolidity/ASTJSON/override_parseOnly.json +++ b/test/libsolidity/ASTJSON/override_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "14:32:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -107,6 +108,7 @@ }, "src": "77:30:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" }, @@ -148,6 +150,7 @@ }, "src": "109:41:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -223,6 +226,7 @@ }, "src": "172:34:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" }, @@ -264,6 +268,7 @@ }, "src": "208:34:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/receive_ether.json b/test/libsolidity/ASTJSON/receive_ether.json index 279049399..c1e727f8a 100644 --- a/test/libsolidity/ASTJSON/receive_ether.json +++ b/test/libsolidity/ASTJSON/receive_ether.json @@ -60,6 +60,7 @@ "scope": 5, "src": "15:32:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/receive_ether_parseOnly.json b/test/libsolidity/ASTJSON/receive_ether_parseOnly.json index f9aede155..a1b71bf47 100644 --- a/test/libsolidity/ASTJSON/receive_ether_parseOnly.json +++ b/test/libsolidity/ASTJSON/receive_ether_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "15:32:1", "stateMutability": "payable", + "suffix": false, "virtual": false, "visibility": "external" } diff --git a/test/libsolidity/ASTJSON/short_type_name.json b/test/libsolidity/ASTJSON/short_type_name.json index 1c1138cba..a97a41c40 100644 --- a/test/libsolidity/ASTJSON/short_type_name.json +++ b/test/libsolidity/ASTJSON/short_type_name.json @@ -116,6 +116,7 @@ "scope": 11, "src": "13:40:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/short_type_name_parseOnly.json b/test/libsolidity/ASTJSON/short_type_name_parseOnly.json index 3c4acfa77..1034d6464 100644 --- a/test/libsolidity/ASTJSON/short_type_name_parseOnly.json +++ b/test/libsolidity/ASTJSON/short_type_name_parseOnly.json @@ -88,6 +88,7 @@ }, "src": "13:40:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/short_type_name_ref.json b/test/libsolidity/ASTJSON/short_type_name_ref.json index 447b1e5b7..83eb1109b 100644 --- a/test/libsolidity/ASTJSON/short_type_name_ref.json +++ b/test/libsolidity/ASTJSON/short_type_name_ref.json @@ -127,6 +127,7 @@ "scope": 12, "src": "13:45:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/short_type_name_ref_parseOnly.json b/test/libsolidity/ASTJSON/short_type_name_ref_parseOnly.json index 07c782d47..2882c4532 100644 --- a/test/libsolidity/ASTJSON/short_type_name_ref_parseOnly.json +++ b/test/libsolidity/ASTJSON/short_type_name_ref_parseOnly.json @@ -95,6 +95,7 @@ }, "src": "13:45:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/source_location.json b/test/libsolidity/ASTJSON/source_location.json index caeaf027a..ccbff356b 100644 --- a/test/libsolidity/ASTJSON/source_location.json +++ b/test/libsolidity/ASTJSON/source_location.json @@ -159,6 +159,7 @@ "scope": 12, "src": "13:40:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/source_location_parseOnly.json b/test/libsolidity/ASTJSON/source_location_parseOnly.json index ec25111bd..cb9d4f65e 100644 --- a/test/libsolidity/ASTJSON/source_location_parseOnly.json +++ b/test/libsolidity/ASTJSON/source_location_parseOnly.json @@ -114,6 +114,7 @@ }, "src": "13:40:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/string.json b/test/libsolidity/ASTJSON/string.json index c7706e3bf..0e458402f 100644 --- a/test/libsolidity/ASTJSON/string.json +++ b/test/libsolidity/ASTJSON/string.json @@ -123,6 +123,7 @@ "scope": 9, "src": "13:56:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/string_parseOnly.json b/test/libsolidity/ASTJSON/string_parseOnly.json index 5f97eb1f9..90f106c1c 100644 --- a/test/libsolidity/ASTJSON/string_parseOnly.json +++ b/test/libsolidity/ASTJSON/string_parseOnly.json @@ -91,6 +91,7 @@ }, "src": "13:56:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/two_base_functions.json b/test/libsolidity/ASTJSON/two_base_functions.json index 0ed997a32..416ff3c47 100644 --- a/test/libsolidity/ASTJSON/two_base_functions.json +++ b/test/libsolidity/ASTJSON/two_base_functions.json @@ -69,6 +69,7 @@ "scope": 5, "src": "17:30:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -128,6 +129,7 @@ "scope": 10, "src": "67:30:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -261,6 +263,7 @@ "scope": 22, "src": "125:37:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/two_base_functions_parseOnly.json b/test/libsolidity/ASTJSON/two_base_functions_parseOnly.json index e448be836..0b1aee25c 100644 --- a/test/libsolidity/ASTJSON/two_base_functions_parseOnly.json +++ b/test/libsolidity/ASTJSON/two_base_functions_parseOnly.json @@ -46,6 +46,7 @@ }, "src": "17:30:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -96,6 +97,7 @@ }, "src": "67:30:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": true, "visibility": "public" } @@ -209,6 +211,7 @@ }, "src": "125:37:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/unicode.json b/test/libsolidity/ASTJSON/unicode.json index 0ff1426f1..22e1acb0a 100644 --- a/test/libsolidity/ASTJSON/unicode.json +++ b/test/libsolidity/ASTJSON/unicode.json @@ -123,6 +123,7 @@ "scope": 9, "src": "13:62:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/unicode_parseOnly.json b/test/libsolidity/ASTJSON/unicode_parseOnly.json index c8fb780c4..28d5cf9c4 100644 --- a/test/libsolidity/ASTJSON/unicode_parseOnly.json +++ b/test/libsolidity/ASTJSON/unicode_parseOnly.json @@ -91,6 +91,7 @@ }, "src": "13:62:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/used_errors.json b/test/libsolidity/ASTJSON/used_errors.json index 12a59f9cb..6a7b8fba0 100644 --- a/test/libsolidity/ASTJSON/used_errors.json +++ b/test/libsolidity/ASTJSON/used_errors.json @@ -108,6 +108,7 @@ "scope": 20, "src": "11:33:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -218,6 +219,7 @@ "scope": 19, "src": "77:28:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/used_errors_parseOnly.json b/test/libsolidity/ASTJSON/used_errors_parseOnly.json index 115ea2aee..109d91d82 100644 --- a/test/libsolidity/ASTJSON/used_errors_parseOnly.json +++ b/test/libsolidity/ASTJSON/used_errors_parseOnly.json @@ -76,6 +76,7 @@ }, "src": "11:33:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -162,6 +163,7 @@ }, "src": "77:28:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/userDefinedValueType.json b/test/libsolidity/ASTJSON/userDefinedValueType.json index adf1172f0..d2492d509 100644 --- a/test/libsolidity/ASTJSON/userDefinedValueType.json +++ b/test/libsolidity/ASTJSON/userDefinedValueType.json @@ -206,6 +206,7 @@ "scope": 28, "src": "48:47:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, diff --git a/test/libsolidity/ASTJSON/userDefinedValueType_parseOnly.json b/test/libsolidity/ASTJSON/userDefinedValueType_parseOnly.json index 90e48a982..7af15d5e4 100644 --- a/test/libsolidity/ASTJSON/userDefinedValueType_parseOnly.json +++ b/test/libsolidity/ASTJSON/userDefinedValueType_parseOnly.json @@ -154,6 +154,7 @@ }, "src": "48:47:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, diff --git a/test/libsolidity/ASTJSON/user_defined_operator.json b/test/libsolidity/ASTJSON/user_defined_operator.json index ed72de49d..93acf882f 100644 --- a/test/libsolidity/ASTJSON/user_defined_operator.json +++ b/test/libsolidity/ASTJSON/user_defined_operator.json @@ -268,6 +268,7 @@ "scope": 50, "src": "61:41:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -391,6 +392,7 @@ "scope": 50, "src": "103:39:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "internal" }, @@ -650,6 +652,7 @@ "scope": 49, "src": "160:78:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/using_for_directive.json b/test/libsolidity/ASTJSON/using_for_directive.json index f3094980f..9ae221009 100644 --- a/test/libsolidity/ASTJSON/using_for_directive.json +++ b/test/libsolidity/ASTJSON/using_for_directive.json @@ -139,6 +139,7 @@ "scope": 14, "src": "33:19:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, diff --git a/test/libsolidity/ASTJSON/using_for_directive_parseOnly.json b/test/libsolidity/ASTJSON/using_for_directive_parseOnly.json index 9360227d4..f26dc398c 100644 --- a/test/libsolidity/ASTJSON/using_for_directive_parseOnly.json +++ b/test/libsolidity/ASTJSON/using_for_directive_parseOnly.json @@ -102,6 +102,7 @@ }, "src": "33:19:1", "stateMutability": "nonpayable", + "suffix": false, "virtual": false, "visibility": "internal" }, diff --git a/test/libsolidity/ASTJSON/yul_hex_literal.json b/test/libsolidity/ASTJSON/yul_hex_literal.json index 0b3fa4174..9329af5d5 100644 --- a/test/libsolidity/ASTJSON/yul_hex_literal.json +++ b/test/libsolidity/ASTJSON/yul_hex_literal.json @@ -142,6 +142,7 @@ "scope": 6, "src": "22:192:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" } diff --git a/test/libsolidity/ASTJSON/yul_hex_literal_parseOnly.json b/test/libsolidity/ASTJSON/yul_hex_literal_parseOnly.json index 3551ac2d9..ea8901575 100644 --- a/test/libsolidity/ASTJSON/yul_hex_literal_parseOnly.json +++ b/test/libsolidity/ASTJSON/yul_hex_literal_parseOnly.json @@ -127,6 +127,7 @@ }, "src": "22:192:1", "stateMutability": "pure", + "suffix": false, "virtual": false, "visibility": "public" }