diff options
author | johnvg | 2007-09-11 11:10:44 +0000 |
---|---|---|
committer | johnvg | 2007-09-11 11:10:44 +0000 |
commit | 8eeaab93970820ff9fce74e322175daea10b302a (patch) | |
tree | c50aab143e8ca52b71e61e1348eb92f16d713645 /frontend/syntax.dcl | |
parent | rename NormalSelectorUniqueElementResult as UniqueSelectorUniqueElementResult, (diff) |
make a![i] unique in yielded element if the yielded array is used only by
{a & [i]= } expressions, instead of [i] a sequence of record and array
selections may be used. ending with an array selection
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1687 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/syntax.dcl')
-rw-r--r-- | frontend/syntax.dcl | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/frontend/syntax.dcl b/frontend/syntax.dcl index 3bdedff..61715b4 100644 --- a/frontend/syntax.dcl +++ b/frontend/syntax.dcl @@ -558,7 +558,7 @@ NoGlobalIndex :== {gi_module=NoIndex,gi_index=NoIndex} :: TypeDefInfos :== {# .{# TypeDefInfo}} :: FunType = - { ft_ident :: !Ident + { ft_ident :: !Ident , ft_arity :: !Int , ft_priority :: !Priority , ft_type :: !SymbolType @@ -685,9 +685,14 @@ from convertDynamics import :: TypeCodeVariableInfo, :: DynamicValueAliasInfo VI_Occurrence !Occurrence | VI_UsedVar !Ident | VI_Expression !Expression | VI_Variable !Ident !VarInfoPtr | VI_LiftedVariable !VarInfoPtr | VI_Count !Int /* the reference count of a variable */ !Bool /* true if the variable is global, false otherwise */ | + VI_Ref !Bool /* true if the variable is global, false otherwise */ | VI_AccVar !ConsClass !ArgumentPosition /* used during fusion to determine accumulating parameters of functions */ | VI_Alias !BoundVar /* used for resolving aliases just before type checking (in transform) */ | /* used during elimination and lifting of cases */ + VI_RefFromTupleSel0 !Int | + VI_RefFromArrayUpdate !Int ![Selection] | + VI_RefFromArrayUpdateToTupleSelector2 !Int ![Selection] !VarInfoPtr | + VI_RefFromArrayUpdateOfTupleElem2 !Int ![Selection] | VI_FreeVar !Ident !VarInfoPtr !Int !AType | VI_BoundVar !AType | VI_LocalVar | VI_ClassVar !Ident !VarInfoPtr !Int | /* to hold dictionary variables during overloading */ VI_ForwardClassVar !VarInfoPtr | /* to hold the dictionary variable generated during overloading */ |