aboutsummaryrefslogtreecommitdiff
path: root/frontend/parse.icl
diff options
context:
space:
mode:
authorjohnvg2002-07-17 15:12:25 +0000
committerjohnvg2002-07-17 15:12:25 +0000
commit90e6874d2db5abf149c4336aa78166ef86886852 (patch)
tree5ce16e515f475aa43bd8800c72215a315902c94d /frontend/parse.icl
parentadd abstract synonym types (diff)
add abstract synonym types
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1158 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/parse.icl')
-rw-r--r--frontend/parse.icl5
1 files changed, 3 insertions, 2 deletions
diff --git a/frontend/parse.icl b/frontend/parse.icl
index d18b633..db56d07 100644
--- a/frontend/parse.icl
+++ b/frontend/parse.icl
@@ -1697,6 +1697,7 @@ where
| annot == AN_None
-> (PD_Type td, pState)
-> (PD_Type td, parseError "Algebraic type" No ("No lhs strictness annotation for the algebraic type "+name) pState)
+
want_type_rhs parseContext td=:{td_attribute} ColonDefinesToken annot pState // type Macro
# name = td.td_name.id_name
pState = verify_annot_attr annot td_attribute name pState
@@ -1705,7 +1706,7 @@ where
| annot == AN_None
= (PD_Type td, pState)
= (PD_Type td, parseError "Type synonym" No ("No lhs strictness annotation for the type synonym "+name) pState)
-/*
+
want_type_rhs parseContext td=:{td_attribute} token=:DefinesColonToken annot pState
| isIclContext parseContext
= (PD_Erroneous, parseError "type RHS" (Yes token) "type definition" pState)
@@ -1718,7 +1719,7 @@ where
| td_attribute == TA_Anonymous || td_attribute == TA_Unique || td_attribute == TA_None
= (PD_Type td, pState)
= (PD_Type td, parseError "abstract type" No ("type attribute "+toString td_attribute+" for abstract type "+name+" is not") (tokenBack pState))
-*/
+
want_type_rhs parseContext td=:{td_attribute} token annot pState
| isIclContext parseContext
= (PD_Erroneous, parseError "type RHS" (Yes token) "type definition" pState)