fixed-sized arrays as return type

Conflicts:
	test/libsolidity/SolidityEndToEndTest.cpp
This commit is contained in:
LianaHus
2015-09-23 17:31:37 +02:00
parent 09f1f1e595
commit 9547c4563c
5 changed files with 54 additions and 10 deletions
+7 -3
View File
@@ -1256,10 +1256,14 @@ void ExpressionCompiler::appendExternalFunctionCall(
}
else if (firstReturnType)
{
//@todo manually update free memory pointer if we accept returning memory-stored objects
utils().fetchFreeMemoryPointer();
utils().loadFromMemoryDynamic(*firstReturnType, false, true, false);
if (dynamic_cast<ReferenceType const*>(firstReturnType))
{
utils().loadFromMemoryDynamic(*firstReturnType, false, true, true);
utils().storeFreeMemoryPointer();
}
else
utils().loadFromMemoryDynamic(*firstReturnType, false, true, false);
}
}