浏览代码

inconsistent module list when CLOSE loads itself indirectly. Refs: 143.
In a pathological case, the CLOSE section of a module may load
the module to be unloaded indirectly and thereby make the reference count > 0.
Such a module must not be unloaded but an error should be reported.
This situation is now checked after calling the terminator (CLOSE) of a module.
The resulting behavior is in line with the finalizer semantics and with the behavior
of a module terminator that generates a Trap:
the terminator of a module is called only once.

Signed-off-by: Josef Templ <josef.templ@gmail.com>

Josef Templ 8 年之前
父节点
当前提交
e3f26ed2da
共有 1 个文件被更改,包括 0 次插入0 次删除
  1. 二进制
      System/Mod/Kernel.odc

二进制
System/Mod/Kernel.odc