aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormartijnv2002-01-21 11:11:49 +0000
committermartijnv2002-01-21 11:11:49 +0000
commit8563b2d062d0d982a0445a13bb02ffc9af28bf00 (patch)
tree086366d7f9edd6e78527a1abf43c55280470806d
parentbug fix: the let for a ModuleID was generated *after* copyExpression which (diff)
bug fix: fold2St cannot deal with inifinite lists
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@972 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
-rw-r--r--frontend/overloading.icl8
1 files changed, 4 insertions, 4 deletions
diff --git a/frontend/overloading.icl b/frontend/overloading.icl
index 375cd5c..2061b1e 100644
--- a/frontend/overloading.icl
+++ b/frontend/overloading.icl
@@ -1042,7 +1042,7 @@ where
build_type_identification dyn_type_code ui=:{ui_x={x_module_id=No}}
= (dyn_type_code,ui)
build_type_identification dyn_type_code ui=:{ui_x={x_module_id=Yes let_bind}}
- # (let_info_ptr, ui) = let_ptr ui
+ # (let_info_ptr, ui) = let_ptr 1 ui
# letje
= Let { let_strict_binds = [],
let_lazy_binds = [let_bind],
@@ -1607,7 +1607,7 @@ where
convertTypecode (TCE_UniType uni_vars type_code) ui
# (let_binds, ui) = createVariables uni_vars ui
(let_expr, ui) = convertTypecode type_code ui
- (let_info_ptr,ui) = let_ptr ui
+ (let_info_ptr,ui) = let_ptr (length let_binds) ui
= ( Let { let_strict_binds = []
, let_lazy_binds = let_binds
, let_expr = let_expr
@@ -1679,8 +1679,8 @@ where
adjustClassExpression symb_name expr ui
= (expr, ui)
-let_ptr ui=:{ui_symbol_heap}
- # (expr_info_ptr, ui_symbol_heap) = newPtr (EI_LetType (repeat empty_attributed_type)) ui_symbol_heap
+let_ptr nr_of_binds ui=:{ui_symbol_heap}
+ # (expr_info_ptr, ui_symbol_heap) = newPtr (EI_LetType (repeatn nr_of_binds empty_attributed_type)) ui_symbol_heap
= (expr_info_ptr, {ui & ui_symbol_heap = ui_symbol_heap})
where
empty_attributed_type :: AType