aboutsummaryrefslogtreecommitdiffstats
path: root/test/libsolidity/SolidityOptimizer.cpp
diff options
context:
space:
mode:
authorchriseth <c@ethdev.com>2015-11-16 23:39:27 +0800
committerchriseth <c@ethdev.com>2015-11-16 23:39:47 +0800
commit8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3 (patch)
tree1f8f977a50735e31d81211d004c57d7233a31e88 /test/libsolidity/SolidityOptimizer.cpp
parentc881d103b26ff80ddfe6bfcea186bdca46a27d30 (diff)
downloaddexon-solidity-8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3.tar
dexon-solidity-8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3.tar.gz
dexon-solidity-8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3.tar.bz2
dexon-solidity-8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3.tar.lz
dexon-solidity-8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3.tar.xz
dexon-solidity-8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3.tar.zst
dexon-solidity-8bd34ee2e927c36730b7bb70f97b6aad2b3c2ea3.zip
Test fix: Do not increment iterator past end.
Diffstat (limited to 'test/libsolidity/SolidityOptimizer.cpp')
-rw-r--r--test/libsolidity/SolidityOptimizer.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/test/libsolidity/SolidityOptimizer.cpp b/test/libsolidity/SolidityOptimizer.cpp
index 7db4f431..732f599f 100644
--- a/test/libsolidity/SolidityOptimizer.cpp
+++ b/test/libsolidity/SolidityOptimizer.cpp
@@ -1123,7 +1123,11 @@ BOOST_AUTO_TEST_CASE(computing_constants)
bytes complicatedConstant = toBigEndian(u256("0x817416927846239487123469187231298734162934871263941234127518276"));
unsigned occurrences = 0;
for (auto iter = optimizedBytecode.cbegin(); iter < optimizedBytecode.cend(); ++occurrences)
- iter = search(iter, optimizedBytecode.cend(), complicatedConstant.cbegin(), complicatedConstant.cend()) + 1;
+ {
+ iter = search(iter, optimizedBytecode.cend(), complicatedConstant.cbegin(), complicatedConstant.cend());
+ if (iter < optimizedBytecode.cend())
+ ++iter;
+ }
BOOST_CHECK_EQUAL(2, occurrences);
bytes constantWithZeros = toBigEndian(u256("0x77abc0000000000000000000000000000000000000000000000000000000001"));