From bc4a0073da8049ab1c7f7096bc42514b466bfd34 Mon Sep 17 00:00:00 2001 From: sjakie Date: Tue, 26 Feb 2002 14:38:49 +0000 Subject: 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 --- frontend/overloading.icl | 12 ++++++++++++ 1 file changed, 12 insertions(+) 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) -- cgit v1.2.3