%}
%{{
module U_tree where
-import Ubiq -- debugging consistency check
+
+#include "HsVersions.h"
+
import UgenUtil
import U_constr ( U_constr ) -- interface only
import U_binding
-import U_coresyn ( U_coresyn ) -- interface only
-import U_hpragma ( U_hpragma ) -- interface only
import U_list
import U_literal
import U_maybe
ghexplist : maybe; /* Maybe [entity] */
ghfixes : list; /* [fixop] */
ghmodlist : binding;
+ ghversion : long;
ghmodline : long; >;
- fixop : < gfixop : unkId;
+ fixop : < gfixop : qid;
gfixinfx : long;
- gfixprec : long; >;
+ gfixprec : long;
+ gfixline : long; >;
ident : < gident : qid; >;
lit : < glit : literal; >;
infixap : < ginffun : qid;
ginfarg1 : tree;
ginfarg2 : tree; >;
- negate : < gnexp : tree;
- gnxxx1 : VOID_STAR;
- gnxxx2 : VOID_STAR; >;
- /*
- infixap and negate have the same size
- so they can be rearranged in precparse
- */
+ negate : < gnexp : tree; >;
lambda : < glampats : list;
glamexpr : tree;
as : < gasid : qid;
gase : tree; >;
lazyp : < glazyp : tree; >;
+ plusp : < gplusp : qid;
+ gplusi : literal; >;
wildp : < >;
-
restr : < grestre : tree;
grestrt : ttype; >;
tuple : < gtuplelist : list; >;
+ utuple : < gutuplelist : list; >;
llist : < gllist : list; >;
eenum : < gefrom : tree;
gestep : maybe;