Actually allow eofVersion as standard json key.

This commit is contained in:
Daniel Kirchner 2023-01-04 18:27:48 +01:00
parent d584e53077
commit 8719f86ea9

View File

@ -438,7 +438,7 @@ std::optional<Json::Value> checkAuxiliaryInputKeys(Json::Value const& _input)
std::optional<Json::Value> checkSettingsKeys(Json::Value const& _input) std::optional<Json::Value> checkSettingsKeys(Json::Value const& _input)
{ {
static set<string> keys{"parserErrorRecovery", "debug", "evmVersion", "libraries", "metadata", "modelChecker", "optimizer", "outputSelection", "remappings", "stopAfter", "viaIR"}; static set<string> keys{"parserErrorRecovery", "debug", "evmVersion", "eofVersion", "libraries", "metadata", "modelChecker", "optimizer", "outputSelection", "remappings", "stopAfter", "viaIR"};
return checkKeys(_input, keys, "settings"); return checkKeys(_input, keys, "settings");
} }
@ -804,7 +804,7 @@ std::variant<StandardCompiler::InputsAndSettings, Json::Value> StandardCompiler:
{ {
if (!settings["eofVersion"].isUInt()) if (!settings["eofVersion"].isUInt())
return formatFatalError(Error::Type::JSONError, "eofVersion must be an unsigned integer."); return formatFatalError(Error::Type::JSONError, "eofVersion must be an unsigned integer.");
auto eofVersion = settings["evmVersion"].asUInt(); auto eofVersion = settings["eofVersion"].asUInt();
if (eofVersion != 1) if (eofVersion != 1)
return formatFatalError(Error::Type::JSONError, "Invalid EOF version requested."); return formatFatalError(Error::Type::JSONError, "Invalid EOF version requested.");
ret.eofVersion = 1; ret.eofVersion = 1;
@ -1103,6 +1103,7 @@ Json::Value StandardCompiler::compileSolidity(StandardCompiler::InputsAndSetting
compilerStack.addSMTLib2Response(smtLib2Response.first, smtLib2Response.second); compilerStack.addSMTLib2Response(smtLib2Response.first, smtLib2Response.second);
compilerStack.setViaIR(_inputsAndSettings.viaIR); compilerStack.setViaIR(_inputsAndSettings.viaIR);
compilerStack.setEVMVersion(_inputsAndSettings.evmVersion); compilerStack.setEVMVersion(_inputsAndSettings.evmVersion);
compilerStack.setEOFVersion(_inputsAndSettings.eofVersion);
compilerStack.setParserErrorRecovery(_inputsAndSettings.parserErrorRecovery); compilerStack.setParserErrorRecovery(_inputsAndSettings.parserErrorRecovery);
compilerStack.setRemappings(std::move(_inputsAndSettings.remappings)); compilerStack.setRemappings(std::move(_inputsAndSettings.remappings));
compilerStack.setOptimiserSettings(std::move(_inputsAndSettings.optimiserSettings)); compilerStack.setOptimiserSettings(std::move(_inputsAndSettings.optimiserSettings));