aboutsummaryrefslogtreecommitdiff
path: root/frontend/check.icl
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/check.icl')
-rw-r--r--frontend/check.icl7
1 files changed, 5 insertions, 2 deletions
diff --git a/frontend/check.icl b/frontend/check.icl
index 0a36f56..fe7ed0c 100644
--- a/frontend/check.icl
+++ b/frontend/check.icl
@@ -26,7 +26,6 @@ checkGenerics
# (generic_def=:{gen_name, gen_type, gen_pos}, generic_defs) = generic_defs![gen_index]
# position = newPosition gen_name gen_pos
# cs_error = setErrorAdmin position cs_error
- //---> ("checkGenerics generic type 1", gen_type.gt_type)
// add * for kind-star instances and *->* for arrays
# kinds =
@@ -44,6 +43,11 @@ checkGenerics
#! {cs_error} = cs
#! (gt_vars, st_vars, cs_error) = split_vars gen_type.gt_vars gt_type.st_vars cs_error
+
+ #! cs_error = case gt_type.st_context of
+ [] -> cs_error
+ _ -> checkError "" "class contexts are not supported in generic types" cs_error
+
#! cs = {cs & cs_error = cs_error}
#! gt_type = {gt_type & st_vars = st_vars}
@@ -55,7 +59,6 @@ checkGenerics
}
# generic_defs = {generic_defs & [gen_index] = generic_def}
- //---> ("checkGenerics generic type 2", gt_type)
= checkGenerics (inc gen_index) module_index generic_defs class_defs type_defs modules type_heaps cs
where
split_vars [] st_vars error