diff options
| author | Li Jin <dragon-fly@qq.com> | 2022-05-25 09:13:36 +0800 |
|---|---|---|
| committer | Li Jin <dragon-fly@qq.com> | 2022-05-25 09:13:36 +0800 |
| commit | c06dde519a8da2be72bdf5a5d450d637f388ae83 (patch) | |
| tree | 40aad443348ca9af3bdc4d743c05e975d0d9aac7 /src | |
| parent | 2c25f56ac8b47542dec1267416c9d0cf13ee61cf (diff) | |
| download | yuescript-c06dde519a8da2be72bdf5a5d450d637f388ae83.tar.gz yuescript-c06dde519a8da2be72bdf5a5d450d637f388ae83.tar.bz2 yuescript-c06dde519a8da2be72bdf5a5d450d637f388ae83.zip | |
remove codes disabling attribute function with Lua 5.1.
Diffstat (limited to '')
| -rwxr-xr-x | src/yuescript/yue_compiler.cpp | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/src/yuescript/yue_compiler.cpp b/src/yuescript/yue_compiler.cpp index 706d5ce..b9b51bf 100755 --- a/src/yuescript/yue_compiler.cpp +++ b/src/yuescript/yue_compiler.cpp | |||
| @@ -34,10 +34,6 @@ extern "C" { | |||
| 34 | #endif // LUA_COMPAT_5_1 | 34 | #endif // LUA_COMPAT_5_1 |
| 35 | #endif // LUA_VERSION_NUM | 35 | #endif // LUA_VERSION_NUM |
| 36 | 36 | ||
| 37 | #if LUA_VERSION_NUM < 504 | ||
| 38 | #define YUE_NO_ATTRIB | ||
| 39 | #endif // LUA_VERSION_NUM | ||
| 40 | |||
| 41 | #endif // YUE_NO_MACRO | 37 | #endif // YUE_NO_MACRO |
| 42 | 38 | ||
| 43 | namespace yue { | 39 | namespace yue { |
| @@ -60,7 +56,7 @@ using namespace parserlib; | |||
| 60 | 56 | ||
| 61 | typedef std::list<std::string> str_list; | 57 | typedef std::list<std::string> str_list; |
| 62 | 58 | ||
| 63 | const std::string_view version = "0.10.24"sv; | 59 | const std::string_view version = "0.10.25"sv; |
| 64 | const std::string_view extension = "yue"sv; | 60 | const std::string_view extension = "yue"sv; |
| 65 | 61 | ||
| 66 | class YueCompilerImpl { | 62 | class YueCompilerImpl { |
| @@ -7148,21 +7144,11 @@ private: | |||
| 7148 | forceAddToScope(var); | 7144 | forceAddToScope(var); |
| 7149 | vars.push_back(var); | 7145 | vars.push_back(var); |
| 7150 | } | 7146 | } |
| 7151 | #ifdef YUE_NO_ATTRIB | ||
| 7152 | if (attrib == "const"sv) { | ||
| 7153 | for (auto& var : vars) { | ||
| 7154 | markVarConst(var); | ||
| 7155 | } | ||
| 7156 | } else { | ||
| 7157 | throw std::logic_error(_info.errorMessage("attribute '"s + attrib + "' is not supported", localAttrib->attrib)); | ||
| 7158 | } | ||
| 7159 | #else // YUE_NO_ATTRIB | ||
| 7160 | attrib = " <"s + attrib + '>'; | 7147 | attrib = " <"s + attrib + '>'; |
| 7161 | for (auto& var : vars) { | 7148 | for (auto& var : vars) { |
| 7162 | markVarConst(var); | 7149 | markVarConst(var); |
| 7163 | var.append(attrib); | 7150 | var.append(attrib); |
| 7164 | } | 7151 | } |
| 7165 | #endif // YUE_NO_ATTRIB | ||
| 7166 | str_list temp; | 7152 | str_list temp; |
| 7167 | for (auto item : localAttrib->assign->values.objects()) { | 7153 | for (auto item : localAttrib->assign->values.objects()) { |
| 7168 | transformAssignItem(item, temp); | 7154 | transformAssignItem(item, temp); |
