From 7abafe80f96c4a4cdcfb7711e451c938c17a60b7 Mon Sep 17 00:00:00 2001 From: Li Jin Date: Sat, 28 Mar 2020 10:04:26 +0800 Subject: fix an existential op issue and add case. --- src/MoonP/moon_compiler.cpp | 8 ++++---- src/moonp.cpp | 10 ++++++++-- 2 files changed, 12 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/MoonP/moon_compiler.cpp b/src/MoonP/moon_compiler.cpp index db2e278..c854f58 100644 --- a/src/MoonP/moon_compiler.cpp +++ b/src/MoonP/moon_compiler.cpp @@ -43,7 +43,7 @@ inline std::string s(std::string_view sv) { } const char* version() { - return "0.3.6"; + return "0.3.7"; } // name of table stored in lua registry @@ -3129,15 +3129,15 @@ private: return; } const auto& chainList = chainValue->items.objects(); - if (transformChainEndWithColonItem(chainList, out, usage, assignList)) { - return; - } if (transformChainEndWithEOP(chainList, out, usage, assignList)) { return; } if (transformChainWithEOP(chainList, out, usage, assignList)) { return; } + if (transformChainEndWithColonItem(chainList, out, usage, assignList)) { + return; + } transformChainList(chainList, out, usage, assignList); } diff --git a/src/moonp.cpp b/src/moonp.cpp index 18eb059..795e6d2 100644 --- a/src/moonp.cpp +++ b/src/moonp.cpp @@ -434,14 +434,20 @@ int main(int narg, const char** args) { results.push_back(std::move(task)); } int ret = 0; - std::string msg; + std::list errs; for (auto& result : results) { int val = 0; + std::string msg; std::tie(val, msg) = result.get(); if (val != 0) { ret = val; + errs.push_back(msg); + } else { + std::cout << msg; } - std::cout << msg; + } + for (const auto& err : errs) { + std::cout << err; } return ret; } -- cgit v1.2.3-55-g6feb