diff options
author | Lefteris Karapetsas <lefteris@refu.co> | 2015-02-06 17:42:24 +0800 |
---|---|---|
committer | Lefteris Karapetsas <lefteris@refu.co> | 2015-02-06 17:42:24 +0800 |
commit | 76c9f13626495e173ddf3fde301c526097f08651 (patch) | |
tree | 0c65a30625c6670132791c557cd667482638d916 /ExpressionCompiler.h | |
parent | 337b952f53d4eb24e6ae28386f26b4f69a33d935 (diff) | |
download | dexon-solidity-76c9f13626495e173ddf3fde301c526097f08651.tar.gz dexon-solidity-76c9f13626495e173ddf3fde301c526097f08651.tar.zst dexon-solidity-76c9f13626495e173ddf3fde301c526097f08651.zip |
appendArgumentsCopyToMemory() has more complicated logic now
- Plus other fixes.
Diffstat (limited to 'ExpressionCompiler.h')
-rw-r--r-- | ExpressionCompiler.h | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/ExpressionCompiler.h b/ExpressionCompiler.h index 90a60afc..70cc2426 100644 --- a/ExpressionCompiler.h +++ b/ExpressionCompiler.h @@ -94,19 +94,16 @@ private: bool bare = false); /// Appends code that copies the given arguments to memory (with optional offset). /// @returns the number of bytes copied to memory - unsigned appendArgumentsCopyToMemory(TypePointers const& _types, - std::vector<ASTPointer<Expression const>> const& _arguments, + unsigned appendArgumentsCopyToMemory(std::vector<ASTPointer<Expression const>> const& _arguments, + TypePointers const& _types = {}, unsigned _memoryOffset = 0); /// Appends code that copies a type to memory. /// @returns the number of bytes copied to memory unsigned appendTypeConversionAndMoveToMemory(Type const& _expectedType, Type const& _type, Location const& _location, unsigned _memoryOffset = 0); - /// Appends code that copies the given arguments that should all have the - /// same @a _type to memory (with optional offset). + /// Appends code that moves a type to memory /// @returns the number of bytes copied to memory - unsigned appendSameTypeArgumentsCopyToMemory(TypePointer const& _type, - std::vector<ASTPointer<Expression const>> const& _arguments, - unsigned _memoryOffset = 0); + unsigned moveTypeToMemory(Type const& _type, Location const& _location, unsigned _memoryOffset); /// Appends code that evaluates a single expression and copies it to memory (with optional offset). /// @returns the number of bytes copied to memory unsigned appendExpressionCopyToMemory(Type const& _expectedType, Expression const& _expression, |