Weaken recursive let bindings

This commit is contained in:
Ayaz Hafiz 2023-01-12 10:21:57 -06:00 committed by Folkert
parent e3a213c0dc
commit e36f90feec
No known key found for this signature in database
GPG key ID: 1F17F6FFD112B97C

View file

@ -3826,13 +3826,14 @@ fn is_generalizable_expr(mut expr: &Expr) -> bool {
Num(..) | Int(..) | Float(..) => return true,
Closure(_) => return true,
OpaqueRef { argument, .. } => expr = &argument.1.value,
Str(_) | List { .. } | SingleQuote(_, _, _, _) | When { .. } | If { .. } => {
Str(_) | List { .. } | SingleQuote(_, _, _, _) | When { .. } | If { .. }
| LetRec(_, _, _)
=> {
return false
}
// TODO(weakening)
Var(_, _)
| AbilityMember(_, _, _)
| LetRec(_, _, _)
| LetNonRec(_, _)
| Call(_, _, _)
| RunLowLevel { .. }