Where/how is never_returns defined?

ahh… finally got it… nothing.mli says

val unreachable_code : t -> _

while nothing.ml says

let unreachable_code = function
  | (_ : t) -> .
;;

and the resulting type of unreachable_code according to utop is

Core.Nothing.t -> 'a

So that _ in .mli seems to indicate that it can be any type… There probably is a clever name for such use of _ and one day I’ll find it :slight_smile: