diff options
author | chriseth <chris@ethereum.org> | 2017-11-16 17:32:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-16 17:32:51 +0800 |
commit | 0c1fc594efaf9d5768cd6dbc273a555ecd4bdd78 (patch) | |
tree | 79116e0b212e4a257a4a4c59d9bafdc0eca97800 | |
parent | f2e9dea5e7662d46702a200e66f554d40a1821e0 (diff) | |
parent | c1e202618c60ffd09f12394da56da74120f2a656 (diff) | |
download | dexon-solidity-0c1fc594efaf9d5768cd6dbc273a555ecd4bdd78.tar.gz dexon-solidity-0c1fc594efaf9d5768cd6dbc273a555ecd4bdd78.tar.zst dexon-solidity-0c1fc594efaf9d5768cd6dbc273a555ecd4bdd78.zip |
Merge pull request #3209 from ethereum/unimplemented-msgs
Add explanation to unimplemented assertions
-rw-r--r-- | libsolidity/codegen/ABIFunctions.cpp | 4 | ||||
-rw-r--r-- | libsolidity/codegen/CompilerUtils.cpp | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/libsolidity/codegen/ABIFunctions.cpp b/libsolidity/codegen/ABIFunctions.cpp index 080be359..d2cbac99 100644 --- a/libsolidity/codegen/ABIFunctions.cpp +++ b/libsolidity/codegen/ABIFunctions.cpp @@ -483,7 +483,7 @@ string ABIFunctions::abiEncodingFunctionCalldataArray( _to.identifier() + (_encodeAsLibraryTypes ? "_library" : ""); return createFunction(functionName, [&]() { - solUnimplementedAssert(fromArrayType.isByteArray(), ""); + solUnimplementedAssert(fromArrayType.isByteArray(), "Only byte arrays can be encoded from calldata currently."); // TODO if this is not a byte array, we might just copy byte-by-byte anyway, // because the encoding is position-independent, but we have to check that. Whiskers templ(R"( @@ -754,7 +754,7 @@ string ABIFunctions::abiEncodingFunctionStruct( _to.identifier() + (_encodeAsLibraryTypes ? "_library" : ""); - solUnimplementedAssert(!_from.dataStoredIn(DataLocation::CallData), ""); + solUnimplementedAssert(!_from.dataStoredIn(DataLocation::CallData), "Encoding struct from calldata is not yet supported."); solAssert(&_from.structDefinition() == &_to.structDefinition(), ""); return createFunction(functionName, [&]() { diff --git a/libsolidity/codegen/CompilerUtils.cpp b/libsolidity/codegen/CompilerUtils.cpp index f9b181ae..053bed6a 100644 --- a/libsolidity/codegen/CompilerUtils.cpp +++ b/libsolidity/codegen/CompilerUtils.cpp @@ -121,7 +121,7 @@ void CompilerUtils::storeInMemoryDynamic(Type const& _type, bool _padToWordBound { if (auto ref = dynamic_cast<ReferenceType const*>(&_type)) { - solUnimplementedAssert(ref->location() == DataLocation::Memory, ""); + solUnimplementedAssert(ref->location() == DataLocation::Memory, "Only in-memory reference type can be stored."); storeInMemoryDynamic(IntegerType(256), _padToWordBoundaries); } else if (auto str = dynamic_cast<StringLiteralType const*>(&_type)) |