aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjohnvg2005-04-21 15:52:50 +0000
committerjohnvg2005-04-21 15:52:50 +0000
commit0f8ae96110f200a1c40409e887a849508fb433b3 (patch)
tree40897b33e57f3108b19c15e846eab19410837da7
parentremove unused field support_generics (diff)
remove support for 1.3 import syntax
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1536 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
-rw-r--r--frontend/check.icl124
-rw-r--r--frontend/checksupport.icl2
-rw-r--r--frontend/compilerSwitches.dcl3
-rw-r--r--frontend/explicitimports.dcl2
-rw-r--r--frontend/explicitimports.icl39
-rw-r--r--frontend/parse.icl18
-rw-r--r--frontend/syntax.dcl3
-rw-r--r--frontend/syntax.icl2
-rw-r--r--frontend/type.icl2
9 files changed, 18 insertions, 177 deletions
diff --git a/frontend/check.icl b/frontend/check.icl
index 9b2ceaf..2015b53 100644
--- a/frontend/check.icl
+++ b/frontend/check.icl
@@ -1282,8 +1282,8 @@ where
= (inc decl_index, [Declaration { decl_ident = class_ident, decl_pos = class_pos, decl_kind = STE_Class, decl_index = decl_index } : decls])
member_def_to_dcl {me_ident, me_pos} (decl_index, decls)
= (inc decl_index, [Declaration { decl_ident = me_ident, decl_pos = me_pos, decl_kind = STE_Member, decl_index = decl_index } : decls])
- instance_def_to_dcl {ins_class, ins_ident, ins_pos} (decl_index, decls)
- = (inc decl_index, [Declaration { decl_ident = ins_ident, decl_pos = ins_pos, decl_kind = STE_Instance ins_class.glob_object.ds_ident, decl_index = decl_index } : decls])
+ instance_def_to_dcl {ins_ident, ins_pos} (decl_index, decls)
+ = (inc decl_index, [Declaration { decl_ident = ins_ident, decl_pos = ins_pos, decl_kind = STE_Instance, decl_index = decl_index } : decls])
generic_def_to_dcl {gen_ident, gen_member_ident, gen_type, gen_pos} (decl_index, decls)
# generic_decl = Declaration { decl_ident = gen_ident, decl_pos = gen_pos, decl_kind = STE_Generic, decl_index = decl_index }
# member_decl = Declaration { decl_ident = gen_member_ident, decl_pos = gen_pos, decl_kind = STE_Generic, decl_index = decl_index }
@@ -1463,7 +1463,7 @@ renumber_icl_definitions_as_dcl_definitions (Yes icl_to_dcl_index_table) icl_siz
# class_def = {class_def & class_members=class_members}
# cdefs = {cdefs & com_class_defs.[decl_index] =class_def}
= (Declaration {icl_decl_symbol & decl_index=icl_to_dcl_index_table.[cClassDefs,decl_index]},cdefs)
- renumber_icl_decl_symbol (Declaration icl_decl_symbol=:{decl_kind = STE_Instance _, decl_index}) cdefs
+ renumber_icl_decl_symbol (Declaration icl_decl_symbol=:{decl_kind = STE_Instance, decl_index}) cdefs
= (Declaration {icl_decl_symbol & decl_index=icl_to_dcl_index_table.[cInstanceDefs,decl_index]},cdefs)
renumber_icl_decl_symbol (Declaration icl_decl_symbol=:{decl_kind = STE_Generic, decl_index}) cdefs
= (Declaration {icl_decl_symbol & decl_index=icl_to_dcl_index_table.[cGenericDefs,decl_index]},cdefs)
@@ -1888,8 +1888,6 @@ checkDclModules imports_of_icl_mod dcl_modules icl_functions macro_defs heaps cs
({ste_index}, cs_symbol_table) = readPtr import_module.id_info cs_symbol_table
= (expl_imp_symbols_accu, nr_of_expl_imp_symbols, [(ste_index, import_file_position, expl_imp_indices):expl_imp_indices_accu], cs_symbol_table)
- get_expl_imp_symbol imp_decl=:(ID_OldSyntax idents) state
- = foldSt (get_symbol imp_decl) idents state
get_expl_imp_symbol imp_decl state
= get_symbol imp_decl (get_ident imp_decl) state
where
@@ -1939,23 +1937,7 @@ checkDclComponent components_array super_components expl_imp_indices mod_indices
_ -> True
cs_error
= fold2St check_whether_module_imports_itself expl_imp_indices mod_indices cs.cs_error
- cs_error
- = case switch_import_syntax is_on_cycle False of
- True
- # ident_pos
- = { ip_ident = dcl_name_of_first_mod_in_component, ip_line = 1,
- ip_file = dcl_name_of_first_mod_in_component.id_name }
- cs_error
- = pushErrorAdmin ident_pos cs_error
- cs_error
- = checkError
- "cyclic module dependencies not allowed in conjunction with Clean 1.3 import syntax" ""
- cs_error
- -> popErrorAdmin cs_error
- _
- -> cs_error
- cs
- = { cs & cs_error = cs_error }
+ cs = { cs & cs_error = cs_error }
| not cs.cs_error.ea_ok
-> (component_nr-1, expl_imp_infos, dcl_modules, icl_functions, macro_defs, heaps, cs)
# (expl_imp_infos, dcl_modules, cs)
@@ -2040,9 +2022,7 @@ checkDclComponent components_array super_components expl_imp_indices mod_indices
# (dcls_local_for_import, dcl_modules)
= dcl_modules![mod_index].dcl_declared.dcls_local_for_import
(dcl_modules, expl_imp_infos, cs_symbol_table)
- = foldlArraySt ((switch_import_syntax
- update_expl_imp_for_marked_symbol
- update_expl_imp_for_marked_local_symbol) mod_index)
+ = foldlArraySt (update_expl_imp_for_marked_local_symbol mod_index)
dcls_local_for_import (dcl_modules, expl_imp_infos, cs_symbol_table)
= (expl_imp_infos, dcl_modules, cs_symbol_table)
@@ -3090,58 +3070,9 @@ addImportedSymbolsToSymbolTable importing_mod opt_macro_range modules_in_compone
# (not_already_imported, cs)
= add_declaration_to_symbol_table opt_dcl_macro_range declaration importing_mod cs
| not_already_imported
- # (consequence_declarations, dcl_modules, cs)
- = switch_import_syntax
- (add_consequences_to_symbol_table importing_mod declaration dcl_modules cs)
- ([], dcl_modules, cs)
- = (consequence_declarations++[declaration:decls_accu], dcl_modules, cs)
+ = ([declaration:decls_accu], dcl_modules, cs)
= (decls_accu, dcl_modules, cs)
- // this function is for old syntax only
- add_consequences_to_symbol_table _ (Declaration {decl_kind=STE_FunctionOrMacro _}) dcl_modules cs
- = ([], dcl_modules, cs)
- add_consequences_to_symbol_table importing_mod (Declaration {decl_index, decl_kind=STE_Imported ste_kind mod_index}) dcl_modules cs
- = add_consequences importing_mod decl_index ste_kind mod_index dcl_modules cs
- where
- add_consequences _ decl_index STE_Type mod_index dcl_modules cs
- # (td=:{td_rhs}, dcl_modules)
- = dcl_modules![mod_index].dcl_common.com_type_defs.[decl_index]
- = case td_rhs of
- RecordType {rt_fields}
- -> foldlArraySt (add_field importing_mod mod_index) rt_fields ([], dcl_modules, cs)
- _
- -> ([], dcl_modules, cs)
- add_consequences importing_mod decl_index STE_Class mod_index dcl_modules cs
- # (cd=:{class_members}, dcl_modules)
- = dcl_modules![mod_index].dcl_common.com_class_defs.[decl_index]
- = foldlArraySt (add_member importing_mod mod_index) class_members ([], dcl_modules, cs)
- add_consequences _ decl_index _ mod_index dcl_modules cs
- = ([], dcl_modules, cs)
-
- add_field importing_mod mod_index {fs_index} (declarations_accu, dcl_modules, cs)
- # (sd=:{sd_ident, sd_field, sd_pos}, dcl_modules)
- = dcl_modules![mod_index].dcl_common.com_selector_defs.[fs_index]
- declaration
- = Declaration { decl_ident = sd_field, decl_pos = sd_pos,
- decl_kind = STE_Imported (STE_Field sd_ident) mod_index, decl_index = fs_index }
- (is_new, cs)
- = add_declaration_to_symbol_table No declaration importing_mod cs
- | is_new
- = ([declaration:declarations_accu], dcl_modules, cs)
- = (declarations_accu, dcl_modules, cs)
-
- add_member importing_mod mod_index {ds_ident, ds_index} (declarations_accu, dcl_modules, cs)
- # (sd=:{me_ident, me_pos}, dcl_modules)
- = dcl_modules![mod_index].dcl_common.com_member_defs.[ds_index]
- declaration
- = Declaration { decl_ident = me_ident, decl_pos = me_pos,
- decl_kind = STE_Imported STE_Member mod_index, decl_index = ds_index }
- (is_new, cs)
- = add_declaration_to_symbol_table No declaration importing_mod cs
- | is_new
- = ([declaration:declarations_accu], dcl_modules, cs)
- = (declarations_accu, dcl_modules, cs)
-
add_declaration_to_symbol_table opt_dcl_macro_range (Declaration {decl_kind=STE_FunctionOrMacro _, decl_ident, decl_index}) _ cs
= addImportedFunctionOrMacro opt_dcl_macro_range decl_ident decl_index cs
add_declaration_to_symbol_table yes_for_icl_module (Declaration {decl_kind=decl_kind=:STE_Imported def_kind def_mod, decl_ident, decl_index, decl_pos}) importing_mod cs
@@ -3152,16 +3083,6 @@ updateExplImpInfo :: [Int] Index {!Declaration} {!Declaration} u:{#DclModule} {!
updateExplImpInfo super_components mod_index dcls_import dcls_local_for_import dcl_modules expl_imp_infos cs_symbol_table
# (changed_symbols, (expl_imp_infos, cs_symbol_table))
= mapSt markExplImpSymbols super_components (expl_imp_infos, cs_symbol_table)
-
- cs_symbol_table
- = switch_import_syntax
- (foldlArraySt opt_store_instance_with_class_symbol dcls_local_for_import cs_symbol_table)
- cs_symbol_table
- cs_symbol_table
- = switch_import_syntax
- (foldlArraySt opt_store_instance_with_class_symbol dcls_import cs_symbol_table)
- cs_symbol_table
-
(dcl_modules, expl_imp_infos, cs_symbol_table)
= update_expl_imp_for_marked_symbols mod_index dcls_local_for_import (dcl_modules, expl_imp_infos, cs_symbol_table)
(dcl_modules, expl_imp_infos, cs_symbol_table)
@@ -3176,40 +3097,21 @@ updateExplImpInfoForCachedModule super_components mod_index dcls_import dcls_loc
# (changed_symbols, (expl_imp_infos, cs_symbol_table))
= mapSt markExplImpSymbols super_components (expl_imp_infos, cs_symbol_table)
- dcl_modules13 = dcl_modules
- cs_symbol_table13 = cs_symbol_table
-
dcl_modules__cs_symbol_table = mark_belongings_of_expl_imp_symbols dcls_local_for_import (dcl_modules, cs_symbol_table)
(dcl_modules, cs_symbol_table) = mark_belongings_of_expl_imp_symbols dcls_import dcl_modules__cs_symbol_table
cs_symbol_table = mark_belongings_of_expl_imp_symbols_as_exported dcls_local_for_import cs_symbol_table
cs_symbol_table = mark_belongings_of_expl_imp_symbols_as_exported dcls_import cs_symbol_table
- cs_symbol_table = switch_import_syntax cs_symbol_table13 cs_symbol_table
- dcl_modules = switch_import_syntax dcl_modules13 dcl_modules
-
- cs_symbol_table
- = switch_import_syntax
- (foldlArraySt opt_store_instance_with_class_symbol dcls_local_for_import cs_symbol_table)
- cs_symbol_table
- cs_symbol_table
- = switch_import_syntax
- (foldlArraySt opt_store_instance_with_class_symbol dcls_import cs_symbol_table)
- cs_symbol_table
-
(dcl_modules, expl_imp_infos, cs_symbol_table)
= update_expl_imp_for_marked_symbols mod_index dcls_local_for_import (dcl_modules, expl_imp_infos, cs_symbol_table)
(dcl_modules, expl_imp_infos, cs_symbol_table)
= update_expl_imp_for_marked_symbols mod_index dcls_import (dcl_modules, expl_imp_infos, cs_symbol_table)
dcl_modules__cs_symbol_table
- = switch_import_syntax
+ = unmark_belongings_of_expl_imp_symbols dcls_local_for_import (dcl_modules, cs_symbol_table)
(dcl_modules, cs_symbol_table)
- (unmark_belongings_of_expl_imp_symbols dcls_local_for_import (dcl_modules, cs_symbol_table))
- (dcl_modules, cs_symbol_table)
- = switch_import_syntax
- dcl_modules__cs_symbol_table
- (unmark_belongings_of_expl_imp_symbols dcls_import dcl_modules__cs_symbol_table)
+ = unmark_belongings_of_expl_imp_symbols dcls_import dcl_modules__cs_symbol_table
cs_symbol_table = foldSt (\l cs_symbol_table->foldSt restoreHeap l cs_symbol_table) changed_symbols cs_symbol_table
= (expl_imp_infos, dcl_modules, cs_symbol_table)
@@ -3295,7 +3197,7 @@ ste_kind_to_string ste_kind = case ste_kind of
-> "STE_Class"
STE_Member
-> "STE_Member"
- STE_Instance _
+ STE_Instance
-> "STE_Instance"
STE_Variable _
-> "STE_Variable"
@@ -3330,14 +3232,6 @@ ste_kind_to_string ste_kind = case ste_kind of
STE_BelongingSymbol _
-> "STE_BelongingSymbol"
*/
-
-opt_store_instance_with_class_symbol decl=:(Declaration {decl_kind=STE_Imported (STE_Instance class_ident) _}) cs_symbol_table
- /* This function is only for old import syntax.
- All declared instances for a class have to be collected
- */
- = optStoreInstanceWithClassSymbol decl class_ident cs_symbol_table
-opt_store_instance_with_class_symbol _ cs_symbol_table
- = cs_symbol_table
update_expl_imp_for_marked_symbols mod_index decls (dcl_modules, expl_imp_infos, cs_symbol_table)
= foldlArraySt (update_expl_imp_for_marked_symbol mod_index) decls (dcl_modules, expl_imp_infos, cs_symbol_table)
diff --git a/frontend/checksupport.icl b/frontend/checksupport.icl
index 97e85b8..0c856f4 100644
--- a/frontend/checksupport.icl
+++ b/frontend/checksupport.icl
@@ -17,7 +17,7 @@ where
toInt STE_Generic = cGenericDefs
toInt STE_GenericCase = cGenericCaseDefs
toInt STE_Member = cMemberDefs
- toInt (STE_Instance _) = cInstanceDefs
+ toInt STE_Instance = cInstanceDefs
toInt STE_DclFunction = cFunctionDefs
toInt (STE_FunctionOrMacro _) = cMacroDefs
toInt (STE_DclMacroOrLocalMacroFunction _)= cMacroDefs
diff --git a/frontend/compilerSwitches.dcl b/frontend/compilerSwitches.dcl
index 7e8c2cc..00cab48 100644
--- a/frontend/compilerSwitches.dcl
+++ b/frontend/compilerSwitches.dcl
@@ -1,8 +1,5 @@
definition module compilerSwitches
-switch_import_syntax one_point_three two_point_zero :== two_point_zero
- /* when finally removing this switch also remove the argument of STE_Instance and ID_OldSyntax */
-
SwitchPreprocessor preprocessor no_preprocessor :== preprocessor
SwitchGenerics on off :== on
diff --git a/frontend/explicitimports.dcl b/frontend/explicitimports.dcl
index 3dfa47a..4d4483c 100644
--- a/frontend/explicitimports.dcl
+++ b/frontend/explicitimports.dcl
@@ -19,8 +19,6 @@ markExplImpSymbols :: !Int !*(!*{!*{!u:ExplImpInfo}}, !*SymbolTable)
updateExplImpForMarkedSymbol :: !Index !Declaration !SymbolTableEntry !u:{#DclModule} !{!{!*ExplImpInfo}} !*SymbolTable
-> (!u:{#DclModule}, !{!{!.ExplImpInfo}}, !.SymbolTable)
-optStoreInstanceWithClassSymbol :: Declaration !Ident !*SymbolTable -> .SymbolTable
-
solveExplicitImports :: !(IntKeyHashtable [(Int,Position,[ImportNrAndIdents])]) !{#Int} !Index
!*(!v:{#DclModule},!*{#Int},!{!*ExplImpInfo},!*CheckState)
-> (!.SolvedImports,! (!v:{#DclModule},!.{#Int},!{!.ExplImpInfo},!.CheckState))
diff --git a/frontend/explicitimports.icl b/frontend/explicitimports.icl
index 593e8b4..3d1909a 100644
--- a/frontend/explicitimports.icl
+++ b/frontend/explicitimports.icl
@@ -80,21 +80,6 @@ addExplImpInfo mod_index decl instances { cai_component_nr, cai_index } (dcl_mod
, cs_symbol_table
)
-optStoreInstanceWithClassSymbol :: Declaration !Ident !*SymbolTable -> .SymbolTable
-optStoreInstanceWithClassSymbol decl class_ident cs_symbol_table
- // this function is only for old syntax
- | switch_import_syntax False True
- = cs_symbol_table
- # (class_ste, cs_symbol_table)
- = readPtr class_ident.id_info cs_symbol_table
- = case class_ste.ste_kind of
- STE_ExplImpComponentNrs component_numbers inst_indices_accu
- -> writePtr class_ident.id_info
- { class_ste & ste_kind = STE_ExplImpComponentNrs component_numbers [decl:inst_indices_accu]}
- cs_symbol_table
- _
- -> cs_symbol_table
-
foldlBelongingSymbols f bs st
:== case bs of
BS_Constructors constructors
@@ -143,7 +128,7 @@ solveExplicitImports expl_imp_indices_ikh modules_in_component_set importing_mod
imported_symbols
([], [], visited_modules, expl_imp_info)
(expl_imp_info, cs_error)
- = (switch_import_syntax check_triples check_singles position) successes imported_symbols
+ = check_singles position successes imported_symbols
(expl_imp_info, cs.cs_error)
(decl_accu, dcl_modules, visited_modules, expl_imp_info, cs)
= foldSt (solve_belonging position expl_imp_indices_ikh modules_in_component_set importing_mod)
@@ -281,9 +266,7 @@ solveExplicitImports expl_imp_indices_ikh modules_in_component_set importing_mod
eii_declaring_modules (bitvectResetAll visited_modules)
= case opt_decl of
Yes di=:{di_decl, di_instances}
- | switch_import_syntax
- True
- ( case di_decl of
+ | ( case di_decl of
Declaration {decl_kind}
-> case decl_kind of
STE_Imported STE_Member _
@@ -396,15 +379,6 @@ solveExplicitImports expl_imp_indices_ikh modules_in_component_set importing_mod
= True
= is_member belong_ident t
- check_triples position [False, False, False: t1] [imported_symbol, _, _: t2] (expl_imp_info, cs_error)
- # (expl_imp_info, cs_error)
- = give_error position imported_symbol (expl_imp_info, cs_error)
- = check_triples position t1 t2 (expl_imp_info, cs_error)
- check_triples position [_, _, _: t1] [_, _, _: t2] (expl_imp_info, cs_error)
- = check_triples position t1 t2 (expl_imp_info, cs_error)
- check_triples position [] [] (expl_imp_info, cs_error)
- = (expl_imp_info, cs_error)
-
check_singles position [False: t1] [imported_symbol: t2] (expl_imp_info, cs_error)
# (expl_imp_info, cs_error)
= give_error position imported_symbol (expl_imp_info, cs_error)
@@ -421,10 +395,7 @@ solveExplicitImports expl_imp_indices_ikh modules_in_component_set importing_mod
= pushErrorAdmin (newPosition import_ident position) cs_error
cs_error
= checkError eii_ident
- (switch_import_syntax
- "not exported by the specified module"
- ("not exported as a "+++impDeclToNameSpaceString ini_imp_decl
- +++" by the specified module"))
+ ("not exported as a "+++impDeclToNameSpaceString ini_imp_decl +++" by the specified module")
cs_error
= (expl_imp_info, popErrorAdmin cs_error)
@@ -507,7 +478,7 @@ checkExplicitImportCompleteness dcls_explicit dcl_modules icl_functions macro_de
= check_completeness dcl_common.com_class_defs.[decl_index] cci ccs
continuation STE_Member dcl_common dcl_functions cci ccs
= check_completeness dcl_common.com_member_defs.[decl_index] cci ccs
- continuation (STE_Instance _) dcl_common dcl_functions cci ccs
+ continuation STE_Instance dcl_common dcl_functions cci ccs
= check_completeness dcl_common.com_instance_defs.[decl_index] cci ccs
continuation STE_DclFunction dcl_common dcl_functions cci ccs
= check_completeness dcl_functions.[decl_index] cci ccs
@@ -536,7 +507,7 @@ instance toString STE_Kind where
toString STE_Class = "class"
toString STE_Member = "class member"
toString STE_Generic = "generic" //AA
- toString (STE_Instance _) = "instance"
+ toString STE_Instance = "instance"
toString ste = "<<unknown symbol kind>>"
check_whether_ident_is_imported :: !Ident !STE_Kind !CheckCompletenessInputBox !*CheckCompletenessStateBox
diff --git a/frontend/parse.icl b/frontend/parse.icl
index 46c2377..14a80ab 100644
--- a/frontend/parse.icl
+++ b/frontend/parse.icl
@@ -1139,24 +1139,6 @@ instance want ImportDeclaration
where
want pState
# (token, pState) = nextToken GeneralContext pState
-// MW5..
- = (switch_import_syntax want_1_3_import_declaration want_2_0_import_declaration) token pState
-
-want_1_3_import_declaration token pState
- = case token of
- IdentToken name
- # (fun_id, pState) = stringToIdent name IC_Expression pState
- (type_id, pState) = stringToIdent name IC_Type pState
- (class_id, pState) = stringToIdent name IC_Class pState
- -> (ID_OldSyntax [fun_id, type_id, class_id], pState)
- token
- # (fun_id, pState) = stringToIdent "dummy" IC_Expression pState
- -> ( ID_Function { ii_ident = fun_id, ii_extended = False }
- , parseError "from import" (Yes token) "imported item" pState
- )
-
-want_2_0_import_declaration token pState
-// ..MW5
= case token of
DoubleColonToken
# (name, pState) = wantConstructorName "import type" pState
diff --git a/frontend/syntax.dcl b/frontend/syntax.dcl
index 479374e..cb88692 100644
--- a/frontend/syntax.dcl
+++ b/frontend/syntax.dcl
@@ -43,7 +43,7 @@ instance == FunctionOrMacroIndex
| STE_Member
| STE_Generic // AA
| STE_GenericCase // AA
- | STE_Instance !Ident // argument: the class (used in explicitimports (1.3 syntax only))
+ | STE_Instance
| STE_Variable !VarInfoPtr
| STE_TypeVariable !TypeVarInfoPtr
| STE_TypeAttribute !AttrVarInfoPtr
@@ -397,7 +397,6 @@ instance toString (Import from_symbol), AttributeVar, TypeAttribute, Annotation
| ID_Type !ImportedIdent !(Optional [ImportedIdent])
| ID_Record !ImportedIdent !(Optional [ImportedIdent])
| ID_Instance !ImportedIdent !Ident !(![Type],![TypeContext])
- | ID_OldSyntax ![Ident]
cIsImportedLibrary :== True
cIsImportedObject :== False
diff --git a/frontend/syntax.icl b/frontend/syntax.icl
index 2c1e91f..6c88232 100644
--- a/frontend/syntax.icl
+++ b/frontend/syntax.icl
@@ -906,7 +906,7 @@ where
STE_Member
= file <<< "STE_Member"
(<<<) file
- (STE_Instance _)
+ STE_Instance
= file <<< "STE_Instance"
(<<<) file
(STE_Variable _)
diff --git a/frontend/type.icl b/frontend/type.icl
index f29bbf5..f318cfb 100644
--- a/frontend/type.icl
+++ b/frontend/type.icl
@@ -2261,7 +2261,7 @@ where
collect_imported_instances imports common_defs dummy error class_instances type_var_heap td_infos
= foldSt (collect_imported_instance common_defs) imports (dummy, error, class_instances, type_var_heap, td_infos)
- collect_imported_instance common_defs (Declaration {decl_kind = STE_Imported (STE_Instance _) mod_index, decl_index }) state
+ collect_imported_instance common_defs (Declaration {decl_kind = STE_Imported STE_Instance mod_index, decl_index }) state
= update_instances_of_class common_defs mod_index decl_index state
collect_imported_instance common_defs _ state
= state