From 475eff6d38444e54c4b8b728757072516e354f98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9C=80=E8=90=8C=E5=B0=8F=E6=B1=90?= Date: Thu, 24 Sep 2020 22:03:18 +0800 Subject: =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E4=B8=80=E4=B8=AA=E6=AD=BB=E5=BE=AA?= =?UTF-8?q?=E7=8E=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script-beta/parser/guide.lua | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'script-beta/parser/guide.lua') diff --git a/script-beta/parser/guide.lua b/script-beta/parser/guide.lua index e377b6c8..2dfba346 100644 --- a/script-beta/parser/guide.lua +++ b/script-beta/parser/guide.lua @@ -2780,7 +2780,10 @@ local function mergeFunctionReturns(status, source, index) local rtn = returns[i] if rtn[index] then if rtn[index].type == 'call' then - m.inferByCallReturnAndIndex(status, rtn[index], index) + if not m.checkReturnMark(status, rtn[index]) then + m.checkReturnMark(status, rtn[index], true) + m.inferByCallReturnAndIndex(status, rtn[index], index) + end else local newStatus = m.status(status) m.searchInfer(newStatus, rtn[index]) @@ -2808,7 +2811,9 @@ function m.inferByCallReturnAndIndex(status, call, index) if src.type == 'library' then mergeLibraryFunctionReturns(status, src.value, index) else - mergeFunctionReturns(status, src.value, index) + if not m.checkReturnMark(status, src.value, true) then + mergeFunctionReturns(status, src.value, index) + end end end end -- cgit v1.2.3