diff options
author | ronny | 2002-11-12 21:38:23 +0000 |
---|---|---|
committer | ronny | 2002-11-12 21:38:23 +0000 |
commit | 83645f5406253482cdee4246761b2b6fdee544a8 (patch) | |
tree | 98c84a794d5be1ef8aba1742e6590308c7efd218 /frontend/convertDynamics.icl | |
parent | bug 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.icl | 6 |
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)) |