diff options
author | sjakie | 2002-02-26 14:38:49 +0000 |
---|---|---|
committer | sjakie | 2002-02-26 14:38:49 +0000 |
commit | bc4a0073da8049ab1c7f7096bc42514b466bfd34 (patch) | |
tree | cc40a801eaa2534768dbb9517aeac38d58e335ae /frontend/overloading.icl | |
parent | Disable debugging traces (diff) |
Bug fix: Dictionary arguments were not passed correctly to other dictionaries
(b260202.icl)
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1030 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/overloading.icl')
-rw-r--r-- | frontend/overloading.icl | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/frontend/overloading.icl b/frontend/overloading.icl index 3acdf79..a320597 100644 --- a/frontend/overloading.icl +++ b/frontend/overloading.icl @@ -1746,6 +1746,18 @@ where varToFreeVar {var_name, var_info_ptr} count = {fv_def_level = NotALevel, fv_name = var_name, fv_info_ptr = var_info_ptr, fv_count = count} + adjustClassExpression symb_name (Let this_let=:{let_strict_binds, let_lazy_binds, let_expr }) ui + # (let_strict_binds, ui) = adjust_let_binds symb_name let_strict_binds ui + (let_lazy_binds, ui) = adjust_let_binds symb_name let_lazy_binds ui + (let_expr, ui) = adjustClassExpression symb_name let_expr ui + = (Let { this_let & let_strict_binds = let_strict_binds, let_lazy_binds = let_lazy_binds, let_expr = let_expr }, ui) + where + adjust_let_binds symb_name let_binds ui + = mapSt (adjust_let_bind symb_name) let_binds ui + + adjust_let_bind symb_name let_bind=:{lb_src} ui + # (lb_src, ui) = adjustClassExpression symb_name lb_src ui + = ({let_bind & lb_src = lb_src}, ui) adjustClassExpression symb_name expr ui = (expr, ui) |