aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--frontend/frontend.icl11
-rw-r--r--frontend/trans.dcl2
2 files changed, 11 insertions, 2 deletions
diff --git a/frontend/frontend.icl b/frontend/frontend.icl
index 5a055d7..f78006f 100644
--- a/frontend/frontend.icl
+++ b/frontend/frontend.icl
@@ -213,7 +213,7 @@ frontEndInterface options mod_ident search_paths cached_dcl_modules functions_an
// # (components, fun_defs, error) = showComponents2 components 0 fun_defs acc_args error
- (components, fun_defs, dcl_types, used_conses, var_heap, type_heaps, expression_heap)
+ (components, fun_defs, dcl_types, used_conses, var_heap, type_heaps, expression_heap, acc_args)
= transformGroups cleanup_info main_dcl_module_n stdStrictLists_module_n (components -*-> "Transform") fun_defs acc_args common_defs imported_funs dcl_types used_conses_in_dynamics type_def_infos var_heap type_heaps expression_heap options.feo_fusion
| options.feo_up_to_phase == FrontEndPhaseTransformGroups
@@ -324,11 +324,20 @@ where
= (fun_defs, file <<< '\n')
show_component [fun:funs] fun_defs acc_args file
# (fd, fun_defs) = fun_defs![fun]
+ | fun >= size acc_args
+ # file = file <<< fd.fun_symb <<< '.' <<< fun <<< " ???"
+ = show_component funs fun_defs acc_args file
# file = file <<< fd.fun_symb <<< '.' <<< fun <<< " ("
+ # file = show_producer_status acc_args.[fun].cc_producer file
# file = show_accumulating_arguments acc_args.[fun].cc_args file
# file = show_linear_arguments acc_args.[fun].cc_linear_bits file
= show_component funs fun_defs acc_args (file <<< ") ")
+ show_producer_status pc file
+ | pc == True
+ = file <<< "+:"
+ = file <<< "-:"
+
show_accumulating_arguments [ cc : ccs] file
| cc == cPassive
= show_accumulating_arguments ccs (file <<< 'p')
diff --git a/frontend/trans.dcl b/frontend/trans.dcl
index 354eefc..dcd33a8 100644
--- a/frontend/trans.dcl
+++ b/frontend/trans.dcl
@@ -16,7 +16,7 @@ analyseGroups :: !{# CommonDefs} !{#{#FunType}} !IndexRange !Int !Int !*{! Group
transformGroups :: !CleanupInfo !Int !Int !*{! Group} !*{#FunDef} !*{!.ConsClasses} !{# CommonDefs} !{# {# FunType} }
!*ImportedTypes !ImportedConstructors !*TypeDefInfos !*VarHeap !*TypeHeaps !*ExpressionHeap !Bool
- -> (!*{! Group}, !*{#FunDef}, !*ImportedTypes, !ImportedConstructors, !*VarHeap, !*TypeHeaps, !*ExpressionHeap)
+ -> (!*{! Group}, !*{#FunDef}, !*ImportedTypes, !ImportedConstructors, !*VarHeap, !*TypeHeaps, !*ExpressionHeap, !*{!ConsClasses})
partitionateFunctions :: !*{# FunDef} ![IndexRange] -> (!*{! Group}, !*{# FunDef})