aboutsummaryrefslogtreecommitdiff
path: root/frontend
diff options
context:
space:
mode:
authorjohnvg2002-07-12 14:23:16 +0000
committerjohnvg2002-07-12 14:23:16 +0000
commit664c26727ac44e261c0d8863f727701988f00dfe (patch)
tree1613bf8c54194d5a644d4c062dced9ffd8ddd025 /frontend
parentreport an error if a type variable is defined more than once in after 'special' (diff)
added CP_LiftedFunArg
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1144 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend')
-rw-r--r--frontend/syntax.dcl1
-rw-r--r--frontend/syntax.icl6
2 files changed, 6 insertions, 1 deletions
diff --git a/frontend/syntax.dcl b/frontend/syntax.dcl
index e6baf30..787e428 100644
--- a/frontend/syntax.dcl
+++ b/frontend/syntax.dcl
@@ -1345,6 +1345,7 @@ instance == OverloadedListType
:: CoercionPosition
= CP_Expression !Expression
| CP_FunArg !Ident !Int // Function symbol, argument position (>=1)
+ | CP_LiftedFunArg !Ident !Ident // Function symbol, lifted argument ident
:: IdentPos =
{ ip_ident :: !Ident
diff --git a/frontend/syntax.icl b/frontend/syntax.icl
index 1f78c2c..147cd5a 100644
--- a/frontend/syntax.icl
+++ b/frontend/syntax.icl
@@ -1314,6 +1314,7 @@ cIsNotStrict :== False
:: CoercionPosition
= CP_Expression !Expression
| CP_FunArg !Ident !Int // Function symbol, argument position (>=1)
+ | CP_LiftedFunArg !Ident !Ident // Function symbol, lifted argument ident
:: IdentPos =
{ ip_ident :: !Ident
@@ -2168,7 +2169,10 @@ where
instance <<< CoercionPosition
where
- (<<<) file (CP_FunArg fun_name arg_nr) = file <<< "argument " <<< arg_nr <<< " of " <<< readable fun_name
+ (<<<) file (CP_FunArg fun_name arg_nr)
+ = file <<< "argument " <<< arg_nr <<< " of " <<< readable fun_name
+ (<<<) file (CP_LiftedFunArg fun_name arg_name)
+ = file <<< "lifted argument " <<< arg_name <<< " of " <<< readable fun_name
(<<<) file (CP_Expression expression) = show_expression file expression
where
show_expression file (Var {var_name})