aboutsummaryrefslogtreecommitdiffstats
path: root/liblll/CodeFragment.cpp
diff options
context:
space:
mode:
authorAlex Beregszaszi <alex@rtfs.hu>2016-11-01 07:15:57 +0800
committerAlex Beregszaszi <alex@rtfs.hu>2016-11-01 07:17:48 +0800
commit6d97a56af17d65425d72c5df973b2fa4fac74a7a (patch)
tree743dfd618b8a98b7ab372ae77368d1a3fb76024b /liblll/CodeFragment.cpp
parent979d18f19c711093cdc7f4112a76bf2135c97119 (diff)
downloaddexon-solidity-6d97a56af17d65425d72c5df973b2fa4fac74a7a.tar.gz
dexon-solidity-6d97a56af17d65425d72c5df973b2fa4fac74a7a.tar.zst
dexon-solidity-6d97a56af17d65425d72c5df973b2fa4fac74a7a.zip
LLL: support multiple strings in LIT
Diffstat (limited to 'liblll/CodeFragment.cpp')
-rw-r--r--liblll/CodeFragment.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/liblll/CodeFragment.cpp b/liblll/CodeFragment.cpp
index 0f8f2606..f143ca43 100644
--- a/liblll/CodeFragment.cpp
+++ b/liblll/CodeFragment.cpp
@@ -287,10 +287,10 @@ void CodeFragment::constructOperation(sp::utree const& _t, CompilerState& _s)
if (pos.m_asm.deposit() != 1)
error<InvalidDeposit>();
}
- else if (ii == 2 && !i.tag() && i.which() == sp::utree_type::string_type)
+ else if (ii >= 2 && !i.tag() && i.which() == sp::utree_type::string_type)
{
auto sr = i.get<sp::basic_string<boost::iterator_range<char const*>, sp::utree_type::string_type>>();
- data = bytes((byte const*)sr.begin(), (byte const*)sr.end());
+ data.insert(data.end(), (byte const *)sr.begin(), (byte const*)sr.end());
}
else if (ii >= 2 && !i.tag() && i.which() == sp::utree_type::any_type)
{