diff options
-rw-r--r-- | ExpressionCompiler.cpp | 2 | ||||
-rw-r--r-- | Types.cpp | 20 |
2 files changed, 13 insertions, 9 deletions
diff --git a/ExpressionCompiler.cpp b/ExpressionCompiler.cpp index add5f73b..f872e058 100644 --- a/ExpressionCompiler.cpp +++ b/ExpressionCompiler.cpp @@ -291,7 +291,7 @@ void ExpressionCompiler::endVisit(MemberAccess const& _memberAccess) IntegerType(0, IntegerType::Modifier::ADDRESS), true); m_context << eth::Instruction::BALANCE; } - else if (member == "send" || member.substr(0, 4) == "call") + else if (member == "send" || member.substr(0, min<size_t>(member.size(), 4)) == "call") appendTypeConversion(*_memberAccess.getExpression().getType(), IntegerType(0, IntegerType::Modifier::ADDRESS), true); else @@ -193,14 +193,18 @@ u256 IntegerType::literalValue(Literal const& _literal) const } const MemberList IntegerType::AddressMemberList = - MemberList({{"balance", make_shared<IntegerType const>(256)}, - {"callstring32", make_shared<FunctionType const>(TypePointers({make_shared<StaticStringType const>(32)}), - TypePointers(), FunctionType::Location::BARE)}, - {"callstring32string32", make_shared<FunctionType const>(TypePointers({make_shared<StaticStringType const>(32), - make_shared<StaticStringType const>(32)}), - TypePointers(), FunctionType::Location::BARE)}, - {"send", make_shared<FunctionType const>(TypePointers({make_shared<IntegerType const>(256)}), - TypePointers(), FunctionType::Location::SEND)}}); + MemberList({{"balance", + make_shared<IntegerType const>(256)}, + {"callstring32", + make_shared<FunctionType const>(TypePointers({make_shared<StaticStringType const>(32)}), + TypePointers(), FunctionType::Location::BARE)}, + {"callstring32string32", + make_shared<FunctionType const>(TypePointers({make_shared<StaticStringType const>(32), + make_shared<StaticStringType const>(32)}), + TypePointers(), FunctionType::Location::BARE)}, + {"send", + make_shared<FunctionType const>(TypePointers({make_shared<IntegerType const>(256)}), + TypePointers(), FunctionType::Location::SEND)}}); shared_ptr<StaticStringType> StaticStringType::smallestTypeForLiteral(string const& _literal) { |