aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjohnvg2007-12-20 15:14:01 +0000
committerjohnvg2007-12-20 15:14:01 +0000
commit910a8bf40b26755000020a58a1b9b5ba5c193885 (patch)
tree12e46fd9c2370e1aa4a52fd1f1a0d282d084ba26
parentcorrect previous commit (diff)
update ft_arity of generated dcl functions, if this field is not updated, fusion
can crash because arguments can be incorrectly analyzed as unused git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1693 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
-rw-r--r--frontend/generics1.icl8
1 files changed, 3 insertions, 5 deletions
diff --git a/frontend/generics1.icl b/frontend/generics1.icl
index 50748b0..a44cfce 100644
--- a/frontend/generics1.icl
+++ b/frontend/generics1.icl
@@ -1909,11 +1909,9 @@ where
| fun_index < size dcl_functions
#! (symbol_type, heaps) = fresh_symbol_type symbol_type heaps
#! (fun, dcl_functions) = dcl_functions ! [fun_index]
- #! fun =
- { fun
- & ft_ident = genericIdentToFunIdent gc_ident gc_type_cons
- , ft_type = symbol_type
- }
+ #! fun = { fun & ft_ident = genericIdentToFunIdent gc_ident gc_type_cons
+ , ft_type = symbol_type
+ , ft_arity = symbol_type.st_arity }
#! dcl_functions = { dcl_functions & [fun_index] = fun}
= (dcl_functions, heaps)
//---> ("update dcl function", fun.ft_ident, fun_index, symbol_type)