diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/yuescript/yue_compiler.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/yuescript/yue_compiler.cpp b/src/yuescript/yue_compiler.cpp index 452ffbd..5cd2804 100644 --- a/src/yuescript/yue_compiler.cpp +++ b/src/yuescript/yue_compiler.cpp | |||
@@ -78,7 +78,7 @@ static std::unordered_set<std::string> Metamethods = { | |||
78 | "close"s // Lua 5.4 | 78 | "close"s // Lua 5.4 |
79 | }; | 79 | }; |
80 | 80 | ||
81 | const std::string_view version = "0.28.0"sv; | 81 | const std::string_view version = "0.28.1"sv; |
82 | const std::string_view extension = "yue"sv; | 82 | const std::string_view extension = "yue"sv; |
83 | 83 | ||
84 | class CompileError : public std::logic_error { | 84 | class CompileError : public std::logic_error { |
@@ -9569,12 +9569,13 @@ private: | |||
9569 | markVarGlobalConst(name); | 9569 | markVarGlobalConst(name); |
9570 | } | 9570 | } |
9571 | } else { | 9571 | } else { |
9572 | if (global->constAttrib) { | ||
9573 | throw CompileError("missing initial value for global const", global->constAttrib); | ||
9574 | } | ||
9575 | for (auto name : values->nameList->names.objects()) { | 9572 | for (auto name : values->nameList->names.objects()) { |
9576 | auto var = static_cast<Variable_t*>(name); | 9573 | auto var = static_cast<Variable_t*>(name); |
9577 | addGlobalVar(variableToString(var), var); | 9574 | auto varName = variableToString(var); |
9575 | addGlobalVar(varName, var); | ||
9576 | if (global->constAttrib) { | ||
9577 | markVarGlobalConst(varName); | ||
9578 | } | ||
9578 | } | 9579 | } |
9579 | } | 9580 | } |
9580 | break; | 9581 | break; |