exit() is declared with the same no-value return type as genuinely returning builtins like sleep() and log() (src/fpy/macros.py), so nothing in the type system records that control never continues past a call to it. A distinct bottom type would let later passes treat code after exit() as unreachable.
exit()is declared with the same no-value return type as genuinely returning builtins likesleep()andlog()(src/fpy/macros.py), so nothing in the type system records that control never continues past a call to it. A distinct bottom type would let later passes treat code afterexit()as unreachable.