mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
fix: bytecodeHash
cannot be set to non-none for appendCBOR=false
Testing: see `test/cmdlineTests/metadata_append_standard_json_error` Closes: https://github.com/ethereum/solidity/issues/13628
This commit is contained in:
parent
238ac4fd92
commit
6854e2b5d6
@ -929,6 +929,13 @@ std::variant<StandardCompiler::InputsAndSettings, Json::Value> StandardCompiler:
|
||||
metadataHash == "bzzr1" ?
|
||||
CompilerStack::MetadataHash::Bzzr1 :
|
||||
CompilerStack::MetadataHash::None;
|
||||
if (ret.metadataFormat == CompilerStack::MetadataFormat::NoMetadata && ret.metadataHash != CompilerStack::MetadataHash::None)
|
||||
return formatFatalError(
|
||||
Error::Type::JSONError,
|
||||
"When the parameter \"appendCBOR\" is set to false, the parameter \"bytecodeHash\" cannot be set to \"" +
|
||||
metadataHash +
|
||||
"\". The parameter \"bytecodeHash\" should either be skipped, or set to \"none\"."
|
||||
);
|
||||
}
|
||||
|
||||
Json::Value outputSelection = settings.get("outputSelection", Json::Value());
|
||||
|
@ -0,0 +1 @@
|
||||
--pretty-json --json-indent 4
|
@ -0,0 +1,29 @@
|
||||
{
|
||||
"language": "Solidity",
|
||||
"sources":
|
||||
{
|
||||
"A":
|
||||
{
|
||||
"content": "// SPDX-License-Identifier: GPL-3.0\npragma solidity >=0.0;\n\ncontract test {}"
|
||||
}
|
||||
},
|
||||
"settings":
|
||||
{
|
||||
"viaIR": true,
|
||||
"optimizer": {
|
||||
"enabled": true
|
||||
},
|
||||
"metadata":
|
||||
{
|
||||
"appendCBOR": false,
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"outputSelection":
|
||||
{
|
||||
"A":
|
||||
{
|
||||
"test": ["evm.bytecode"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
{
|
||||
"errors":
|
||||
[
|
||||
{
|
||||
"component": "general",
|
||||
"formattedMessage": "When the parameter \"appendCBOR\" is set to false, the parameter \"bytecodeHash\" cannot be set to \"ipfs\". The parameter \"bytecodeHash\" should either be skipped, or set to \"none\".",
|
||||
"message": "When the parameter \"appendCBOR\" is set to false, the parameter \"bytecodeHash\" cannot be set to \"ipfs\". The parameter \"bytecodeHash\" should either be skipped, or set to \"none\".",
|
||||
"severity": "error",
|
||||
"type": "JSONError"
|
||||
}
|
||||
]
|
||||
}
|
Loading…
Reference in New Issue
Block a user