aboutsummaryrefslogtreecommitdiff
path: root/frontend/syntax.dcl
diff options
context:
space:
mode:
authorjohnvg2011-03-21 16:40:59 +0000
committerjohnvg2011-03-21 16:40:59 +0000
commitf392a7a26e409b771d10544eb370b68861a819b5 (patch)
treeb997576683c10974d749eccec9484ce036335fab /frontend/syntax.dcl
parentremove unused field td_context from type TypeDef (diff)
optimize adapters for generic functions using algebraic types which have
constructors with only type variable arguments occurring at most once, these types can be optimized if they occur as an argument or result, or as an argument of such a type, of a generic function (and a generic variable is used by the type) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1886 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/syntax.dcl')
-rw-r--r--frontend/syntax.dcl7
1 files changed, 4 insertions, 3 deletions
diff --git a/frontend/syntax.dcl b/frontend/syntax.dcl
index 295e60b..851125e 100644
--- a/frontend/syntax.dcl
+++ b/frontend/syntax.dcl
@@ -551,12 +551,13 @@ NoGlobalIndex :== {gi_module=NoIndex,gi_index=NoIndex}
| GTSCons DefinedSymbol GenTypeStruct
| GTSField DefinedSymbol GenTypeStruct
| GTSObject DefinedSymbol GenTypeStruct
- | GTSE
+ | GTSPair !GenTypeStruct !GenTypeStruct // for optimizing bimaps
+ | GTSEither !GenTypeStruct !GenTypeStruct // for optimizing bimaps
| GTSArrow GenTypeStruct GenTypeStruct // for optimizing bimaps
+ | GTSE
| GTSAppConsBimapKindConst // for optimizing bimaps
| GTSAppBimap TypeKind [GenTypeStruct] // for optimizing bimaps
- | GTSPair !GenTypeStruct !GenTypeStruct // for optimizing bimaps
- | GTSEither !GenTypeStruct !GenTypeStruct // for optimizing bimaps
+ | GTSAppConsSimpleType !(Global Index) !TypeKind ![GenTypeStruct] // for optimizing bimaps
:: GenericTypeRep =
{ gtr_type :: GenTypeStruct // generic structure type