diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-01-04 16:07:32 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-01-04 16:07:32 +0200 |
commit | 50a1ae06f83a353a3b9ff7d473122e60ad5f5636 (patch) | |
tree | b92f135444a4faf0c396b12dabb9a394d959dbd3 | |
parent | 9cb1bd3e02faa14e567305f1cdc884a874c866bf (diff) |
Use correct parser interface
-rw-r--r-- | cli/runtime-source.cxx | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/cli/runtime-source.cxx b/cli/runtime-source.cxx index 31a0d1e..cae8c84 100644 --- a/cli/runtime-source.cxx +++ b/cli/runtime-source.cxx @@ -504,9 +504,12 @@ generate_runtime_source (context& ctx) << "parse (std::vector<X>& c, " << (sp ? "bool& xs, " : "") << "scanner& s)" << "{" - << "X x;" - << "bool dummy;" - << "parser<X>::parse (x, dummy, s);" + << "X x;"; + + if (sp) + os << "bool dummy;"; + + os << "parser<X>::parse (x, " << (sp ? "dummy, " : "") << "s);" << "c.push_back (x);"; if (sp) @@ -523,9 +526,12 @@ generate_runtime_source (context& ctx) << "static void" << endl << "parse (std::set<X>& c, " << (sp ? "bool& xs, " : "") << "scanner& s)" << "{" - << "X x;" - << "bool dummy;" - << "parser<X>::parse (x, dummy, s);" + << "X x;"; + + if (sp) + os << "bool dummy;"; + + os << "parser<X>::parse (x, " << (sp ? "dummy, " : "") << "s);" << "c.insert (x);"; if (sp) |