diff options
Diffstat (limited to 'frontend/syntax.icl')
-rw-r--r-- | frontend/syntax.icl | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/frontend/syntax.icl b/frontend/syntax.icl index 64c62b4..3b95cb9 100644 --- a/frontend/syntax.icl +++ b/frontend/syntax.icl @@ -260,6 +260,7 @@ cNameLocationDependent :== True , gen_type :: !GenericType , gen_pos :: !Position , gen_kinds_ptr :: !TypeVarInfoPtr // hack: contains all used kinds + , gen_cons_ptr :: !TypeVarInfoPtr // hack: cons instance function , gen_classes :: !GenericClassInfos // generated classes , gen_isomap :: !DefinedSymbol // isomap function } @@ -315,6 +316,7 @@ addGenericKind generic_def=:{gen_name, gen_classes} kind , ins_pos :: !Position , ins_is_generic :: !Bool //AA , ins_generate :: !Bool //AA + , ins_partial :: !Bool //AA , ins_generic :: !Global Index //AA } @@ -837,6 +839,7 @@ cNotVarNumber :== -1 | TVI_TypeCode !TypeCodeExpression | TVI_CPSLocalTypeVar !Int /* MdM - the index of the variable as generated by the theorem prover */ | TVI_Kinds ![TypeKind] // AA: used to collect kinds during checking + | TVI_ConsInstance !DefinedSymbol //AA: generic cons instance function | TVI_Normalized !Int /* MV - position of type variable in its definition */ :: TypeVarInfoPtr :== Ptr TypeVarInfo @@ -2093,7 +2096,8 @@ ParsedInstanceToClassInstance pi members :== it_context = pi.pi_context }, ins_members = members, ins_specials = pi.pi_specials, ins_pos = pi.pi_pos, /*AA*/ ins_is_generic = False, - ins_generate = pi.pi_generate, + ins_generate = pi.pi_generate, + ins_partial = False, ins_generic = {glob_module = NoIndex, glob_object = NoIndex}} MakeTypeDef name lhs rhs attr contexts pos :== |