fix(gen): 补回 CallGenMixin 的 _FreedMark(修行尾时被 checkout 回滚)
TPC 报 MemberLookupFailFast: 属性 Freed 在 VarEntry 中找不到 —— 该文件的行尾修复用 git checkout 恢复过,把未提交的 _FreedMark 改动一并回滚了,残留 ent_wf.Freed = 1。
This commit is contained in:
1 parent
dd24dc670f
commit
5f92abb7bc
1 file changed
+1
-2
@@ -972,8 +972,7 @@ novirtual class CallGenMixin(CallGenBase.CallGenBase):
|
||||
if arg_wf is None or arg_wf.kind() != ast.ASTKind.Name: continue
|
||||
nm_wf: ast.Name* = ast.Name*(arg_wf)
|
||||
if nm_wf.id is None: continue
|
||||
ent_wf: GenTypes.VarEntry* = self.Gen.VarGen.lookup_var_entry(trans.SymTab, nm_wf.id)
|
||||
if ent_wf is not None: ent_wf.Freed = 1
|
||||
self.Gen.VarGen._FreedMark(self.Gen.VarGen.lookup_var(trans.SymTab, nm_wf.id))
|
||||
# Default-argument filling: when fewer args than params, fill the gaps; the defaults array is
|
||||
# right-aligned to args (defaults[0] maps to args[offset], offset = param_count - default_count).
|
||||
if can > 0 or (can == 0 and cargs is not None):
|
||||
|
||||
Reference in new issue
Block a user