From 8a771320fa37d6069a1ef4a9ac30ac6243149e26 Mon Sep 17 00:00:00 2001 From: Li Jin Date: Wed, 29 Jan 2025 12:20:12 +0800 Subject: Fixed issue #183 and issue #185. --- src/yuescript/yue_compiler.cpp | 4 ++-- src/yuescript/yuescript.h | 27 ++++++++++++--------------- 2 files changed, 14 insertions(+), 17 deletions(-) (limited to 'src') diff --git a/src/yuescript/yue_compiler.cpp b/src/yuescript/yue_compiler.cpp index 2c0b0f9..eb12b3f 100644 --- a/src/yuescript/yue_compiler.cpp +++ b/src/yuescript/yue_compiler.cpp @@ -75,7 +75,7 @@ static std::unordered_set Metamethods = { "close"s // Lua 5.4 }; -const std::string_view version = "0.26.1"sv; +const std::string_view version = "0.26.2"sv; const std::string_view extension = "yue"sv; class CompileError : public std::logic_error { @@ -7078,7 +7078,7 @@ private: } else { for (const auto& exp : tmp) { _buf << exp << " == "sv << varName; - if (exp != tmp.back()) { + if (&exp != &tmp.back()) { _buf << " or "sv; } } diff --git a/src/yuescript/yuescript.h b/src/yuescript/yuescript.h index f6d12dc..ebe90cb 100644 --- a/src/yuescript/yuescript.h +++ b/src/yuescript/yuescript.h @@ -164,23 +164,20 @@ local function yue_traceback(err, level) stp.simplified = yue.options.simplified return stp.stacktrace(err, level) end -local function yue_require(name) - insert_loader() - local success, res = xpcall(function() - return require(name) - end, function(err) - return yue_traceback(err, 3) - end) - if success then - return res - else - print(res) - return nil - end -end setmetatable(yue, { __call = function(self, name) - return self.require(name) + insert_loader() + local success, res = xpcall(function() + return require(name) + end, function(err) + return yue_traceback(err, 3) + end) + if success then + return res + else + print(res) + return nil + end end }) local function dump(what) -- cgit v1.2.3-55-g6feb