diff options
author | johnvg | 2013-03-26 15:29:16 +0000 |
---|---|---|
committer | johnvg | 2013-03-26 15:29:16 +0000 |
commit | 3422ece5cf324a042d20a955b36f4968c02efe6e (patch) | |
tree | 0723f8c24311d5869a2e16f4e3ed398dc00d3c46 | |
parent | remove unused constructor VI_Ref (diff) |
in function adjust_type_code, add alternative for TCE_Selector,
fix name of type function
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2217 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
-rw-r--r-- | frontend/overloading.icl | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/frontend/overloading.icl b/frontend/overloading.icl index 03419a1..57d2848 100644 --- a/frontend/overloading.icl +++ b/frontend/overloading.icl @@ -1309,7 +1309,7 @@ toTypeCodeConstructor type=:{glob_object=type_index, glob_module=module_index} c = fatal "toTypeCodeConstructor" ("no function (" +++ type.td_ident.id_name +++ ")") // ... sanity check # type_fun - = { symb_ident = {type.td_ident & id_info = nilPtr} // this is wrong but let's give it a try + = { symb_ident = {id_name = "TD;"+++type.td_ident.id_name, id_info = nilPtr} , symb_kind = SK_Function {glob_module = module_index, glob_object = td_fun_index} } = GTT_Constructor type_fun @@ -1792,6 +1792,11 @@ where = getTCDictionary symb_ident var_info_ptr (ui_var_heap, ui_error) # ui = {ui & ui_var_heap = ui_var_heap, ui_error = ui_error} = (TCE_TypeTerm var_info_ptr, ui) + adjust_type_code (TCE_Selector selectors var_info_ptr) ui=:{ui_var_heap,ui_error} + # (var_info_ptr, (ui_var_heap,ui_error)) + = getTCDictionary symb_ident var_info_ptr (ui_var_heap, ui_error) + # ui = {ui & ui_var_heap = ui_var_heap, ui_error = ui_error} + = (TCE_Selector selectors var_info_ptr, ui) adjust_type_code (TCE_Constructor cons typecode_exprs) ui # (typecode_exprs, ui) = mapSt adjust_type_code typecode_exprs ui = (TCE_Constructor cons typecode_exprs, ui) |