From 6402a8896c78440aee03cc4b7bb315fc236e6ff8 Mon Sep 17 00:00:00 2001 From: Li Jin Date: Sat, 2 May 2020 14:41:40 +0800 Subject: fix Moonscript issue 416: ambiguous Lua output in some cases. --- src/MoonP/moon_parser.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/MoonP/moon_parser.cpp') diff --git a/src/MoonP/moon_parser.cpp b/src/MoonP/moon_parser.cpp index 4f12a34..5b537a1 100644 --- a/src/MoonP/moon_parser.cpp +++ b/src/MoonP/moon_parser.cpp @@ -538,12 +538,13 @@ MoonParser::MoonParser() { unless_line = key("unless") >> Exp; statement_appendix = (if_line | unless_line | CompInner) >> Space; + statement_sep = and_(*SpaceBreak >> CheckIndent >> Space >> (set("($'\"") | expr("[[") | expr("[="))); Statement = ( Import | While | Repeat | For | ForEach | Return | Local | Global | Export | Macro | Space >> BreakLoop | Label | Goto | Backcall | ExpListAssign ) >> Space >> - -statement_appendix; + -statement_appendix >> -statement_sep; Body = Space >> Break >> *EmptyLine >> InBlock | Statement; -- cgit v1.2.3-55-g6feb