fix(gen): 补回 CallGenMixin 的 _FreedMark(修行尾时被 checkout 回滚)

TPC 报 MemberLookupFailFast: 属性 Freed 在 VarEntry 中找不到 —— 该文件的行尾修复用 git checkout 恢复过,把未提交的 _FreedMark 改动一并回滚了,残留 ent_wf.Freed = 1。
This commit is contained in:
TermiNexus committed 2026-10-09 12:03:23 +08:00
1 parent dd24dc670f
commit 5f92abb7bc
1 file changed
+1 -2
+1 -2
View File
@@ -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):