diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2019-08-14 17:42:44 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2019-08-14 17:42:44 +0300 |
commit | d75b2afb685822d7cacccffa82d9c4cae8370bf9 (patch) | |
tree | ddb62e8cddfbb3d9e35175970d352535205febda /cli | |
parent | 8c1e0035404050376350d5e9b9242f5d39a6b53e (diff) |
Fix merge() function generated for map parser
Diffstat (limited to 'cli')
-rw-r--r-- | cli/runtime-source.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/cli/runtime-source.cxx b/cli/runtime-source.cxx index dab695c..fff7f22 100644 --- a/cli/runtime-source.cxx +++ b/cli/runtime-source.cxx @@ -998,7 +998,10 @@ generate_runtime_source (context& ctx, bool complete) os << "static void" << endl << "merge (std::map<K, V>& b, const std::map<K, V>& a)" << "{" - << "b.insert (a.begin (), a.end ());" + << "for (typename std::map<K, V>::const_iterator i (a.begin ()); " << endl + << "i != a.end (); " << endl + << "++i)" << endl + << "b[i->first] = i->second;" << "}"; os << "};"; |