summaryrefslogtreecommitdiff
path: root/src/Pure.ml
diff options
context:
space:
mode:
Diffstat (limited to 'src/Pure.ml')
-rw-r--r--src/Pure.ml7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/Pure.ml b/src/Pure.ml
index 0016aedb..45609273 100644
--- a/src/Pure.ml
+++ b/src/Pure.ml
@@ -188,10 +188,15 @@ type let_bindings =
(** **Rk.:** here, [expression] is not at all equivalent to the expressions
used in CFIM. They are lambda-calculus expressions, and are thus actually
more general than the CFIM statements, in a sense.
+
+ TODO: actually when I defined [expression] I still had Rust in mind, so
+ it is not a "textbook" lambda calculus expression (still quite constrained).
+ As we want to do transformations on it, through micro-passes, it would be
+ good to update it and make it more "regular".
*)
type expression =
| Return of typed_rvalue
- | Panic
+ | Fail
| Let of let_bindings * expression
(** Let bindings include the let-bindings introduced because of function calls *)
| Switch of typed_rvalue * switch_body