aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2017-02-20 22:20:12 +0800
committerGitHub <noreply@github.com>2017-02-20 22:20:12 +0800
commit32b7d17467abe02ebbd503e994092f718b92172f (patch)
tree932b523f9f470c52f211dd865549262fb3c342f5 /libsolidity
parent419ab9260ed817088f7e3b58a2ff01c47a3f7b9c (diff)
parentc0961664f9666e5f4e8e35e80ef9a71426f6c394 (diff)
downloaddexon-solidity-32b7d17467abe02ebbd503e994092f718b92172f.tar.gz
dexon-solidity-32b7d17467abe02ebbd503e994092f718b92172f.tar.zst
dexon-solidity-32b7d17467abe02ebbd503e994092f718b92172f.zip
Merge pull request #1705 from ethereum/fixasmbug
Bugfix: Deposit one stack item for non-value types in inline assembly type checking.
Diffstat (limited to 'libsolidity')
-rw-r--r--libsolidity/analysis/TypeChecker.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/libsolidity/analysis/TypeChecker.cpp b/libsolidity/analysis/TypeChecker.cpp
index 28cb9acc..4025831e 100644
--- a/libsolidity/analysis/TypeChecker.cpp
+++ b/libsolidity/analysis/TypeChecker.cpp
@@ -611,7 +611,7 @@ bool TypeChecker::visit(InlineAssembly const& _inlineAssembly)
fatalTypeError(SourceLocation(), "Constant variables not yet implemented for inline assembly.");
if (var->isLocalVariable())
pushes = var->type()->sizeOnStack();
- else if (var->type()->isValueType())
+ else if (!var->type()->isValueType())
pushes = 1;
else
pushes = 2; // slot number, intra slot offset