aboutsummaryrefslogtreecommitdiff
path: root/frontend/checktypes.icl
diff options
context:
space:
mode:
authorjohnvg2001-08-31 11:02:36 +0000
committerjohnvg2001-08-31 11:02:36 +0000
commit80db9cea7e54f3d75f130267ebc15bec336e0872 (patch)
tree3f3ec861f96900a24402ec273ae88d4d2017e673 /frontend/checktypes.icl
parentadded code for strict and unboxed lists (diff)
add type for function checkSpecialTypes
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@710 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/checktypes.icl')
-rw-r--r--frontend/checktypes.icl7
1 files changed, 3 insertions, 4 deletions
diff --git a/frontend/checktypes.icl b/frontend/checktypes.icl
index a5c5e99..847f8fa 100644
--- a/frontend/checktypes.icl
+++ b/frontend/checktypes.icl
@@ -1197,10 +1197,9 @@ where
= (bind, { cs & cs_symbol_table= cs_symbol_table, cs_error = checkError id_name "type variable not defined" cs_error })
checkSpecialTypeVars SP_None cs
= (SP_None, cs)
-/*
-checkSpecialTypes :: !Index !Specials !u:{#.CheckedTypeDef} !u:{#.DclModule} !*TypeHeaps !*CheckState
- -> (!Specials, !u:{#CheckedTypeDef},!u:{#DclModule},!*TypeHeaps,!*CheckState)
-*/
+
+checkSpecialTypes :: !Index !Specials !v:{#CheckedTypeDef} !u:{#.DclModule} !*TypeHeaps !*CheckState
+ -> (!Specials,!x:{#CheckedTypeDef},!w:{#DclModule},!.TypeHeaps,!.CheckState), [u v <= w, v u <= x];
checkSpecialTypes mod_index (SP_ParsedSubstitutions envs) type_defs modules heaps cs
# ots = { ots_type_defs = type_defs, ots_modules = modules }
(specials, (heaps, ots, cs)) = mapSt (check_environment mod_index) envs (heaps, ots, cs)