aboutsummaryrefslogtreecommitdiff
path: root/frontend/syntax.icl
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/syntax.icl')
-rw-r--r--frontend/syntax.icl6
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 :==