diff options
| author | Kathy Gray | 2015-09-24 11:46:21 +0100 |
|---|---|---|
| committer | Kathy Gray | 2015-09-24 11:57:00 +0100 |
| commit | 30780bad55a5b20f7f894464913a012a8635640d (patch) | |
| tree | 6867525787d4bfb0d94650f00d830e13df6d3e0e /language/l2.ml | |
| parent | ddd603c61644bdef9e5b98860a448348b90b614e (diff) | |
Parameterise the rewriter's for multiple different rewritings
Add a new internal node for moving assignments into scope-preserving expressions that more explicitly define the scope
Diffstat (limited to 'language/l2.ml')
| -rw-r--r-- | language/l2.ml | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/language/l2.ml b/language/l2.ml index ea3252da..d5ea7c33 100644 --- a/language/l2.ml +++ b/language/l2.ml @@ -270,6 +270,7 @@ type | E_internal_cast of 'a annot * 'a exp (* This is an internal cast, generated during type checking that will resolve into a syntactic cast after *) | E_internal_exp of 'a annot (* This is an internal use for passing nexp information to library functions, postponed for constraint solving *) | E_internal_exp_user of 'a annot * 'a annot (* This is like the above but the user has specified an implicit parameter for the current function *) + | E_internal_let of 'a lexp * 'a exp * 'a exp (* This is an internal node for compilation that demonstrates the scope of a local mutable variable *) and 'a exp = E_aux of 'a exp_aux * 'a annot |
