From 3422ece5cf324a042d20a955b36f4968c02efe6e Mon Sep 17 00:00:00 2001 From: johnvg Date: Tue, 26 Mar 2013 15:29:16 +0000 Subject: 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 --- frontend/overloading.icl | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'frontend') 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) -- cgit v1.2.3