diff options
Diffstat (limited to '')
| -rw-r--r-- | src/yuescript/yue_parser.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/yuescript/yue_parser.cpp b/src/yuescript/yue_parser.cpp index ea45e85..ff7660a 100644 --- a/src/yuescript/yue_parser.cpp +++ b/src/yuescript/yue_parser.cpp | |||
| @@ -974,12 +974,13 @@ ParseInfo YueParser::parse(std::string_view codes, rule& r) { | |||
| 974 | moduleName = moduleStr + std::to_string(index); | 974 | moduleName = moduleStr + std::to_string(index); |
| 975 | index++; | 975 | index++; |
| 976 | } while (state.usedNames.find(moduleName) != state.usedNames.end()); | 976 | } while (state.usedNames.find(moduleName) != state.usedNames.end()); |
| 977 | state.usedNames.insert(moduleName); | ||
| 977 | res.moduleName = moduleName; | 978 | res.moduleName = moduleName; |
| 978 | res.usedNames = std::move(state.usedNames); | ||
| 979 | res.exportDefault = state.exportDefault; | 979 | res.exportDefault = state.exportDefault; |
| 980 | res.exportMacro = state.exportMacro; | 980 | res.exportMacro = state.exportMacro; |
| 981 | res.exportMetatable = !state.exportMetatable && state.exportMetamethod; | 981 | res.exportMetatable = !state.exportMetatable && state.exportMetamethod; |
| 982 | } | 982 | } |
| 983 | res.usedNames = std::move(state.usedNames); | ||
| 983 | } catch (const ParserError& err) { | 984 | } catch (const ParserError& err) { |
| 984 | res.error = {err.what(), err.line, err.col}; | 985 | res.error = {err.what(), err.line, err.col}; |
| 985 | return res; | 986 | return res; |
