diff options
-rw-r--r-- | frontend/check.icl | 6 | ||||
-rw-r--r-- | frontend/explicitimports.icl | 10 | ||||
-rw-r--r-- | frontend/syntax.dcl | 5 |
3 files changed, 10 insertions, 11 deletions
diff --git a/frontend/check.icl b/frontend/check.icl index 131a4fd..286fd7d 100644 --- a/frontend/check.icl +++ b/frontend/check.icl @@ -3125,7 +3125,7 @@ where mark_belongings_of_expl_imp_symbol decl=:(Declaration {decl_ident={id_info}}) (dcl_modules, cs_symbol_table) # (ste, cs_symbol_table) = readPtr id_info cs_symbol_table = case ste of - ({ste_kind=STE_ExplImpComponentNrs component_numbers inst_indices}) + ({ste_kind=STE_ExplImpComponentNrs component_numbers}) # (all_belonging_symbols, dcl_modules) = getBelongingSymbols decl dcl_modules -> (dcl_modules, foldlBelongingSymbols mark_belonging_symbol all_belonging_symbols cs_symbol_table) where @@ -3156,7 +3156,7 @@ where unmark_belongings_of_expl_imp_symbol decl=:(Declaration {decl_ident={id_info}}) (dcl_modules, cs_symbol_table) # (ste, cs_symbol_table) = readPtr id_info cs_symbol_table = case ste of - ({ste_kind=STE_ExplImpComponentNrs component_numbers inst_indices}) + ({ste_kind=STE_ExplImpComponentNrs component_numbers}) # (all_belonging_symbols, dcl_modules) = getBelongingSymbols decl dcl_modules -> (dcl_modules, foldlBelongingSymbols unmark_belonging_symbol all_belonging_symbols cs_symbol_table) where @@ -3249,7 +3249,7 @@ update_expl_imp_for_marked_local_symbol mod_index decl=:(Declaration {decl_ident where updateExplImpForMarkedLocalSymbol :: !Index Declaration !SymbolTableEntry !u:{#DclModule} !{!{!*ExplImpInfo}} !*SymbolTable -> (!u:{#DclModule}, !{!{!.ExplImpInfo}}, !.SymbolTable) - updateExplImpForMarkedLocalSymbol mod_index decl {ste_kind=STE_ExplImpComponentNrs component_numbers inst_indices} + updateExplImpForMarkedLocalSymbol mod_index decl {ste_kind=STE_ExplImpComponentNrs component_numbers} dcl_modules expl_imp_infos cs_symbol_table = foldSt (addExplImpInfo mod_index decl) component_numbers (dcl_modules, expl_imp_infos, cs_symbol_table) where diff --git a/frontend/explicitimports.icl b/frontend/explicitimports.icl index 4c56ea2..57adb6f 100644 --- a/frontend/explicitimports.icl +++ b/frontend/explicitimports.icl @@ -34,18 +34,18 @@ markExplImpSymbols component_nr (expl_imp_info, cs_symbol_table) (ste, cs_symbol_table) = readPtr eii_ident.id_info cs_symbol_table cai = { cai_component_nr = component_nr, cai_index = i } = case ste.ste_kind of - STE_ExplImpComponentNrs component_nrs _ - # new_ste_kind = STE_ExplImpComponentNrs [cai:component_nrs] [] + STE_ExplImpComponentNrs component_nrs + # new_ste_kind = STE_ExplImpComponentNrs [cai:component_nrs] cs_symbol_table = writePtr eii_ident.id_info { ste & ste_kind = new_ste_kind } cs_symbol_table -> (changed_symbols_accu, expl_imp_info_from_component, cs_symbol_table) _ - # new_ste = { ste & ste_kind = STE_ExplImpComponentNrs [cai] [], ste_previous = ste } + # new_ste = { ste & ste_kind = STE_ExplImpComponentNrs [cai], ste_previous = ste } -> ([eii_ident:changed_symbols_accu], expl_imp_info_from_component, writePtr eii_ident.id_info new_ste cs_symbol_table) updateExplImpForMarkedSymbol :: !Index !Declaration !SymbolTableEntry !u:{#DclModule} !{!{!*ExplImpInfo}} !*SymbolTable -> (!u:{#DclModule}, !{!{!.ExplImpInfo}}, !.SymbolTable) -updateExplImpForMarkedSymbol mod_index decl {ste_kind=STE_ExplImpComponentNrs component_numbers inst_indices} dcl_modules expl_imp_infos cs_symbol_table - = foldSt (addExplImpInfo mod_index decl inst_indices) component_numbers (dcl_modules, expl_imp_infos, cs_symbol_table) +updateExplImpForMarkedSymbol mod_index decl {ste_kind=STE_ExplImpComponentNrs component_numbers} dcl_modules expl_imp_infos cs_symbol_table + = foldSt (addExplImpInfo mod_index decl []) component_numbers (dcl_modules, expl_imp_infos, cs_symbol_table) updateExplImpForMarkedSymbol _ _ entry dcl_modules expl_imp_infos cs_symbol_table = (dcl_modules, expl_imp_infos, cs_symbol_table) diff --git a/frontend/syntax.dcl b/frontend/syntax.dcl index bed2d9c..cef2bf7 100644 --- a/frontend/syntax.dcl +++ b/frontend/syntax.dcl @@ -59,10 +59,9 @@ instance == FunctionOrMacroIndex | STE_DictField !SelectorDef | STE_Called ![FunctionOrMacroIndex] /* used during macro expansion to indicate that this function is called */ | STE_ExplImpSymbol !Int - | STE_ExplImpComponentNrs ![ComponentNrAndIndex] ![Declaration] + | STE_ExplImpComponentNrs ![ComponentNrAndIndex] /* stores the numbers of all module components that import the symbol from - the "actual" dcl module. Further for each class all encountered - instances are accumulated. + the "actual" dcl module. */ | STE_BelongingSymbol !Int |