一个空的 raises 列表( raises:[] )意味着不会引发任何异常:

    对于例程 p ,编译器使用推理规则来确定可能引发的异常集;算法在 p 的调用图上运行:

    规则1-2确保下面的代码正常工作: