aboutsummaryrefslogtreecommitdiff
path: root/frontend/convertDynamics.icl
diff options
context:
space:
mode:
authorronny2002-11-12 21:38:23 +0000
committerronny2002-11-12 21:38:23 +0000
commit83645f5406253482cdee4246761b2b6fdee544a8 (patch)
tree98c84a794d5be1ef8aba1742e6590308c7efd218 /frontend/convertDynamics.icl
parentbug fix, new method to classify cases that should be transformed (diff)
bug fix,
- compute correct number of type variables in type scheme - normalise if necessary git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1276 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/convertDynamics.icl')
-rw-r--r--frontend/convertDynamics.icl6
1 files changed, 3 insertions, 3 deletions
diff --git a/frontend/convertDynamics.icl b/frontend/convertDynamics.icl
index c09064e..9465e7e 100644
--- a/frontend/convertDynamics.icl
+++ b/frontend/convertDynamics.icl
@@ -572,7 +572,7 @@ convertExprTypeCode cinp tce ci
convertPatternTypeCode :: !ConversionInput !TypeCodeExpression !*ConversionState
-> (!Expression, ![LetBind], !*ConversionState)
convertPatternTypeCode cinp tce ci
- # (type_code, (has_var, binds, ci))
+ # (type_code, (_, binds, ci))
= convertTypeCode True cinp tce (False, [], ci)
= (type_code, binds, ci)
@@ -715,8 +715,8 @@ convertTypeCode pattern cinp (TCE_UniType uni_vars type_code) (has_var, binds, c
# (type_scheme_sym, ci)
= getSymbol PD_Dyn_TypeScheme SK_Constructor 2 ci
= (App { app_symb = type_scheme_sym,
- app_args = [BasicExpr (BVInt count), type_code],
- app_info_ptr = nilPtr }, (has_var, binds, ci))
+ app_args = [BasicExpr (BVInt (count - init_count)), type_code],
+ app_info_ptr = nilPtr }, (has_var || init_count <> 0, binds, ci))
// otherwise
= (type_code, (has_var, binds, ci))