aboutsummaryrefslogtreecommitdiff
path: root/frontend
diff options
context:
space:
mode:
authorsjakie2001-10-17 13:40:39 +0000
committersjakie2001-10-17 13:40:39 +0000
commit7e7540a3380cd156396d2a9d97472b00056d8c61 (patch)
tree53670c8350a18eb27f7a8268a2e0159a1f792948 /frontend
parentno message (diff)
Bug fixes: too many error messages were printed
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@859 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend')
-rw-r--r--frontend/analtypes.icl7
1 files changed, 4 insertions, 3 deletions
diff --git a/frontend/analtypes.icl b/frontend/analtypes.icl
index 55f05f2..fcc2b5f 100644
--- a/frontend/analtypes.icl
+++ b/frontend/analtypes.icl
@@ -681,19 +681,20 @@ cyclicClassInfoMark =: [KindCycle]
determineKindsOfClasses :: !NumberSet !{#CommonDefs} !*TypeDefInfos !*TypeVarHeap !*ErrorAdmin
-> (!*ClassDefInfos, !*TypeDefInfos, !*TypeVarHeap, !*ErrorAdmin)
determineKindsOfClasses used_module_numbers modules type_def_infos type_var_heap error
+ #! prev_error_ok = error.ea_ok
# nr_of_modules = size modules
class_infos = {{} \\ module_nr <- [0..nr_of_modules] }
class_infos = iFoldSt (initialyse_info_for_module used_module_numbers modules) 0 nr_of_modules class_infos
-
as =
{ as_td_infos = type_def_infos
, as_type_var_heap = type_var_heap
, as_kind_heap = newHeap
- , as_error = error
+ , as_error = { error & ea_ok = True }
}
(class_infos, {as_td_infos,as_type_var_heap,as_error}) = iFoldSt (determine_kinds_of_class_in_module modules) 0 nr_of_modules (class_infos, as)
- = (class_infos, as_td_infos, as_type_var_heap, as_error)
+ #! ok = as_error.ea_ok
+ = (class_infos, as_td_infos, as_type_var_heap, { as_error & ea_ok = prev_error_ok && ok })
where
initialyse_info_for_module used_module_numbers modules module_index class_infos
| inNumberSet module_index used_module_numbers