The original code matched the name of the function to possible names of "raise
functions" to figure out if the "apply expression" is actually a "raise
expression".
This is undesirable, as various versions of OCaml has different names for raise.
For example, "Pervasives.raise" now translates to "Stdlib!.Pervasives.raise".
The original code matched the name of the function to possible names of "raise functions" to figure out if the "apply expression" is actually a "raise expression".
This is undesirable, as various versions of OCaml has different names for raise. For example, "Pervasives.raise" now translates to "Stdlib!.Pervasives.raise".
This commit utilizes the value_description field to figure out if the function is a "raise" or not. This pattern-matching format is also utilized in OCaml's typecore.ml : https://github.com/ocaml/ocaml/blob/98392895940cc1c18534280ae001b70fa5bf24c2/typing/typecore.ml#L2358