[project @ 1996-01-12 11:35:21 by partain]
authorpartain <unknown>
Fri, 12 Jan 1996 11:37:58 +0000 (11:37 +0000)
committerpartain <unknown>
Fri, 12 Jan 1996 11:37:58 +0000 (11:37 +0000)
WDP 0.27 tidying up

32 files changed:
configure.in
ghc/PATCHLEVEL
ghc/compiler/yaccParser/U_binding.hs
ghc/compiler/yaccParser/U_finfot.hs
ghc/compiler/yaccParser/atype.h
ghc/compiler/yaccParser/binding.c
ghc/compiler/yaccParser/binding.h
ghc/compiler/yaccParser/coresyn.c
ghc/compiler/yaccParser/coresyn.h
ghc/compiler/yaccParser/entidt.h
ghc/compiler/yaccParser/finfot.c
ghc/compiler/yaccParser/finfot.h
ghc/compiler/yaccParser/hpragma.c
ghc/compiler/yaccParser/hpragma.h
ghc/compiler/yaccParser/hslexer.c
ghc/compiler/yaccParser/hsparser.tab.c
ghc/compiler/yaccParser/list.c
ghc/compiler/yaccParser/list.h
ghc/compiler/yaccParser/literal.h
ghc/compiler/yaccParser/pbinding.h
ghc/compiler/yaccParser/tree.c
ghc/compiler/yaccParser/tree.h
ghc/compiler/yaccParser/ttype.c
ghc/compiler/yaccParser/ttype.h
ghc/driver/driver.lit
ghc/includes/root.lit
ghc/includes/sparc-sun-sunos4.h [deleted file]
ghc/includes/stgio.h
ghc/runtime/io/env.lc
ghc/runtime/io/execvpe.lc
ghc/runtime/main/RtsFlags.lc
ghc/runtime/storage/SMcompacting.h [deleted file]

index cfadc77..c3f058c 100644 (file)
@@ -1335,9 +1335,9 @@ case $WithGhcHc in
            ;;
     ghc* | glhc* )
            WithGhcHcType='HC_GLASGOW_GHC'
            ;;
     ghc* | glhc* )
            WithGhcHcType='HC_GLASGOW_GHC'
-            AC_CHECK_PROG(have_ghc,$WithGhcHc,$ac_dir/$ac_word)
-            if test -z "$have_ghc"; then
-                echo "Can't find Glasgow Haskell to compile with: $WithGhcHc"
+            AC_CHECK_PROG(have_ghc_ghc,$WithGhcHc,$ac_dir/$ac_word)
+            if test -z "$have_ghc_ghc"; then
+                echo "Can't find Glasgow Haskell to compile GHC with: $WithGhcHc"
                exit 1
            else
                 touch conftest.o
                exit 1
            else
                 touch conftest.o
@@ -1589,9 +1589,9 @@ case $WithHappyHc in
            ;;
     ghc* | glhc* )
            WithHappyHcType='HC_GLASGOW_GHC'
            ;;
     ghc* | glhc* )
            WithHappyHcType='HC_GLASGOW_GHC'
-            AC_CHECK_PROG(have_ghc,$WithHappyHc,$ac_dir/$ac_word)
-            if test -z "$have_ghc"; then
-                echo "Can't find Glasgow Haskell to compile with: $WithHappyHc"
+            AC_CHECK_PROG(have_ghc_happy,$WithHappyHc,$ac_dir/$ac_word)
+            if test -z "$have_ghc_happy"; then
+                echo "Can't find Glasgow Haskell to compile Happy with: $WithHappyHc"
                exit 1
             fi
             ;;
                exit 1
             fi
             ;;
@@ -1664,9 +1664,9 @@ case $WithHaggisHc in
            ;;
     ghc* | glhc* )
            WithHaggisHcType='HC_GLASGOW_GHC'
            ;;
     ghc* | glhc* )
            WithHaggisHcType='HC_GLASGOW_GHC'
-            AC_CHECK_PROG(have_ghc,$WithHaggisHc,$ac_dir/$ac_word)
-            if test -z "$have_ghc"; then
-                echo "Can't find Glasgow Haskell to compile with: $WithHaggisHc"
+            AC_CHECK_PROG(have_ghc_haggis,$WithHaggisHc,$ac_dir/$ac_word)
+            if test -z "$have_ghc_haggis"; then
+                echo "Can't find Glasgow Haskell to compile Haggis with: $WithHaggisHc"
                exit 1
             fi
             ;;
                exit 1
             fi
             ;;
@@ -1759,9 +1759,9 @@ case $WithNoFibHc in
            ;;
     ghc* | glhc* )
            WithNoFibHcType='HC_GLASGOW_GHC'
            ;;
     ghc* | glhc* )
            WithNoFibHcType='HC_GLASGOW_GHC'
-            AC_CHECK_PROG(have_ghc,$WithNoFibHc,$ac_dir/$ac_word)
-            if test -z "$have_ghc"; then
-                echo "Can't find Glasgow Haskell to compile with: $WithNoFibHc"
+            AC_CHECK_PROG(have_ghc_nofib,$WithNoFibHc,$ac_dir/$ac_word)
+            if test -z "$have_ghc_nofib"; then
+                echo "Can't find Glasgow Haskell to compile NoFib with: $WithNoFibHc"
                exit 1
             fi
             ;;
                exit 1
             fi
             ;;
@@ -1769,7 +1769,7 @@ case $WithNoFibHc in
            WithNoFibHcType='HC_CHALMERS_HBC'
             AC_CHECK_PROG(have_hbc,$WithNoFibHc,YES,NO)
             if test $have_hbc = 'NO' ; then
            WithNoFibHcType='HC_CHALMERS_HBC'
             AC_CHECK_PROG(have_hbc,$WithNoFibHc,YES,NO)
             if test $have_hbc = 'NO' ; then
-                echo "Can't find Chalmers HBC to compile with: $WithNoFibHc"
+                echo "Can't find Chalmers HBC to compile NoFib with: $WithNoFibHc"
                 exit 1
             fi
             ;;
                 exit 1
             fi
             ;;
@@ -1777,7 +1777,7 @@ case $WithNoFibHc in
            WithNoFibHcType='HC_ROJEMO_NHC'
             AC_CHECK_PROG(have_nhc,$WithNoFibHc,YES,NO)
             if test $have_nhc = 'NO' ; then
            WithNoFibHcType='HC_ROJEMO_NHC'
             AC_CHECK_PROG(have_nhc,$WithNoFibHc,YES,NO)
             if test $have_nhc = 'NO' ; then
-                echo "Can't find Niklas Rojemo's NHC to compile with: $WithNoFibHc"
+                echo "Can't find Niklas Rojemo's NHC to compile NoFib with: $WithNoFibHc"
                 exit 1
             fi
             ;;
                 exit 1
             fi
             ;;
index 9d06a81..936caf5 100644 (file)
@@ -1 +1 @@
-The Glamorous Glasgow Haskell Compiler, version 0.26, patchlevel 1
+The Glamorous Glasgow Haskell Compiler, version 0.27, patchlevel 0
index aafdda1..6ab8211 100644 (file)
@@ -9,7 +9,7 @@ import U_hpragma
 import U_list
 import U_literal       ( U_literal ) -- for interfaces only
 import U_ttype
 import U_list
 import U_literal       ( U_literal ) -- for interfaces only
 import U_ttype
-data U_binding = U_tbind U_list U_ttype U_list U_list U_long U_hpragma | U_nbind U_ttype U_ttype U_long U_hpragma | U_pbind U_list U_long | U_fbind U_list U_long | U_abind U_binding U_binding | U_lbind U_binding U_binding | U_ebind U_list U_binding U_long | U_hbind U_list U_binding U_long | U_ibind U_list U_unkId U_ttype U_binding U_long U_hpragma | U_dbind U_list U_long | U_cbind U_list U_ttype U_binding U_long U_hpragma | U_sbind U_list U_ttype U_long U_hpragma | U_mbind U_stringId U_list U_list U_long | U_nullbind | U_import U_stringId U_list U_list U_binding U_stringId U_long | U_hiding U_stringId U_list U_list U_binding U_stringId U_long | U_vspec_uprag U_unkId U_list U_long | U_vspec_ty_and_id U_ttype U_list | U_ispec_uprag U_unkId U_ttype U_long | U_inline_uprag U_unkId U_list U_long | U_deforest_uprag U_unkId U_long | U_magicuf_uprag U_unkId U_stringId U_long | U_abstract_uprag U_unkId U_long | U_dspec_uprag U_unkId U_list U_long 
+data U_binding = U_tbind U_list U_ttype U_list U_list U_long U_hpragma | U_nbind U_ttype U_ttype U_long U_hpragma | U_pbind U_list U_long | U_fbind U_list U_long | U_abind U_binding U_binding | U_ibind U_list U_unkId U_ttype U_binding U_long U_hpragma | U_dbind U_list U_long | U_cbind U_list U_ttype U_binding U_long U_hpragma | U_sbind U_list U_ttype U_long U_hpragma | U_mbind U_stringId U_list U_list U_long | U_nullbind | U_import U_stringId U_list U_list U_binding U_stringId U_long | U_hiding U_stringId U_list U_list U_binding U_stringId U_long | U_vspec_uprag U_unkId U_list U_long | U_vspec_ty_and_id U_ttype U_list | U_ispec_uprag U_unkId U_ttype U_long | U_inline_uprag U_unkId U_list U_long | U_deforest_uprag U_unkId U_long | U_magicuf_uprag U_unkId U_stringId U_long | U_abstract_uprag U_unkId U_long | U_dspec_uprag U_unkId U_list U_long 
 
 rdU_binding :: _Addr -> UgnM U_binding
 rdU_binding t
 
 rdU_binding :: _Addr -> UgnM U_binding
 rdU_binding t
@@ -56,28 +56,6 @@ rdU_binding t
        ioToUgnM (_ccall_ gabindsnd t) `thenUgn` \ x_gabindsnd ->
        rdU_binding x_gabindsnd `thenUgn` \ y_gabindsnd ->
        returnUgn (U_abind y_gabindfst y_gabindsnd)
        ioToUgnM (_ccall_ gabindsnd t) `thenUgn` \ x_gabindsnd ->
        rdU_binding x_gabindsnd `thenUgn` \ y_gabindsnd ->
        returnUgn (U_abind y_gabindfst y_gabindsnd)
-    else if tag == ``lbind'' then
-       ioToUgnM (_ccall_ glbindfst t) `thenUgn` \ x_glbindfst ->
-       rdU_binding x_glbindfst `thenUgn` \ y_glbindfst ->
-       ioToUgnM (_ccall_ glbindsnd t) `thenUgn` \ x_glbindsnd ->
-       rdU_binding x_glbindsnd `thenUgn` \ y_glbindsnd ->
-       returnUgn (U_lbind y_glbindfst y_glbindsnd)
-    else if tag == ``ebind'' then
-       ioToUgnM (_ccall_ gebindl t) `thenUgn` \ x_gebindl ->
-       rdU_list x_gebindl `thenUgn` \ y_gebindl ->
-       ioToUgnM (_ccall_ gebind t) `thenUgn` \ x_gebind ->
-       rdU_binding x_gebind `thenUgn` \ y_gebind ->
-       ioToUgnM (_ccall_ geline t) `thenUgn` \ x_geline ->
-       rdU_long x_geline `thenUgn` \ y_geline ->
-       returnUgn (U_ebind y_gebindl y_gebind y_geline)
-    else if tag == ``hbind'' then
-       ioToUgnM (_ccall_ ghbindl t) `thenUgn` \ x_ghbindl ->
-       rdU_list x_ghbindl `thenUgn` \ y_ghbindl ->
-       ioToUgnM (_ccall_ ghbind t) `thenUgn` \ x_ghbind ->
-       rdU_binding x_ghbind `thenUgn` \ y_ghbind ->
-       ioToUgnM (_ccall_ ghline t) `thenUgn` \ x_ghline ->
-       rdU_long x_ghline `thenUgn` \ y_ghline ->
-       returnUgn (U_hbind y_ghbindl y_ghbind y_ghline)
     else if tag == ``ibind'' then
        ioToUgnM (_ccall_ gibindc t) `thenUgn` \ x_gibindc ->
        rdU_list x_gibindc `thenUgn` \ y_gibindc ->
     else if tag == ``ibind'' then
        ioToUgnM (_ccall_ gibindc t) `thenUgn` \ x_gibindc ->
        rdU_list x_gibindc `thenUgn` \ y_gibindc ->
index c6b7ea0..15055df 100644 (file)
@@ -3,14 +3,12 @@
 module U_finfot where
 import UgenUtil
 import Util
 module U_finfot where
 import UgenUtil
 import Util
-data U_finfot = U_nofinfo | U_finfo U_stringId U_stringId 
+data U_finfot = U_finfo U_stringId U_stringId 
 
 rdU_finfot :: _Addr -> UgnM U_finfot
 rdU_finfot t
   = ioToUgnM (_ccall_ tfinfot t) `thenUgn` \ tag@(I# _) ->
 
 rdU_finfot :: _Addr -> UgnM U_finfot
 rdU_finfot t
   = ioToUgnM (_ccall_ tfinfot t) `thenUgn` \ tag@(I# _) ->
-    if tag == ``nofinfo'' then
-       returnUgn (U_nofinfo )
-    else if tag == ``finfo'' then
+    if tag == ``finfo'' then
        ioToUgnM (_ccall_ fi1 t) `thenUgn` \ x_fi1 ->
        rdU_stringId x_fi1 `thenUgn` \ y_fi1 ->
        ioToUgnM (_ccall_ fi2 t) `thenUgn` \ x_fi2 ->
        ioToUgnM (_ccall_ fi1 t) `thenUgn` \ x_fi1 ->
        rdU_stringId x_fi1 `thenUgn` \ y_fi1 ->
        ioToUgnM (_ccall_ fi2 t) `thenUgn` \ x_fi2 ->
index 49ef6bb..0651a70 100644 (file)
@@ -18,6 +18,7 @@ typedef enum {
 typedef struct { Tatype tag; } *atype;
 
 #ifdef __GNUC__
 typedef struct { Tatype tag; } *atype;
 
 #ifdef __GNUC__
+Tatype tatype(atype t);
 extern __inline__ Tatype tatype(atype t)
 {
        return(t -> tag);
 extern __inline__ Tatype tatype(atype t)
 {
        return(t -> tag);
@@ -36,6 +37,8 @@ struct Satc {
 extern atype mkatc PROTO((unkId, list, long));
 #ifdef __GNUC__
 
 extern atype mkatc PROTO((unkId, list, long));
 #ifdef __GNUC__
 
+unkId *Rgatcid PROTO((struct Satc *));
+
 extern __inline__ unkId *Rgatcid(struct Satc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgatcid(struct Satc *t)
 {
 #ifdef UGEN_DEBUG
@@ -51,6 +54,8 @@ extern unkId *Rgatcid PROTO((struct Satc *));
 #define gatcid(xyzxyz) (*Rgatcid((struct Satc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gatcid(xyzxyz) (*Rgatcid((struct Satc *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgatctypel PROTO((struct Satc *));
+
 extern __inline__ list *Rgatctypel(struct Satc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgatctypel(struct Satc *t)
 {
 #ifdef UGEN_DEBUG
@@ -66,6 +71,8 @@ extern list *Rgatctypel PROTO((struct Satc *));
 #define gatctypel(xyzxyz) (*Rgatctypel((struct Satc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gatctypel(xyzxyz) (*Rgatctypel((struct Satc *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgatcline PROTO((struct Satc *));
+
 extern __inline__ long *Rgatcline(struct Satc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgatcline(struct Satc *t)
 {
 #ifdef UGEN_DEBUG
index 20a82a3..6aa24ec 100644 (file)
@@ -252,132 +252,6 @@ binding *Rgabindsnd(t)
        return(& t -> Xgabindsnd);
 }
 
        return(& t -> Xgabindsnd);
 }
 
-/************** lbind ******************/
-
-binding mklbind(PPglbindfst, PPglbindsnd)
- binding PPglbindfst;
- binding PPglbindsnd;
-{
-       register struct Slbind *pp =
-               (struct Slbind *) malloc(sizeof(struct Slbind));
-       pp -> tag = lbind;
-       pp -> Xglbindfst = PPglbindfst;
-       pp -> Xglbindsnd = PPglbindsnd;
-       return((binding)pp);
-}
-
-binding *Rglbindfst(t)
- struct Slbind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != lbind)
-               fprintf(stderr,"glbindfst: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xglbindfst);
-}
-
-binding *Rglbindsnd(t)
- struct Slbind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != lbind)
-               fprintf(stderr,"glbindsnd: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xglbindsnd);
-}
-
-/************** ebind ******************/
-
-binding mkebind(PPgebindl, PPgebind, PPgeline)
- list PPgebindl;
- binding PPgebind;
- long PPgeline;
-{
-       register struct Sebind *pp =
-               (struct Sebind *) malloc(sizeof(struct Sebind));
-       pp -> tag = ebind;
-       pp -> Xgebindl = PPgebindl;
-       pp -> Xgebind = PPgebind;
-       pp -> Xgeline = PPgeline;
-       return((binding)pp);
-}
-
-list *Rgebindl(t)
- struct Sebind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != ebind)
-               fprintf(stderr,"gebindl: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xgebindl);
-}
-
-binding *Rgebind(t)
- struct Sebind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != ebind)
-               fprintf(stderr,"gebind: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xgebind);
-}
-
-long *Rgeline(t)
- struct Sebind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != ebind)
-               fprintf(stderr,"geline: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xgeline);
-}
-
-/************** hbind ******************/
-
-binding mkhbind(PPghbindl, PPghbind, PPghline)
- list PPghbindl;
- binding PPghbind;
- long PPghline;
-{
-       register struct Shbind *pp =
-               (struct Shbind *) malloc(sizeof(struct Shbind));
-       pp -> tag = hbind;
-       pp -> Xghbindl = PPghbindl;
-       pp -> Xghbind = PPghbind;
-       pp -> Xghline = PPghline;
-       return((binding)pp);
-}
-
-list *Rghbindl(t)
- struct Shbind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != hbind)
-               fprintf(stderr,"ghbindl: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xghbindl);
-}
-
-binding *Rghbind(t)
- struct Shbind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != hbind)
-               fprintf(stderr,"ghbind: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xghbind);
-}
-
-long *Rghline(t)
- struct Shbind *t;
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != hbind)
-               fprintf(stderr,"ghline: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xghline);
-}
-
 /************** ibind ******************/
 
 binding mkibind(PPgibindc, PPgibindid, PPgibindi, PPgibindw, PPgiline, PPgipragma)
 /************** ibind ******************/
 
 binding mkibind(PPgibindc, PPgibindid, PPgibindi, PPgibindw, PPgiline, PPgipragma)
@@ -682,7 +556,7 @@ long *Rgmline(t)
 
 /************** nullbind ******************/
 
 
 /************** nullbind ******************/
 
-binding mknullbind()
+binding mknullbind(void)
 {
        register struct Snullbind *pp =
                (struct Snullbind *) malloc(sizeof(struct Snullbind));
 {
        register struct Snullbind *pp =
                (struct Snullbind *) malloc(sizeof(struct Snullbind));
index add5394..7342d01 100644 (file)
@@ -17,9 +17,6 @@ typedef enum {
        pbind,
        fbind,
        abind,
        pbind,
        fbind,
        abind,
-       lbind,
-       ebind,
-       hbind,
        ibind,
        dbind,
        cbind,
        ibind,
        dbind,
        cbind,
@@ -41,6 +38,7 @@ typedef enum {
 typedef struct { Tbinding tag; } *binding;
 
 #ifdef __GNUC__
 typedef struct { Tbinding tag; } *binding;
 
 #ifdef __GNUC__
+Tbinding tbinding(binding t);
 extern __inline__ Tbinding tbinding(binding t)
 {
        return(t -> tag);
 extern __inline__ Tbinding tbinding(binding t)
 {
        return(t -> tag);
@@ -85,26 +83,6 @@ struct Sabind {
        binding Xgabindsnd;
 };
 
        binding Xgabindsnd;
 };
 
-struct Slbind {
-       Tbinding tag;
-       binding Xglbindfst;
-       binding Xglbindsnd;
-};
-
-struct Sebind {
-       Tbinding tag;
-       list Xgebindl;
-       binding Xgebind;
-       long Xgeline;
-};
-
-struct Shbind {
-       Tbinding tag;
-       list Xghbindl;
-       binding Xghbind;
-       long Xghline;
-};
-
 struct Sibind {
        Tbinding tag;
        list Xgibindc;
 struct Sibind {
        Tbinding tag;
        list Xgibindc;
@@ -226,6 +204,8 @@ struct Sdspec_uprag {
 extern binding mktbind PROTO((list, ttype, list, list, long, hpragma));
 #ifdef __GNUC__
 
 extern binding mktbind PROTO((list, ttype, list, list, long, hpragma));
 #ifdef __GNUC__
 
+list *Rgtbindc PROTO((struct Stbind *));
+
 extern __inline__ list *Rgtbindc(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgtbindc(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -241,6 +221,8 @@ extern list *Rgtbindc PROTO((struct Stbind *));
 #define gtbindc(xyzxyz) (*Rgtbindc((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtbindc(xyzxyz) (*Rgtbindc((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgtbindid PROTO((struct Stbind *));
+
 extern __inline__ ttype *Rgtbindid(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgtbindid(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -256,6 +238,8 @@ extern ttype *Rgtbindid PROTO((struct Stbind *));
 #define gtbindid(xyzxyz) (*Rgtbindid((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtbindid(xyzxyz) (*Rgtbindid((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgtbindl PROTO((struct Stbind *));
+
 extern __inline__ list *Rgtbindl(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgtbindl(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -271,6 +255,8 @@ extern list *Rgtbindl PROTO((struct Stbind *));
 #define gtbindl(xyzxyz) (*Rgtbindl((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtbindl(xyzxyz) (*Rgtbindl((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgtbindd PROTO((struct Stbind *));
+
 extern __inline__ list *Rgtbindd(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgtbindd(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -286,6 +272,8 @@ extern list *Rgtbindd PROTO((struct Stbind *));
 #define gtbindd(xyzxyz) (*Rgtbindd((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtbindd(xyzxyz) (*Rgtbindd((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgtline PROTO((struct Stbind *));
+
 extern __inline__ long *Rgtline(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgtline(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -301,6 +289,8 @@ extern long *Rgtline PROTO((struct Stbind *));
 #define gtline(xyzxyz) (*Rgtline((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtline(xyzxyz) (*Rgtline((struct Stbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgtpragma PROTO((struct Stbind *));
+
 extern __inline__ hpragma *Rgtpragma(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgtpragma(struct Stbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -318,6 +308,8 @@ extern hpragma *Rgtpragma PROTO((struct Stbind *));
 extern binding mknbind PROTO((ttype, ttype, long, hpragma));
 #ifdef __GNUC__
 
 extern binding mknbind PROTO((ttype, ttype, long, hpragma));
 #ifdef __GNUC__
 
+ttype *Rgnbindid PROTO((struct Snbind *));
+
 extern __inline__ ttype *Rgnbindid(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgnbindid(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -333,6 +325,8 @@ extern ttype *Rgnbindid PROTO((struct Snbind *));
 #define gnbindid(xyzxyz) (*Rgnbindid((struct Snbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gnbindid(xyzxyz) (*Rgnbindid((struct Snbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgnbindas PROTO((struct Snbind *));
+
 extern __inline__ ttype *Rgnbindas(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgnbindas(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -348,6 +342,8 @@ extern ttype *Rgnbindas PROTO((struct Snbind *));
 #define gnbindas(xyzxyz) (*Rgnbindas((struct Snbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gnbindas(xyzxyz) (*Rgnbindas((struct Snbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgnline PROTO((struct Snbind *));
+
 extern __inline__ long *Rgnline(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgnline(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -363,6 +359,8 @@ extern long *Rgnline PROTO((struct Snbind *));
 #define gnline(xyzxyz) (*Rgnline((struct Snbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gnline(xyzxyz) (*Rgnline((struct Snbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgnpragma PROTO((struct Snbind *));
+
 extern __inline__ hpragma *Rgnpragma(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgnpragma(struct Snbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -380,6 +378,8 @@ extern hpragma *Rgnpragma PROTO((struct Snbind *));
 extern binding mkpbind PROTO((list, long));
 #ifdef __GNUC__
 
 extern binding mkpbind PROTO((list, long));
 #ifdef __GNUC__
 
+list *Rgpbindl PROTO((struct Spbind *));
+
 extern __inline__ list *Rgpbindl(struct Spbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgpbindl(struct Spbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -395,6 +395,8 @@ extern list *Rgpbindl PROTO((struct Spbind *));
 #define gpbindl(xyzxyz) (*Rgpbindl((struct Spbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gpbindl(xyzxyz) (*Rgpbindl((struct Spbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgpline PROTO((struct Spbind *));
+
 extern __inline__ long *Rgpline(struct Spbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgpline(struct Spbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -412,6 +414,8 @@ extern long *Rgpline PROTO((struct Spbind *));
 extern binding mkfbind PROTO((list, long));
 #ifdef __GNUC__
 
 extern binding mkfbind PROTO((list, long));
 #ifdef __GNUC__
 
+list *Rgfbindl PROTO((struct Sfbind *));
+
 extern __inline__ list *Rgfbindl(struct Sfbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgfbindl(struct Sfbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -427,6 +431,8 @@ extern list *Rgfbindl PROTO((struct Sfbind *));
 #define gfbindl(xyzxyz) (*Rgfbindl((struct Sfbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gfbindl(xyzxyz) (*Rgfbindl((struct Sfbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgfline PROTO((struct Sfbind *));
+
 extern __inline__ long *Rgfline(struct Sfbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgfline(struct Sfbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -444,6 +450,8 @@ extern long *Rgfline PROTO((struct Sfbind *));
 extern binding mkabind PROTO((binding, binding));
 #ifdef __GNUC__
 
 extern binding mkabind PROTO((binding, binding));
 #ifdef __GNUC__
 
+binding *Rgabindfst PROTO((struct Sabind *));
+
 extern __inline__ binding *Rgabindfst(struct Sabind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rgabindfst(struct Sabind *t)
 {
 #ifdef UGEN_DEBUG
@@ -459,6 +467,8 @@ extern binding *Rgabindfst PROTO((struct Sabind *));
 #define gabindfst(xyzxyz) (*Rgabindfst((struct Sabind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gabindfst(xyzxyz) (*Rgabindfst((struct Sabind *) (xyzxyz)))
 #ifdef __GNUC__
 
+binding *Rgabindsnd PROTO((struct Sabind *));
+
 extern __inline__ binding *Rgabindsnd(struct Sabind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rgabindsnd(struct Sabind *t)
 {
 #ifdef UGEN_DEBUG
@@ -473,135 +483,11 @@ extern binding *Rgabindsnd PROTO((struct Sabind *));
 
 #define gabindsnd(xyzxyz) (*Rgabindsnd((struct Sabind *) (xyzxyz)))
 
 
 #define gabindsnd(xyzxyz) (*Rgabindsnd((struct Sabind *) (xyzxyz)))
 
-extern binding mklbind PROTO((binding, binding));
-#ifdef __GNUC__
-
-extern __inline__ binding *Rglbindfst(struct Slbind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != lbind)
-               fprintf(stderr,"glbindfst: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xglbindfst);
-}
-#else  /* ! __GNUC__ */
-extern binding *Rglbindfst PROTO((struct Slbind *));
-#endif /* ! __GNUC__ */
-
-#define glbindfst(xyzxyz) (*Rglbindfst((struct Slbind *) (xyzxyz)))
-#ifdef __GNUC__
-
-extern __inline__ binding *Rglbindsnd(struct Slbind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != lbind)
-               fprintf(stderr,"glbindsnd: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xglbindsnd);
-}
-#else  /* ! __GNUC__ */
-extern binding *Rglbindsnd PROTO((struct Slbind *));
-#endif /* ! __GNUC__ */
-
-#define glbindsnd(xyzxyz) (*Rglbindsnd((struct Slbind *) (xyzxyz)))
-
-extern binding mkebind PROTO((list, binding, long));
-#ifdef __GNUC__
-
-extern __inline__ list *Rgebindl(struct Sebind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != ebind)
-               fprintf(stderr,"gebindl: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xgebindl);
-}
-#else  /* ! __GNUC__ */
-extern list *Rgebindl PROTO((struct Sebind *));
-#endif /* ! __GNUC__ */
-
-#define gebindl(xyzxyz) (*Rgebindl((struct Sebind *) (xyzxyz)))
-#ifdef __GNUC__
-
-extern __inline__ binding *Rgebind(struct Sebind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != ebind)
-               fprintf(stderr,"gebind: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xgebind);
-}
-#else  /* ! __GNUC__ */
-extern binding *Rgebind PROTO((struct Sebind *));
-#endif /* ! __GNUC__ */
-
-#define gebind(xyzxyz) (*Rgebind((struct Sebind *) (xyzxyz)))
-#ifdef __GNUC__
-
-extern __inline__ long *Rgeline(struct Sebind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != ebind)
-               fprintf(stderr,"geline: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xgeline);
-}
-#else  /* ! __GNUC__ */
-extern long *Rgeline PROTO((struct Sebind *));
-#endif /* ! __GNUC__ */
-
-#define geline(xyzxyz) (*Rgeline((struct Sebind *) (xyzxyz)))
-
-extern binding mkhbind PROTO((list, binding, long));
-#ifdef __GNUC__
-
-extern __inline__ list *Rghbindl(struct Shbind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != hbind)
-               fprintf(stderr,"ghbindl: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xghbindl);
-}
-#else  /* ! __GNUC__ */
-extern list *Rghbindl PROTO((struct Shbind *));
-#endif /* ! __GNUC__ */
-
-#define ghbindl(xyzxyz) (*Rghbindl((struct Shbind *) (xyzxyz)))
-#ifdef __GNUC__
-
-extern __inline__ binding *Rghbind(struct Shbind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != hbind)
-               fprintf(stderr,"ghbind: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xghbind);
-}
-#else  /* ! __GNUC__ */
-extern binding *Rghbind PROTO((struct Shbind *));
-#endif /* ! __GNUC__ */
-
-#define ghbind(xyzxyz) (*Rghbind((struct Shbind *) (xyzxyz)))
-#ifdef __GNUC__
-
-extern __inline__ long *Rghline(struct Shbind *t)
-{
-#ifdef UGEN_DEBUG
-       if(t -> tag != hbind)
-               fprintf(stderr,"ghline: illegal selection; was %d\n", t -> tag);
-#endif /* UGEN_DEBUG */
-       return(& t -> Xghline);
-}
-#else  /* ! __GNUC__ */
-extern long *Rghline PROTO((struct Shbind *));
-#endif /* ! __GNUC__ */
-
-#define ghline(xyzxyz) (*Rghline((struct Shbind *) (xyzxyz)))
-
 extern binding mkibind PROTO((list, unkId, ttype, binding, long, hpragma));
 #ifdef __GNUC__
 
 extern binding mkibind PROTO((list, unkId, ttype, binding, long, hpragma));
 #ifdef __GNUC__
 
+list *Rgibindc PROTO((struct Sibind *));
+
 extern __inline__ list *Rgibindc(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgibindc(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
@@ -617,6 +503,8 @@ extern list *Rgibindc PROTO((struct Sibind *));
 #define gibindc(xyzxyz) (*Rgibindc((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gibindc(xyzxyz) (*Rgibindc((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
+unkId *Rgibindid PROTO((struct Sibind *));
+
 extern __inline__ unkId *Rgibindid(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgibindid(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
@@ -632,6 +520,8 @@ extern unkId *Rgibindid PROTO((struct Sibind *));
 #define gibindid(xyzxyz) (*Rgibindid((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gibindid(xyzxyz) (*Rgibindid((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgibindi PROTO((struct Sibind *));
+
 extern __inline__ ttype *Rgibindi(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgibindi(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
@@ -647,6 +537,8 @@ extern ttype *Rgibindi PROTO((struct Sibind *));
 #define gibindi(xyzxyz) (*Rgibindi((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gibindi(xyzxyz) (*Rgibindi((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
+binding *Rgibindw PROTO((struct Sibind *));
+
 extern __inline__ binding *Rgibindw(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rgibindw(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
@@ -662,6 +554,8 @@ extern binding *Rgibindw PROTO((struct Sibind *));
 #define gibindw(xyzxyz) (*Rgibindw((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gibindw(xyzxyz) (*Rgibindw((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgiline PROTO((struct Sibind *));
+
 extern __inline__ long *Rgiline(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgiline(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
@@ -677,6 +571,8 @@ extern long *Rgiline PROTO((struct Sibind *));
 #define giline(xyzxyz) (*Rgiline((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define giline(xyzxyz) (*Rgiline((struct Sibind *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgipragma PROTO((struct Sibind *));
+
 extern __inline__ hpragma *Rgipragma(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgipragma(struct Sibind *t)
 {
 #ifdef UGEN_DEBUG
@@ -694,6 +590,8 @@ extern hpragma *Rgipragma PROTO((struct Sibind *));
 extern binding mkdbind PROTO((list, long));
 #ifdef __GNUC__
 
 extern binding mkdbind PROTO((list, long));
 #ifdef __GNUC__
 
+list *Rgdbindts PROTO((struct Sdbind *));
+
 extern __inline__ list *Rgdbindts(struct Sdbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgdbindts(struct Sdbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -709,6 +607,8 @@ extern list *Rgdbindts PROTO((struct Sdbind *));
 #define gdbindts(xyzxyz) (*Rgdbindts((struct Sdbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gdbindts(xyzxyz) (*Rgdbindts((struct Sdbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgdline PROTO((struct Sdbind *));
+
 extern __inline__ long *Rgdline(struct Sdbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgdline(struct Sdbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -726,6 +626,8 @@ extern long *Rgdline PROTO((struct Sdbind *));
 extern binding mkcbind PROTO((list, ttype, binding, long, hpragma));
 #ifdef __GNUC__
 
 extern binding mkcbind PROTO((list, ttype, binding, long, hpragma));
 #ifdef __GNUC__
 
+list *Rgcbindc PROTO((struct Scbind *));
+
 extern __inline__ list *Rgcbindc(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcbindc(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -741,6 +643,8 @@ extern list *Rgcbindc PROTO((struct Scbind *));
 #define gcbindc(xyzxyz) (*Rgcbindc((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcbindc(xyzxyz) (*Rgcbindc((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgcbindid PROTO((struct Scbind *));
+
 extern __inline__ ttype *Rgcbindid(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgcbindid(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -756,6 +660,8 @@ extern ttype *Rgcbindid PROTO((struct Scbind *));
 #define gcbindid(xyzxyz) (*Rgcbindid((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcbindid(xyzxyz) (*Rgcbindid((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+binding *Rgcbindw PROTO((struct Scbind *));
+
 extern __inline__ binding *Rgcbindw(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rgcbindw(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -771,6 +677,8 @@ extern binding *Rgcbindw PROTO((struct Scbind *));
 #define gcbindw(xyzxyz) (*Rgcbindw((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcbindw(xyzxyz) (*Rgcbindw((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgcline PROTO((struct Scbind *));
+
 extern __inline__ long *Rgcline(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgcline(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -786,6 +694,8 @@ extern long *Rgcline PROTO((struct Scbind *));
 #define gcline(xyzxyz) (*Rgcline((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcline(xyzxyz) (*Rgcline((struct Scbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgcpragma PROTO((struct Scbind *));
+
 extern __inline__ hpragma *Rgcpragma(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgcpragma(struct Scbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -803,6 +713,8 @@ extern hpragma *Rgcpragma PROTO((struct Scbind *));
 extern binding mksbind PROTO((list, ttype, long, hpragma));
 #ifdef __GNUC__
 
 extern binding mksbind PROTO((list, ttype, long, hpragma));
 #ifdef __GNUC__
 
+list *Rgsbindids PROTO((struct Ssbind *));
+
 extern __inline__ list *Rgsbindids(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgsbindids(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -818,6 +730,8 @@ extern list *Rgsbindids PROTO((struct Ssbind *));
 #define gsbindids(xyzxyz) (*Rgsbindids((struct Ssbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gsbindids(xyzxyz) (*Rgsbindids((struct Ssbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgsbindid PROTO((struct Ssbind *));
+
 extern __inline__ ttype *Rgsbindid(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgsbindid(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -833,6 +747,8 @@ extern ttype *Rgsbindid PROTO((struct Ssbind *));
 #define gsbindid(xyzxyz) (*Rgsbindid((struct Ssbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gsbindid(xyzxyz) (*Rgsbindid((struct Ssbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgsline PROTO((struct Ssbind *));
+
 extern __inline__ long *Rgsline(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgsline(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -848,6 +764,8 @@ extern long *Rgsline PROTO((struct Ssbind *));
 #define gsline(xyzxyz) (*Rgsline((struct Ssbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gsline(xyzxyz) (*Rgsline((struct Ssbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgspragma PROTO((struct Ssbind *));
+
 extern __inline__ hpragma *Rgspragma(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgspragma(struct Ssbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -865,6 +783,8 @@ extern hpragma *Rgspragma PROTO((struct Ssbind *));
 extern binding mkmbind PROTO((stringId, list, list, long));
 #ifdef __GNUC__
 
 extern binding mkmbind PROTO((stringId, list, list, long));
 #ifdef __GNUC__
 
+stringId *Rgmbindmodn PROTO((struct Smbind *));
+
 extern __inline__ stringId *Rgmbindmodn(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgmbindmodn(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -880,6 +800,8 @@ extern stringId *Rgmbindmodn PROTO((struct Smbind *));
 #define gmbindmodn(xyzxyz) (*Rgmbindmodn((struct Smbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gmbindmodn(xyzxyz) (*Rgmbindmodn((struct Smbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgmbindimp PROTO((struct Smbind *));
+
 extern __inline__ list *Rgmbindimp(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgmbindimp(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -895,6 +817,8 @@ extern list *Rgmbindimp PROTO((struct Smbind *));
 #define gmbindimp(xyzxyz) (*Rgmbindimp((struct Smbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gmbindimp(xyzxyz) (*Rgmbindimp((struct Smbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgmbindren PROTO((struct Smbind *));
+
 extern __inline__ list *Rgmbindren(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgmbindren(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -910,6 +834,8 @@ extern list *Rgmbindren PROTO((struct Smbind *));
 #define gmbindren(xyzxyz) (*Rgmbindren((struct Smbind *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gmbindren(xyzxyz) (*Rgmbindren((struct Smbind *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgmline PROTO((struct Smbind *));
+
 extern __inline__ long *Rgmline(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgmline(struct Smbind *t)
 {
 #ifdef UGEN_DEBUG
@@ -924,11 +850,13 @@ extern long *Rgmline PROTO((struct Smbind *));
 
 #define gmline(xyzxyz) (*Rgmline((struct Smbind *) (xyzxyz)))
 
 
 #define gmline(xyzxyz) (*Rgmline((struct Smbind *) (xyzxyz)))
 
-extern binding mknullbind PROTO(());
+extern binding mknullbind PROTO((void));
 
 extern binding mkimport PROTO((stringId, list, list, binding, stringId, long));
 #ifdef __GNUC__
 
 
 extern binding mkimport PROTO((stringId, list, list, binding, stringId, long));
 #ifdef __GNUC__
 
+stringId *Rgiebindmod PROTO((struct Simport *));
+
 extern __inline__ stringId *Rgiebindmod(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgiebindmod(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
@@ -944,6 +872,8 @@ extern stringId *Rgiebindmod PROTO((struct Simport *));
 #define giebindmod(xyzxyz) (*Rgiebindmod((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define giebindmod(xyzxyz) (*Rgiebindmod((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgiebindexp PROTO((struct Simport *));
+
 extern __inline__ list *Rgiebindexp(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgiebindexp(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
@@ -959,6 +889,8 @@ extern list *Rgiebindexp PROTO((struct Simport *));
 #define giebindexp(xyzxyz) (*Rgiebindexp((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define giebindexp(xyzxyz) (*Rgiebindexp((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgiebindren PROTO((struct Simport *));
+
 extern __inline__ list *Rgiebindren(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgiebindren(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
@@ -974,6 +906,8 @@ extern list *Rgiebindren PROTO((struct Simport *));
 #define giebindren(xyzxyz) (*Rgiebindren((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define giebindren(xyzxyz) (*Rgiebindren((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
+binding *Rgiebinddef PROTO((struct Simport *));
+
 extern __inline__ binding *Rgiebinddef(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rgiebinddef(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
@@ -989,6 +923,8 @@ extern binding *Rgiebinddef PROTO((struct Simport *));
 #define giebinddef(xyzxyz) (*Rgiebinddef((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define giebinddef(xyzxyz) (*Rgiebinddef((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgiebindfile PROTO((struct Simport *));
+
 extern __inline__ stringId *Rgiebindfile(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgiebindfile(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
@@ -1004,6 +940,8 @@ extern stringId *Rgiebindfile PROTO((struct Simport *));
 #define giebindfile(xyzxyz) (*Rgiebindfile((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define giebindfile(xyzxyz) (*Rgiebindfile((struct Simport *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgiebindline PROTO((struct Simport *));
+
 extern __inline__ long *Rgiebindline(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgiebindline(struct Simport *t)
 {
 #ifdef UGEN_DEBUG
@@ -1021,6 +959,8 @@ extern long *Rgiebindline PROTO((struct Simport *));
 extern binding mkhiding PROTO((stringId, list, list, binding, stringId, long));
 #ifdef __GNUC__
 
 extern binding mkhiding PROTO((stringId, list, list, binding, stringId, long));
 #ifdef __GNUC__
 
+stringId *Rgihbindmod PROTO((struct Shiding *));
+
 extern __inline__ stringId *Rgihbindmod(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgihbindmod(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
@@ -1036,6 +976,8 @@ extern stringId *Rgihbindmod PROTO((struct Shiding *));
 #define gihbindmod(xyzxyz) (*Rgihbindmod((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gihbindmod(xyzxyz) (*Rgihbindmod((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgihbindexp PROTO((struct Shiding *));
+
 extern __inline__ list *Rgihbindexp(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgihbindexp(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
@@ -1051,6 +993,8 @@ extern list *Rgihbindexp PROTO((struct Shiding *));
 #define gihbindexp(xyzxyz) (*Rgihbindexp((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gihbindexp(xyzxyz) (*Rgihbindexp((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgihbindren PROTO((struct Shiding *));
+
 extern __inline__ list *Rgihbindren(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgihbindren(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
@@ -1066,6 +1010,8 @@ extern list *Rgihbindren PROTO((struct Shiding *));
 #define gihbindren(xyzxyz) (*Rgihbindren((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gihbindren(xyzxyz) (*Rgihbindren((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
+binding *Rgihbinddef PROTO((struct Shiding *));
+
 extern __inline__ binding *Rgihbinddef(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rgihbinddef(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
@@ -1081,6 +1027,8 @@ extern binding *Rgihbinddef PROTO((struct Shiding *));
 #define gihbinddef(xyzxyz) (*Rgihbinddef((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gihbinddef(xyzxyz) (*Rgihbinddef((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgihbindfile PROTO((struct Shiding *));
+
 extern __inline__ stringId *Rgihbindfile(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgihbindfile(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
@@ -1096,6 +1044,8 @@ extern stringId *Rgihbindfile PROTO((struct Shiding *));
 #define gihbindfile(xyzxyz) (*Rgihbindfile((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gihbindfile(xyzxyz) (*Rgihbindfile((struct Shiding *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgihbindline PROTO((struct Shiding *));
+
 extern __inline__ long *Rgihbindline(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgihbindline(struct Shiding *t)
 {
 #ifdef UGEN_DEBUG
@@ -1113,6 +1063,8 @@ extern long *Rgihbindline PROTO((struct Shiding *));
 extern binding mkvspec_uprag PROTO((unkId, list, long));
 #ifdef __GNUC__
 
 extern binding mkvspec_uprag PROTO((unkId, list, long));
 #ifdef __GNUC__
 
+unkId *Rgvspec_id PROTO((struct Svspec_uprag *));
+
 extern __inline__ unkId *Rgvspec_id(struct Svspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgvspec_id(struct Svspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1128,6 +1080,8 @@ extern unkId *Rgvspec_id PROTO((struct Svspec_uprag *));
 #define gvspec_id(xyzxyz) (*Rgvspec_id((struct Svspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gvspec_id(xyzxyz) (*Rgvspec_id((struct Svspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgvspec_tys PROTO((struct Svspec_uprag *));
+
 extern __inline__ list *Rgvspec_tys(struct Svspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgvspec_tys(struct Svspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1143,6 +1097,8 @@ extern list *Rgvspec_tys PROTO((struct Svspec_uprag *));
 #define gvspec_tys(xyzxyz) (*Rgvspec_tys((struct Svspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gvspec_tys(xyzxyz) (*Rgvspec_tys((struct Svspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgvspec_line PROTO((struct Svspec_uprag *));
+
 extern __inline__ long *Rgvspec_line(struct Svspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgvspec_line(struct Svspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1160,6 +1116,8 @@ extern long *Rgvspec_line PROTO((struct Svspec_uprag *));
 extern binding mkvspec_ty_and_id PROTO((ttype, list));
 #ifdef __GNUC__
 
 extern binding mkvspec_ty_and_id PROTO((ttype, list));
 #ifdef __GNUC__
 
+ttype *Rgvspec_ty PROTO((struct Svspec_ty_and_id *));
+
 extern __inline__ ttype *Rgvspec_ty(struct Svspec_ty_and_id *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgvspec_ty(struct Svspec_ty_and_id *t)
 {
 #ifdef UGEN_DEBUG
@@ -1175,6 +1133,8 @@ extern ttype *Rgvspec_ty PROTO((struct Svspec_ty_and_id *));
 #define gvspec_ty(xyzxyz) (*Rgvspec_ty((struct Svspec_ty_and_id *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gvspec_ty(xyzxyz) (*Rgvspec_ty((struct Svspec_ty_and_id *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgvspec_tyid PROTO((struct Svspec_ty_and_id *));
+
 extern __inline__ list *Rgvspec_tyid(struct Svspec_ty_and_id *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgvspec_tyid(struct Svspec_ty_and_id *t)
 {
 #ifdef UGEN_DEBUG
@@ -1192,6 +1152,8 @@ extern list *Rgvspec_tyid PROTO((struct Svspec_ty_and_id *));
 extern binding mkispec_uprag PROTO((unkId, ttype, long));
 #ifdef __GNUC__
 
 extern binding mkispec_uprag PROTO((unkId, ttype, long));
 #ifdef __GNUC__
 
+unkId *Rgispec_clas PROTO((struct Sispec_uprag *));
+
 extern __inline__ unkId *Rgispec_clas(struct Sispec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgispec_clas(struct Sispec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1207,6 +1169,8 @@ extern unkId *Rgispec_clas PROTO((struct Sispec_uprag *));
 #define gispec_clas(xyzxyz) (*Rgispec_clas((struct Sispec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gispec_clas(xyzxyz) (*Rgispec_clas((struct Sispec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgispec_ty PROTO((struct Sispec_uprag *));
+
 extern __inline__ ttype *Rgispec_ty(struct Sispec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgispec_ty(struct Sispec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1222,6 +1186,8 @@ extern ttype *Rgispec_ty PROTO((struct Sispec_uprag *));
 #define gispec_ty(xyzxyz) (*Rgispec_ty((struct Sispec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gispec_ty(xyzxyz) (*Rgispec_ty((struct Sispec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgispec_line PROTO((struct Sispec_uprag *));
+
 extern __inline__ long *Rgispec_line(struct Sispec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgispec_line(struct Sispec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1239,6 +1205,8 @@ extern long *Rgispec_line PROTO((struct Sispec_uprag *));
 extern binding mkinline_uprag PROTO((unkId, list, long));
 #ifdef __GNUC__
 
 extern binding mkinline_uprag PROTO((unkId, list, long));
 #ifdef __GNUC__
 
+unkId *Rginline_id PROTO((struct Sinline_uprag *));
+
 extern __inline__ unkId *Rginline_id(struct Sinline_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rginline_id(struct Sinline_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1254,6 +1222,8 @@ extern unkId *Rginline_id PROTO((struct Sinline_uprag *));
 #define ginline_id(xyzxyz) (*Rginline_id((struct Sinline_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ginline_id(xyzxyz) (*Rginline_id((struct Sinline_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rginline_howto PROTO((struct Sinline_uprag *));
+
 extern __inline__ list *Rginline_howto(struct Sinline_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rginline_howto(struct Sinline_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1269,6 +1239,8 @@ extern list *Rginline_howto PROTO((struct Sinline_uprag *));
 #define ginline_howto(xyzxyz) (*Rginline_howto((struct Sinline_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ginline_howto(xyzxyz) (*Rginline_howto((struct Sinline_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rginline_line PROTO((struct Sinline_uprag *));
+
 extern __inline__ long *Rginline_line(struct Sinline_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rginline_line(struct Sinline_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1286,6 +1258,8 @@ extern long *Rginline_line PROTO((struct Sinline_uprag *));
 extern binding mkdeforest_uprag PROTO((unkId, long));
 #ifdef __GNUC__
 
 extern binding mkdeforest_uprag PROTO((unkId, long));
 #ifdef __GNUC__
 
+unkId *Rgdeforest_id PROTO((struct Sdeforest_uprag *));
+
 extern __inline__ unkId *Rgdeforest_id(struct Sdeforest_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgdeforest_id(struct Sdeforest_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1301,6 +1275,8 @@ extern unkId *Rgdeforest_id PROTO((struct Sdeforest_uprag *));
 #define gdeforest_id(xyzxyz) (*Rgdeforest_id((struct Sdeforest_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gdeforest_id(xyzxyz) (*Rgdeforest_id((struct Sdeforest_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgdeforest_line PROTO((struct Sdeforest_uprag *));
+
 extern __inline__ long *Rgdeforest_line(struct Sdeforest_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgdeforest_line(struct Sdeforest_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1318,6 +1294,8 @@ extern long *Rgdeforest_line PROTO((struct Sdeforest_uprag *));
 extern binding mkmagicuf_uprag PROTO((unkId, stringId, long));
 #ifdef __GNUC__
 
 extern binding mkmagicuf_uprag PROTO((unkId, stringId, long));
 #ifdef __GNUC__
 
+unkId *Rgmagicuf_id PROTO((struct Smagicuf_uprag *));
+
 extern __inline__ unkId *Rgmagicuf_id(struct Smagicuf_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgmagicuf_id(struct Smagicuf_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1333,6 +1311,8 @@ extern unkId *Rgmagicuf_id PROTO((struct Smagicuf_uprag *));
 #define gmagicuf_id(xyzxyz) (*Rgmagicuf_id((struct Smagicuf_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gmagicuf_id(xyzxyz) (*Rgmagicuf_id((struct Smagicuf_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgmagicuf_str PROTO((struct Smagicuf_uprag *));
+
 extern __inline__ stringId *Rgmagicuf_str(struct Smagicuf_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgmagicuf_str(struct Smagicuf_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1348,6 +1328,8 @@ extern stringId *Rgmagicuf_str PROTO((struct Smagicuf_uprag *));
 #define gmagicuf_str(xyzxyz) (*Rgmagicuf_str((struct Smagicuf_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gmagicuf_str(xyzxyz) (*Rgmagicuf_str((struct Smagicuf_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgmagicuf_line PROTO((struct Smagicuf_uprag *));
+
 extern __inline__ long *Rgmagicuf_line(struct Smagicuf_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgmagicuf_line(struct Smagicuf_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1365,6 +1347,8 @@ extern long *Rgmagicuf_line PROTO((struct Smagicuf_uprag *));
 extern binding mkabstract_uprag PROTO((unkId, long));
 #ifdef __GNUC__
 
 extern binding mkabstract_uprag PROTO((unkId, long));
 #ifdef __GNUC__
 
+unkId *Rgabstract_id PROTO((struct Sabstract_uprag *));
+
 extern __inline__ unkId *Rgabstract_id(struct Sabstract_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgabstract_id(struct Sabstract_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1380,6 +1364,8 @@ extern unkId *Rgabstract_id PROTO((struct Sabstract_uprag *));
 #define gabstract_id(xyzxyz) (*Rgabstract_id((struct Sabstract_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gabstract_id(xyzxyz) (*Rgabstract_id((struct Sabstract_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgabstract_line PROTO((struct Sabstract_uprag *));
+
 extern __inline__ long *Rgabstract_line(struct Sabstract_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgabstract_line(struct Sabstract_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1397,6 +1383,8 @@ extern long *Rgabstract_line PROTO((struct Sabstract_uprag *));
 extern binding mkdspec_uprag PROTO((unkId, list, long));
 #ifdef __GNUC__
 
 extern binding mkdspec_uprag PROTO((unkId, list, long));
 #ifdef __GNUC__
 
+unkId *Rgdspec_id PROTO((struct Sdspec_uprag *));
+
 extern __inline__ unkId *Rgdspec_id(struct Sdspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgdspec_id(struct Sdspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1412,6 +1400,8 @@ extern unkId *Rgdspec_id PROTO((struct Sdspec_uprag *));
 #define gdspec_id(xyzxyz) (*Rgdspec_id((struct Sdspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gdspec_id(xyzxyz) (*Rgdspec_id((struct Sdspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgdspec_tys PROTO((struct Sdspec_uprag *));
+
 extern __inline__ list *Rgdspec_tys(struct Sdspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgdspec_tys(struct Sdspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
@@ -1427,6 +1417,8 @@ extern list *Rgdspec_tys PROTO((struct Sdspec_uprag *));
 #define gdspec_tys(xyzxyz) (*Rgdspec_tys((struct Sdspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gdspec_tys(xyzxyz) (*Rgdspec_tys((struct Sdspec_uprag *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgdspec_line PROTO((struct Sdspec_uprag *));
+
 extern __inline__ long *Rgdspec_line(struct Sdspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgdspec_line(struct Sdspec_uprag *t)
 {
 #ifdef UGEN_DEBUG
index 34318db..2f17580 100644 (file)
@@ -702,7 +702,7 @@ coresyn *Rgcoprim_rhs(t)
 
 /************** conodeflt ******************/
 
 
 /************** conodeflt ******************/
 
-coresyn mkconodeflt()
+coresyn mkconodeflt(void)
 {
        register struct Sconodeflt *pp =
                (struct Sconodeflt *) malloc(sizeof(struct Sconodeflt));
 {
        register struct Sconodeflt *pp =
                (struct Sconodeflt *) malloc(sizeof(struct Sconodeflt));
@@ -1162,7 +1162,7 @@ coresyn *Rgco_dictcc_cafd(t)
 
 /************** co_scc_noncaf ******************/
 
 
 /************** co_scc_noncaf ******************/
 
-coresyn mkco_scc_noncaf()
+coresyn mkco_scc_noncaf(void)
 {
        register struct Sco_scc_noncaf *pp =
                (struct Sco_scc_noncaf *) malloc(sizeof(struct Sco_scc_noncaf));
 {
        register struct Sco_scc_noncaf *pp =
                (struct Sco_scc_noncaf *) malloc(sizeof(struct Sco_scc_noncaf));
@@ -1172,7 +1172,7 @@ coresyn mkco_scc_noncaf()
 
 /************** co_scc_caf ******************/
 
 
 /************** co_scc_caf ******************/
 
-coresyn mkco_scc_caf()
+coresyn mkco_scc_caf(void)
 {
        register struct Sco_scc_caf *pp =
                (struct Sco_scc_caf *) malloc(sizeof(struct Sco_scc_caf));
 {
        register struct Sco_scc_caf *pp =
                (struct Sco_scc_caf *) malloc(sizeof(struct Sco_scc_caf));
@@ -1182,7 +1182,7 @@ coresyn mkco_scc_caf()
 
 /************** co_scc_nondupd ******************/
 
 
 /************** co_scc_nondupd ******************/
 
-coresyn mkco_scc_nondupd()
+coresyn mkco_scc_nondupd(void)
 {
        register struct Sco_scc_nondupd *pp =
                (struct Sco_scc_nondupd *) malloc(sizeof(struct Sco_scc_nondupd));
 {
        register struct Sco_scc_nondupd *pp =
                (struct Sco_scc_nondupd *) malloc(sizeof(struct Sco_scc_nondupd));
@@ -1192,7 +1192,7 @@ coresyn mkco_scc_nondupd()
 
 /************** co_scc_dupd ******************/
 
 
 /************** co_scc_dupd ******************/
 
-coresyn mkco_scc_dupd()
+coresyn mkco_scc_dupd(void)
 {
        register struct Sco_scc_dupd *pp =
                (struct Sco_scc_dupd *) malloc(sizeof(struct Sco_scc_dupd));
 {
        register struct Sco_scc_dupd *pp =
                (struct Sco_scc_dupd *) malloc(sizeof(struct Sco_scc_dupd));
index 6786e3e..37ef02c 100644 (file)
@@ -61,6 +61,7 @@ typedef enum {
 typedef struct { Tcoresyn tag; } *coresyn;
 
 #ifdef __GNUC__
 typedef struct { Tcoresyn tag; } *coresyn;
 
 #ifdef __GNUC__
+Tcoresyn tcoresyn(coresyn t);
 extern __inline__ Tcoresyn tcoresyn(coresyn t)
 {
        return(t -> tag);
 extern __inline__ Tcoresyn tcoresyn(coresyn t)
 {
        return(t -> tag);
@@ -335,6 +336,8 @@ struct Sco_wrkrid {
 extern coresyn mkcobinder PROTO((unkId, ttype));
 #ifdef __GNUC__
 
 extern coresyn mkcobinder PROTO((unkId, ttype));
 #ifdef __GNUC__
 
+unkId *Rgcobinder_v PROTO((struct Scobinder *));
+
 extern __inline__ unkId *Rgcobinder_v(struct Scobinder *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgcobinder_v(struct Scobinder *t)
 {
 #ifdef UGEN_DEBUG
@@ -350,6 +353,8 @@ extern unkId *Rgcobinder_v PROTO((struct Scobinder *));
 #define gcobinder_v(xyzxyz) (*Rgcobinder_v((struct Scobinder *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcobinder_v(xyzxyz) (*Rgcobinder_v((struct Scobinder *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgcobinder_ty PROTO((struct Scobinder *));
+
 extern __inline__ ttype *Rgcobinder_ty(struct Scobinder *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgcobinder_ty(struct Scobinder *t)
 {
 #ifdef UGEN_DEBUG
@@ -367,6 +372,8 @@ extern ttype *Rgcobinder_ty PROTO((struct Scobinder *));
 extern coresyn mkcolit PROTO((literal));
 #ifdef __GNUC__
 
 extern coresyn mkcolit PROTO((literal));
 #ifdef __GNUC__
 
+literal *Rgcolit PROTO((struct Scolit *));
+
 extern __inline__ literal *Rgcolit(struct Scolit *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ literal *Rgcolit(struct Scolit *t)
 {
 #ifdef UGEN_DEBUG
@@ -384,6 +391,8 @@ extern literal *Rgcolit PROTO((struct Scolit *));
 extern coresyn mkcolocal PROTO((coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcolocal PROTO((coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcolocal_v PROTO((struct Scolocal *));
+
 extern __inline__ coresyn *Rgcolocal_v(struct Scolocal *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcolocal_v(struct Scolocal *t)
 {
 #ifdef UGEN_DEBUG
@@ -401,6 +410,8 @@ extern coresyn *Rgcolocal_v PROTO((struct Scolocal *));
 extern coresyn mkcononrec PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcononrec PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcononrec_b PROTO((struct Scononrec *));
+
 extern __inline__ coresyn *Rgcononrec_b(struct Scononrec *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcononrec_b(struct Scononrec *t)
 {
 #ifdef UGEN_DEBUG
@@ -416,6 +427,8 @@ extern coresyn *Rgcononrec_b PROTO((struct Scononrec *));
 #define gcononrec_b(xyzxyz) (*Rgcononrec_b((struct Scononrec *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcononrec_b(xyzxyz) (*Rgcononrec_b((struct Scononrec *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcononrec_rhs PROTO((struct Scononrec *));
+
 extern __inline__ coresyn *Rgcononrec_rhs(struct Scononrec *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcononrec_rhs(struct Scononrec *t)
 {
 #ifdef UGEN_DEBUG
@@ -433,6 +446,8 @@ extern coresyn *Rgcononrec_rhs PROTO((struct Scononrec *));
 extern coresyn mkcorec PROTO((list));
 #ifdef __GNUC__
 
 extern coresyn mkcorec PROTO((list));
 #ifdef __GNUC__
 
+list *Rgcorec PROTO((struct Scorec *));
+
 extern __inline__ list *Rgcorec(struct Scorec *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcorec(struct Scorec *t)
 {
 #ifdef UGEN_DEBUG
@@ -450,6 +465,8 @@ extern list *Rgcorec PROTO((struct Scorec *));
 extern coresyn mkcorec_pair PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcorec_pair PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcorec_b PROTO((struct Scorec_pair *));
+
 extern __inline__ coresyn *Rgcorec_b(struct Scorec_pair *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcorec_b(struct Scorec_pair *t)
 {
 #ifdef UGEN_DEBUG
@@ -465,6 +482,8 @@ extern coresyn *Rgcorec_b PROTO((struct Scorec_pair *));
 #define gcorec_b(xyzxyz) (*Rgcorec_b((struct Scorec_pair *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcorec_b(xyzxyz) (*Rgcorec_b((struct Scorec_pair *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcorec_rhs PROTO((struct Scorec_pair *));
+
 extern __inline__ coresyn *Rgcorec_rhs(struct Scorec_pair *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcorec_rhs(struct Scorec_pair *t)
 {
 #ifdef UGEN_DEBUG
@@ -482,6 +501,8 @@ extern coresyn *Rgcorec_rhs PROTO((struct Scorec_pair *));
 extern coresyn mkcovar PROTO((coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcovar PROTO((coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcovar PROTO((struct Scovar *));
+
 extern __inline__ coresyn *Rgcovar(struct Scovar *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcovar(struct Scovar *t)
 {
 #ifdef UGEN_DEBUG
@@ -499,6 +520,8 @@ extern coresyn *Rgcovar PROTO((struct Scovar *));
 extern coresyn mkcoliteral PROTO((literal));
 #ifdef __GNUC__
 
 extern coresyn mkcoliteral PROTO((literal));
 #ifdef __GNUC__
 
+literal *Rgcoliteral PROTO((struct Scoliteral *));
+
 extern __inline__ literal *Rgcoliteral(struct Scoliteral *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ literal *Rgcoliteral(struct Scoliteral *t)
 {
 #ifdef UGEN_DEBUG
@@ -516,6 +539,8 @@ extern literal *Rgcoliteral PROTO((struct Scoliteral *));
 extern coresyn mkcocon PROTO((coresyn, list, list));
 #ifdef __GNUC__
 
 extern coresyn mkcocon PROTO((coresyn, list, list));
 #ifdef __GNUC__
 
+coresyn *Rgcocon_con PROTO((struct Scocon *));
+
 extern __inline__ coresyn *Rgcocon_con(struct Scocon *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcocon_con(struct Scocon *t)
 {
 #ifdef UGEN_DEBUG
@@ -531,6 +556,8 @@ extern coresyn *Rgcocon_con PROTO((struct Scocon *));
 #define gcocon_con(xyzxyz) (*Rgcocon_con((struct Scocon *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcocon_con(xyzxyz) (*Rgcocon_con((struct Scocon *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcocon_tys PROTO((struct Scocon *));
+
 extern __inline__ list *Rgcocon_tys(struct Scocon *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcocon_tys(struct Scocon *t)
 {
 #ifdef UGEN_DEBUG
@@ -546,6 +573,8 @@ extern list *Rgcocon_tys PROTO((struct Scocon *));
 #define gcocon_tys(xyzxyz) (*Rgcocon_tys((struct Scocon *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcocon_tys(xyzxyz) (*Rgcocon_tys((struct Scocon *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcocon_args PROTO((struct Scocon *));
+
 extern __inline__ list *Rgcocon_args(struct Scocon *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcocon_args(struct Scocon *t)
 {
 #ifdef UGEN_DEBUG
@@ -563,6 +592,8 @@ extern list *Rgcocon_args PROTO((struct Scocon *));
 extern coresyn mkcoprim PROTO((coresyn, list, list));
 #ifdef __GNUC__
 
 extern coresyn mkcoprim PROTO((coresyn, list, list));
 #ifdef __GNUC__
 
+coresyn *Rgcoprim_op PROTO((struct Scoprim *));
+
 extern __inline__ coresyn *Rgcoprim_op(struct Scoprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoprim_op(struct Scoprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -578,6 +609,8 @@ extern coresyn *Rgcoprim_op PROTO((struct Scoprim *));
 #define gcoprim_op(xyzxyz) (*Rgcoprim_op((struct Scoprim *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoprim_op(xyzxyz) (*Rgcoprim_op((struct Scoprim *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcoprim_tys PROTO((struct Scoprim *));
+
 extern __inline__ list *Rgcoprim_tys(struct Scoprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcoprim_tys(struct Scoprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -593,6 +626,8 @@ extern list *Rgcoprim_tys PROTO((struct Scoprim *));
 #define gcoprim_tys(xyzxyz) (*Rgcoprim_tys((struct Scoprim *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoprim_tys(xyzxyz) (*Rgcoprim_tys((struct Scoprim *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcoprim_args PROTO((struct Scoprim *));
+
 extern __inline__ list *Rgcoprim_args(struct Scoprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcoprim_args(struct Scoprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -610,6 +645,8 @@ extern list *Rgcoprim_args PROTO((struct Scoprim *));
 extern coresyn mkcolam PROTO((list, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcolam PROTO((list, coresyn));
 #ifdef __GNUC__
 
+list *Rgcolam_vars PROTO((struct Scolam *));
+
 extern __inline__ list *Rgcolam_vars(struct Scolam *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcolam_vars(struct Scolam *t)
 {
 #ifdef UGEN_DEBUG
@@ -625,6 +662,8 @@ extern list *Rgcolam_vars PROTO((struct Scolam *));
 #define gcolam_vars(xyzxyz) (*Rgcolam_vars((struct Scolam *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcolam_vars(xyzxyz) (*Rgcolam_vars((struct Scolam *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcolam_body PROTO((struct Scolam *));
+
 extern __inline__ coresyn *Rgcolam_body(struct Scolam *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcolam_body(struct Scolam *t)
 {
 #ifdef UGEN_DEBUG
@@ -642,6 +681,8 @@ extern coresyn *Rgcolam_body PROTO((struct Scolam *));
 extern coresyn mkcotylam PROTO((list, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcotylam PROTO((list, coresyn));
 #ifdef __GNUC__
 
+list *Rgcotylam_tvs PROTO((struct Scotylam *));
+
 extern __inline__ list *Rgcotylam_tvs(struct Scotylam *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcotylam_tvs(struct Scotylam *t)
 {
 #ifdef UGEN_DEBUG
@@ -657,6 +698,8 @@ extern list *Rgcotylam_tvs PROTO((struct Scotylam *));
 #define gcotylam_tvs(xyzxyz) (*Rgcotylam_tvs((struct Scotylam *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcotylam_tvs(xyzxyz) (*Rgcotylam_tvs((struct Scotylam *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcotylam_body PROTO((struct Scotylam *));
+
 extern __inline__ coresyn *Rgcotylam_body(struct Scotylam *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcotylam_body(struct Scotylam *t)
 {
 #ifdef UGEN_DEBUG
@@ -674,6 +717,8 @@ extern coresyn *Rgcotylam_body PROTO((struct Scotylam *));
 extern coresyn mkcoapp PROTO((coresyn, list));
 #ifdef __GNUC__
 
 extern coresyn mkcoapp PROTO((coresyn, list));
 #ifdef __GNUC__
 
+coresyn *Rgcoapp_fun PROTO((struct Scoapp *));
+
 extern __inline__ coresyn *Rgcoapp_fun(struct Scoapp *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoapp_fun(struct Scoapp *t)
 {
 #ifdef UGEN_DEBUG
@@ -689,6 +734,8 @@ extern coresyn *Rgcoapp_fun PROTO((struct Scoapp *));
 #define gcoapp_fun(xyzxyz) (*Rgcoapp_fun((struct Scoapp *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoapp_fun(xyzxyz) (*Rgcoapp_fun((struct Scoapp *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcoapp_args PROTO((struct Scoapp *));
+
 extern __inline__ list *Rgcoapp_args(struct Scoapp *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcoapp_args(struct Scoapp *t)
 {
 #ifdef UGEN_DEBUG
@@ -706,6 +753,8 @@ extern list *Rgcoapp_args PROTO((struct Scoapp *));
 extern coresyn mkcotyapp PROTO((coresyn, ttype));
 #ifdef __GNUC__
 
 extern coresyn mkcotyapp PROTO((coresyn, ttype));
 #ifdef __GNUC__
 
+coresyn *Rgcotyapp_e PROTO((struct Scotyapp *));
+
 extern __inline__ coresyn *Rgcotyapp_e(struct Scotyapp *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcotyapp_e(struct Scotyapp *t)
 {
 #ifdef UGEN_DEBUG
@@ -721,6 +770,8 @@ extern coresyn *Rgcotyapp_e PROTO((struct Scotyapp *));
 #define gcotyapp_e(xyzxyz) (*Rgcotyapp_e((struct Scotyapp *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcotyapp_e(xyzxyz) (*Rgcotyapp_e((struct Scotyapp *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgcotyapp_t PROTO((struct Scotyapp *));
+
 extern __inline__ ttype *Rgcotyapp_t(struct Scotyapp *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgcotyapp_t(struct Scotyapp *t)
 {
 #ifdef UGEN_DEBUG
@@ -738,6 +789,8 @@ extern ttype *Rgcotyapp_t PROTO((struct Scotyapp *));
 extern coresyn mkcocase PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcocase PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcocase_s PROTO((struct Scocase *));
+
 extern __inline__ coresyn *Rgcocase_s(struct Scocase *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcocase_s(struct Scocase *t)
 {
 #ifdef UGEN_DEBUG
@@ -753,6 +806,8 @@ extern coresyn *Rgcocase_s PROTO((struct Scocase *));
 #define gcocase_s(xyzxyz) (*Rgcocase_s((struct Scocase *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcocase_s(xyzxyz) (*Rgcocase_s((struct Scocase *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcocase_alts PROTO((struct Scocase *));
+
 extern __inline__ coresyn *Rgcocase_alts(struct Scocase *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcocase_alts(struct Scocase *t)
 {
 #ifdef UGEN_DEBUG
@@ -770,6 +825,8 @@ extern coresyn *Rgcocase_alts PROTO((struct Scocase *));
 extern coresyn mkcolet PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcolet PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcolet_bind PROTO((struct Scolet *));
+
 extern __inline__ coresyn *Rgcolet_bind(struct Scolet *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcolet_bind(struct Scolet *t)
 {
 #ifdef UGEN_DEBUG
@@ -785,6 +842,8 @@ extern coresyn *Rgcolet_bind PROTO((struct Scolet *));
 #define gcolet_bind(xyzxyz) (*Rgcolet_bind((struct Scolet *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcolet_bind(xyzxyz) (*Rgcolet_bind((struct Scolet *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcolet_body PROTO((struct Scolet *));
+
 extern __inline__ coresyn *Rgcolet_body(struct Scolet *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcolet_body(struct Scolet *t)
 {
 #ifdef UGEN_DEBUG
@@ -802,6 +861,8 @@ extern coresyn *Rgcolet_body PROTO((struct Scolet *));
 extern coresyn mkcoscc PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcoscc PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcoscc_scc PROTO((struct Scoscc *));
+
 extern __inline__ coresyn *Rgcoscc_scc(struct Scoscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoscc_scc(struct Scoscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -817,6 +878,8 @@ extern coresyn *Rgcoscc_scc PROTO((struct Scoscc *));
 #define gcoscc_scc(xyzxyz) (*Rgcoscc_scc((struct Scoscc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoscc_scc(xyzxyz) (*Rgcoscc_scc((struct Scoscc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcoscc_body PROTO((struct Scoscc *));
+
 extern __inline__ coresyn *Rgcoscc_body(struct Scoscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoscc_body(struct Scoscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -834,6 +897,8 @@ extern coresyn *Rgcoscc_body PROTO((struct Scoscc *));
 extern coresyn mkcoalg_alts PROTO((list, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcoalg_alts PROTO((list, coresyn));
 #ifdef __GNUC__
 
+list *Rgcoalg_alts PROTO((struct Scoalg_alts *));
+
 extern __inline__ list *Rgcoalg_alts(struct Scoalg_alts *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcoalg_alts(struct Scoalg_alts *t)
 {
 #ifdef UGEN_DEBUG
@@ -849,6 +914,8 @@ extern list *Rgcoalg_alts PROTO((struct Scoalg_alts *));
 #define gcoalg_alts(xyzxyz) (*Rgcoalg_alts((struct Scoalg_alts *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoalg_alts(xyzxyz) (*Rgcoalg_alts((struct Scoalg_alts *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcoalg_deflt PROTO((struct Scoalg_alts *));
+
 extern __inline__ coresyn *Rgcoalg_deflt(struct Scoalg_alts *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoalg_deflt(struct Scoalg_alts *t)
 {
 #ifdef UGEN_DEBUG
@@ -866,6 +933,8 @@ extern coresyn *Rgcoalg_deflt PROTO((struct Scoalg_alts *));
 extern coresyn mkcoalg_alt PROTO((coresyn, list, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcoalg_alt PROTO((coresyn, list, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcoalg_con PROTO((struct Scoalg_alt *));
+
 extern __inline__ coresyn *Rgcoalg_con(struct Scoalg_alt *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoalg_con(struct Scoalg_alt *t)
 {
 #ifdef UGEN_DEBUG
@@ -881,6 +950,8 @@ extern coresyn *Rgcoalg_con PROTO((struct Scoalg_alt *));
 #define gcoalg_con(xyzxyz) (*Rgcoalg_con((struct Scoalg_alt *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoalg_con(xyzxyz) (*Rgcoalg_con((struct Scoalg_alt *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcoalg_bs PROTO((struct Scoalg_alt *));
+
 extern __inline__ list *Rgcoalg_bs(struct Scoalg_alt *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcoalg_bs(struct Scoalg_alt *t)
 {
 #ifdef UGEN_DEBUG
@@ -896,6 +967,8 @@ extern list *Rgcoalg_bs PROTO((struct Scoalg_alt *));
 #define gcoalg_bs(xyzxyz) (*Rgcoalg_bs((struct Scoalg_alt *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoalg_bs(xyzxyz) (*Rgcoalg_bs((struct Scoalg_alt *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcoalg_rhs PROTO((struct Scoalg_alt *));
+
 extern __inline__ coresyn *Rgcoalg_rhs(struct Scoalg_alt *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoalg_rhs(struct Scoalg_alt *t)
 {
 #ifdef UGEN_DEBUG
@@ -913,6 +986,8 @@ extern coresyn *Rgcoalg_rhs PROTO((struct Scoalg_alt *));
 extern coresyn mkcoprim_alts PROTO((list, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcoprim_alts PROTO((list, coresyn));
 #ifdef __GNUC__
 
+list *Rgcoprim_alts PROTO((struct Scoprim_alts *));
+
 extern __inline__ list *Rgcoprim_alts(struct Scoprim_alts *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcoprim_alts(struct Scoprim_alts *t)
 {
 #ifdef UGEN_DEBUG
@@ -928,6 +1003,8 @@ extern list *Rgcoprim_alts PROTO((struct Scoprim_alts *));
 #define gcoprim_alts(xyzxyz) (*Rgcoprim_alts((struct Scoprim_alts *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoprim_alts(xyzxyz) (*Rgcoprim_alts((struct Scoprim_alts *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcoprim_deflt PROTO((struct Scoprim_alts *));
+
 extern __inline__ coresyn *Rgcoprim_deflt(struct Scoprim_alts *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoprim_deflt(struct Scoprim_alts *t)
 {
 #ifdef UGEN_DEBUG
@@ -945,6 +1022,8 @@ extern coresyn *Rgcoprim_deflt PROTO((struct Scoprim_alts *));
 extern coresyn mkcoprim_alt PROTO((literal, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkcoprim_alt PROTO((literal, coresyn));
 #ifdef __GNUC__
 
+literal *Rgcoprim_lit PROTO((struct Scoprim_alt *));
+
 extern __inline__ literal *Rgcoprim_lit(struct Scoprim_alt *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ literal *Rgcoprim_lit(struct Scoprim_alt *t)
 {
 #ifdef UGEN_DEBUG
@@ -960,6 +1039,8 @@ extern literal *Rgcoprim_lit PROTO((struct Scoprim_alt *));
 #define gcoprim_lit(xyzxyz) (*Rgcoprim_lit((struct Scoprim_alt *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcoprim_lit(xyzxyz) (*Rgcoprim_lit((struct Scoprim_alt *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcoprim_rhs PROTO((struct Scoprim_alt *));
+
 extern __inline__ coresyn *Rgcoprim_rhs(struct Scoprim_alt *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcoprim_rhs(struct Scoprim_alt *t)
 {
 #ifdef UGEN_DEBUG
@@ -974,11 +1055,13 @@ extern coresyn *Rgcoprim_rhs PROTO((struct Scoprim_alt *));
 
 #define gcoprim_rhs(xyzxyz) (*Rgcoprim_rhs((struct Scoprim_alt *) (xyzxyz)))
 
 
 #define gcoprim_rhs(xyzxyz) (*Rgcoprim_rhs((struct Scoprim_alt *) (xyzxyz)))
 
-extern coresyn mkconodeflt PROTO(());
+extern coresyn mkconodeflt PROTO((void));
 
 extern coresyn mkcobinddeflt PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
 
 extern coresyn mkcobinddeflt PROTO((coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgcobinddeflt_v PROTO((struct Scobinddeflt *));
+
 extern __inline__ coresyn *Rgcobinddeflt_v(struct Scobinddeflt *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcobinddeflt_v(struct Scobinddeflt *t)
 {
 #ifdef UGEN_DEBUG
@@ -994,6 +1077,8 @@ extern coresyn *Rgcobinddeflt_v PROTO((struct Scobinddeflt *));
 #define gcobinddeflt_v(xyzxyz) (*Rgcobinddeflt_v((struct Scobinddeflt *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcobinddeflt_v(xyzxyz) (*Rgcobinddeflt_v((struct Scobinddeflt *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgcobinddeflt_rhs PROTO((struct Scobinddeflt *));
+
 extern __inline__ coresyn *Rgcobinddeflt_rhs(struct Scobinddeflt *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgcobinddeflt_rhs(struct Scobinddeflt *t)
 {
 #ifdef UGEN_DEBUG
@@ -1011,6 +1096,8 @@ extern coresyn *Rgcobinddeflt_rhs PROTO((struct Scobinddeflt *));
 extern coresyn mkco_primop PROTO((stringId));
 #ifdef __GNUC__
 
 extern coresyn mkco_primop PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgco_primop PROTO((struct Sco_primop *));
+
 extern __inline__ stringId *Rgco_primop(struct Sco_primop *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgco_primop(struct Sco_primop *t)
 {
 #ifdef UGEN_DEBUG
@@ -1028,6 +1115,8 @@ extern stringId *Rgco_primop PROTO((struct Sco_primop *));
 extern coresyn mkco_ccall PROTO((stringId, long, list, ttype));
 #ifdef __GNUC__
 
 extern coresyn mkco_ccall PROTO((stringId, long, list, ttype));
 #ifdef __GNUC__
 
+stringId *Rgco_ccall PROTO((struct Sco_ccall *));
+
 extern __inline__ stringId *Rgco_ccall(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgco_ccall(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
@@ -1043,6 +1132,8 @@ extern stringId *Rgco_ccall PROTO((struct Sco_ccall *));
 #define gco_ccall(xyzxyz) (*Rgco_ccall((struct Sco_ccall *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_ccall(xyzxyz) (*Rgco_ccall((struct Sco_ccall *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgco_ccall_may_gc PROTO((struct Sco_ccall *));
+
 extern __inline__ long *Rgco_ccall_may_gc(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgco_ccall_may_gc(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
@@ -1058,6 +1149,8 @@ extern long *Rgco_ccall_may_gc PROTO((struct Sco_ccall *));
 #define gco_ccall_may_gc(xyzxyz) (*Rgco_ccall_may_gc((struct Sco_ccall *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_ccall_may_gc(xyzxyz) (*Rgco_ccall_may_gc((struct Sco_ccall *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgco_ccall_arg_tys PROTO((struct Sco_ccall *));
+
 extern __inline__ list *Rgco_ccall_arg_tys(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgco_ccall_arg_tys(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
@@ -1073,6 +1166,8 @@ extern list *Rgco_ccall_arg_tys PROTO((struct Sco_ccall *));
 #define gco_ccall_arg_tys(xyzxyz) (*Rgco_ccall_arg_tys((struct Sco_ccall *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_ccall_arg_tys(xyzxyz) (*Rgco_ccall_arg_tys((struct Sco_ccall *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgco_ccall_res_ty PROTO((struct Sco_ccall *));
+
 extern __inline__ ttype *Rgco_ccall_res_ty(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgco_ccall_res_ty(struct Sco_ccall *t)
 {
 #ifdef UGEN_DEBUG
@@ -1090,6 +1185,8 @@ extern ttype *Rgco_ccall_res_ty PROTO((struct Sco_ccall *));
 extern coresyn mkco_casm PROTO((literal, long, list, ttype));
 #ifdef __GNUC__
 
 extern coresyn mkco_casm PROTO((literal, long, list, ttype));
 #ifdef __GNUC__
 
+literal *Rgco_casm PROTO((struct Sco_casm *));
+
 extern __inline__ literal *Rgco_casm(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ literal *Rgco_casm(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
@@ -1105,6 +1202,8 @@ extern literal *Rgco_casm PROTO((struct Sco_casm *));
 #define gco_casm(xyzxyz) (*Rgco_casm((struct Sco_casm *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_casm(xyzxyz) (*Rgco_casm((struct Sco_casm *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rgco_casm_may_gc PROTO((struct Sco_casm *));
+
 extern __inline__ long *Rgco_casm_may_gc(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rgco_casm_may_gc(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
@@ -1120,6 +1219,8 @@ extern long *Rgco_casm_may_gc PROTO((struct Sco_casm *));
 #define gco_casm_may_gc(xyzxyz) (*Rgco_casm_may_gc((struct Sco_casm *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_casm_may_gc(xyzxyz) (*Rgco_casm_may_gc((struct Sco_casm *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgco_casm_arg_tys PROTO((struct Sco_casm *));
+
 extern __inline__ list *Rgco_casm_arg_tys(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgco_casm_arg_tys(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
@@ -1135,6 +1236,8 @@ extern list *Rgco_casm_arg_tys PROTO((struct Sco_casm *));
 #define gco_casm_arg_tys(xyzxyz) (*Rgco_casm_arg_tys((struct Sco_casm *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_casm_arg_tys(xyzxyz) (*Rgco_casm_arg_tys((struct Sco_casm *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgco_casm_res_ty PROTO((struct Sco_casm *));
+
 extern __inline__ ttype *Rgco_casm_res_ty(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgco_casm_res_ty(struct Sco_casm *t)
 {
 #ifdef UGEN_DEBUG
@@ -1152,6 +1255,8 @@ extern ttype *Rgco_casm_res_ty PROTO((struct Sco_casm *));
 extern coresyn mkco_preludedictscc PROTO((coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkco_preludedictscc PROTO((coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgco_preludedictscc_dupd PROTO((struct Sco_preludedictscc *));
+
 extern __inline__ coresyn *Rgco_preludedictscc_dupd(struct Sco_preludedictscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_preludedictscc_dupd(struct Sco_preludedictscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1169,6 +1274,8 @@ extern coresyn *Rgco_preludedictscc_dupd PROTO((struct Sco_preludedictscc *));
 extern coresyn mkco_alldictscc PROTO((hstring, hstring, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkco_alldictscc PROTO((hstring, hstring, coresyn));
 #ifdef __GNUC__
 
+hstring *Rgco_alldictscc_m PROTO((struct Sco_alldictscc *));
+
 extern __inline__ hstring *Rgco_alldictscc_m(struct Sco_alldictscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_alldictscc_m(struct Sco_alldictscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1184,6 +1291,8 @@ extern hstring *Rgco_alldictscc_m PROTO((struct Sco_alldictscc *));
 #define gco_alldictscc_m(xyzxyz) (*Rgco_alldictscc_m((struct Sco_alldictscc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_alldictscc_m(xyzxyz) (*Rgco_alldictscc_m((struct Sco_alldictscc *) (xyzxyz)))
 #ifdef __GNUC__
 
+hstring *Rgco_alldictscc_g PROTO((struct Sco_alldictscc *));
+
 extern __inline__ hstring *Rgco_alldictscc_g(struct Sco_alldictscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_alldictscc_g(struct Sco_alldictscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1199,6 +1308,8 @@ extern hstring *Rgco_alldictscc_g PROTO((struct Sco_alldictscc *));
 #define gco_alldictscc_g(xyzxyz) (*Rgco_alldictscc_g((struct Sco_alldictscc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_alldictscc_g(xyzxyz) (*Rgco_alldictscc_g((struct Sco_alldictscc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgco_alldictscc_dupd PROTO((struct Sco_alldictscc *));
+
 extern __inline__ coresyn *Rgco_alldictscc_dupd(struct Sco_alldictscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_alldictscc_dupd(struct Sco_alldictscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1216,6 +1327,8 @@ extern coresyn *Rgco_alldictscc_dupd PROTO((struct Sco_alldictscc *));
 extern coresyn mkco_usercc PROTO((hstring, hstring, hstring, coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkco_usercc PROTO((hstring, hstring, hstring, coresyn, coresyn));
 #ifdef __GNUC__
 
+hstring *Rgco_usercc_n PROTO((struct Sco_usercc *));
+
 extern __inline__ hstring *Rgco_usercc_n(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_usercc_n(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1231,6 +1344,8 @@ extern hstring *Rgco_usercc_n PROTO((struct Sco_usercc *));
 #define gco_usercc_n(xyzxyz) (*Rgco_usercc_n((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_usercc_n(xyzxyz) (*Rgco_usercc_n((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
+hstring *Rgco_usercc_m PROTO((struct Sco_usercc *));
+
 extern __inline__ hstring *Rgco_usercc_m(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_usercc_m(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1246,6 +1361,8 @@ extern hstring *Rgco_usercc_m PROTO((struct Sco_usercc *));
 #define gco_usercc_m(xyzxyz) (*Rgco_usercc_m((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_usercc_m(xyzxyz) (*Rgco_usercc_m((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
+hstring *Rgco_usercc_g PROTO((struct Sco_usercc *));
+
 extern __inline__ hstring *Rgco_usercc_g(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_usercc_g(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1261,6 +1378,8 @@ extern hstring *Rgco_usercc_g PROTO((struct Sco_usercc *));
 #define gco_usercc_g(xyzxyz) (*Rgco_usercc_g((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_usercc_g(xyzxyz) (*Rgco_usercc_g((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgco_usercc_dupd PROTO((struct Sco_usercc *));
+
 extern __inline__ coresyn *Rgco_usercc_dupd(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_usercc_dupd(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1276,6 +1395,8 @@ extern coresyn *Rgco_usercc_dupd PROTO((struct Sco_usercc *));
 #define gco_usercc_dupd(xyzxyz) (*Rgco_usercc_dupd((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_usercc_dupd(xyzxyz) (*Rgco_usercc_dupd((struct Sco_usercc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgco_usercc_cafd PROTO((struct Sco_usercc *));
+
 extern __inline__ coresyn *Rgco_usercc_cafd(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_usercc_cafd(struct Sco_usercc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1293,6 +1414,8 @@ extern coresyn *Rgco_usercc_cafd PROTO((struct Sco_usercc *));
 extern coresyn mkco_autocc PROTO((coresyn, hstring, hstring, coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkco_autocc PROTO((coresyn, hstring, hstring, coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgco_autocc_i PROTO((struct Sco_autocc *));
+
 extern __inline__ coresyn *Rgco_autocc_i(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_autocc_i(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1308,6 +1431,8 @@ extern coresyn *Rgco_autocc_i PROTO((struct Sco_autocc *));
 #define gco_autocc_i(xyzxyz) (*Rgco_autocc_i((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_autocc_i(xyzxyz) (*Rgco_autocc_i((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
+hstring *Rgco_autocc_m PROTO((struct Sco_autocc *));
+
 extern __inline__ hstring *Rgco_autocc_m(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_autocc_m(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1323,6 +1448,8 @@ extern hstring *Rgco_autocc_m PROTO((struct Sco_autocc *));
 #define gco_autocc_m(xyzxyz) (*Rgco_autocc_m((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_autocc_m(xyzxyz) (*Rgco_autocc_m((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
+hstring *Rgco_autocc_g PROTO((struct Sco_autocc *));
+
 extern __inline__ hstring *Rgco_autocc_g(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_autocc_g(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1338,6 +1465,8 @@ extern hstring *Rgco_autocc_g PROTO((struct Sco_autocc *));
 #define gco_autocc_g(xyzxyz) (*Rgco_autocc_g((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_autocc_g(xyzxyz) (*Rgco_autocc_g((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgco_autocc_dupd PROTO((struct Sco_autocc *));
+
 extern __inline__ coresyn *Rgco_autocc_dupd(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_autocc_dupd(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1353,6 +1482,8 @@ extern coresyn *Rgco_autocc_dupd PROTO((struct Sco_autocc *));
 #define gco_autocc_dupd(xyzxyz) (*Rgco_autocc_dupd((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_autocc_dupd(xyzxyz) (*Rgco_autocc_dupd((struct Sco_autocc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgco_autocc_cafd PROTO((struct Sco_autocc *));
+
 extern __inline__ coresyn *Rgco_autocc_cafd(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_autocc_cafd(struct Sco_autocc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1370,6 +1501,8 @@ extern coresyn *Rgco_autocc_cafd PROTO((struct Sco_autocc *));
 extern coresyn mkco_dictcc PROTO((coresyn, hstring, hstring, coresyn, coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkco_dictcc PROTO((coresyn, hstring, hstring, coresyn, coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgco_dictcc_i PROTO((struct Sco_dictcc *));
+
 extern __inline__ coresyn *Rgco_dictcc_i(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_dictcc_i(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1385,6 +1518,8 @@ extern coresyn *Rgco_dictcc_i PROTO((struct Sco_dictcc *));
 #define gco_dictcc_i(xyzxyz) (*Rgco_dictcc_i((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_dictcc_i(xyzxyz) (*Rgco_dictcc_i((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
+hstring *Rgco_dictcc_m PROTO((struct Sco_dictcc *));
+
 extern __inline__ hstring *Rgco_dictcc_m(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_dictcc_m(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1400,6 +1535,8 @@ extern hstring *Rgco_dictcc_m PROTO((struct Sco_dictcc *));
 #define gco_dictcc_m(xyzxyz) (*Rgco_dictcc_m((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_dictcc_m(xyzxyz) (*Rgco_dictcc_m((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
+hstring *Rgco_dictcc_g PROTO((struct Sco_dictcc *));
+
 extern __inline__ hstring *Rgco_dictcc_g(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgco_dictcc_g(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1415,6 +1552,8 @@ extern hstring *Rgco_dictcc_g PROTO((struct Sco_dictcc *));
 #define gco_dictcc_g(xyzxyz) (*Rgco_dictcc_g((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_dictcc_g(xyzxyz) (*Rgco_dictcc_g((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgco_dictcc_dupd PROTO((struct Sco_dictcc *));
+
 extern __inline__ coresyn *Rgco_dictcc_dupd(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_dictcc_dupd(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1430,6 +1569,8 @@ extern coresyn *Rgco_dictcc_dupd PROTO((struct Sco_dictcc *));
 #define gco_dictcc_dupd(xyzxyz) (*Rgco_dictcc_dupd((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_dictcc_dupd(xyzxyz) (*Rgco_dictcc_dupd((struct Sco_dictcc *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgco_dictcc_cafd PROTO((struct Sco_dictcc *));
+
 extern __inline__ coresyn *Rgco_dictcc_cafd(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_dictcc_cafd(struct Sco_dictcc *t)
 {
 #ifdef UGEN_DEBUG
@@ -1444,17 +1585,19 @@ extern coresyn *Rgco_dictcc_cafd PROTO((struct Sco_dictcc *));
 
 #define gco_dictcc_cafd(xyzxyz) (*Rgco_dictcc_cafd((struct Sco_dictcc *) (xyzxyz)))
 
 
 #define gco_dictcc_cafd(xyzxyz) (*Rgco_dictcc_cafd((struct Sco_dictcc *) (xyzxyz)))
 
-extern coresyn mkco_scc_noncaf PROTO(());
+extern coresyn mkco_scc_noncaf PROTO((void));
 
 
-extern coresyn mkco_scc_caf PROTO(());
+extern coresyn mkco_scc_caf PROTO((void));
 
 
-extern coresyn mkco_scc_nondupd PROTO(());
+extern coresyn mkco_scc_nondupd PROTO((void));
 
 
-extern coresyn mkco_scc_dupd PROTO(());
+extern coresyn mkco_scc_dupd PROTO((void));
 
 extern coresyn mkco_id PROTO((stringId));
 #ifdef __GNUC__
 
 
 extern coresyn mkco_id PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgco_id PROTO((struct Sco_id *));
+
 extern __inline__ stringId *Rgco_id(struct Sco_id *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgco_id(struct Sco_id *t)
 {
 #ifdef UGEN_DEBUG
@@ -1472,6 +1615,8 @@ extern stringId *Rgco_id PROTO((struct Sco_id *));
 extern coresyn mkco_orig_id PROTO((stringId, stringId));
 #ifdef __GNUC__
 
 extern coresyn mkco_orig_id PROTO((stringId, stringId));
 #ifdef __GNUC__
 
+stringId *Rgco_orig_id_m PROTO((struct Sco_orig_id *));
+
 extern __inline__ stringId *Rgco_orig_id_m(struct Sco_orig_id *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgco_orig_id_m(struct Sco_orig_id *t)
 {
 #ifdef UGEN_DEBUG
@@ -1487,6 +1632,8 @@ extern stringId *Rgco_orig_id_m PROTO((struct Sco_orig_id *));
 #define gco_orig_id_m(xyzxyz) (*Rgco_orig_id_m((struct Sco_orig_id *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_orig_id_m(xyzxyz) (*Rgco_orig_id_m((struct Sco_orig_id *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgco_orig_id_n PROTO((struct Sco_orig_id *));
+
 extern __inline__ stringId *Rgco_orig_id_n(struct Sco_orig_id *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgco_orig_id_n(struct Sco_orig_id *t)
 {
 #ifdef UGEN_DEBUG
@@ -1504,6 +1651,8 @@ extern stringId *Rgco_orig_id_n PROTO((struct Sco_orig_id *));
 extern coresyn mkco_sdselid PROTO((unkId, unkId));
 #ifdef __GNUC__
 
 extern coresyn mkco_sdselid PROTO((unkId, unkId));
 #ifdef __GNUC__
 
+unkId *Rgco_sdselid_c PROTO((struct Sco_sdselid *));
+
 extern __inline__ unkId *Rgco_sdselid_c(struct Sco_sdselid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_sdselid_c(struct Sco_sdselid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1519,6 +1668,8 @@ extern unkId *Rgco_sdselid_c PROTO((struct Sco_sdselid *));
 #define gco_sdselid_c(xyzxyz) (*Rgco_sdselid_c((struct Sco_sdselid *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_sdselid_c(xyzxyz) (*Rgco_sdselid_c((struct Sco_sdselid *) (xyzxyz)))
 #ifdef __GNUC__
 
+unkId *Rgco_sdselid_sc PROTO((struct Sco_sdselid *));
+
 extern __inline__ unkId *Rgco_sdselid_sc(struct Sco_sdselid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_sdselid_sc(struct Sco_sdselid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1536,6 +1687,8 @@ extern unkId *Rgco_sdselid_sc PROTO((struct Sco_sdselid *));
 extern coresyn mkco_classopid PROTO((unkId, unkId));
 #ifdef __GNUC__
 
 extern coresyn mkco_classopid PROTO((unkId, unkId));
 #ifdef __GNUC__
 
+unkId *Rgco_classopid_c PROTO((struct Sco_classopid *));
+
 extern __inline__ unkId *Rgco_classopid_c(struct Sco_classopid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_classopid_c(struct Sco_classopid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1551,6 +1704,8 @@ extern unkId *Rgco_classopid_c PROTO((struct Sco_classopid *));
 #define gco_classopid_c(xyzxyz) (*Rgco_classopid_c((struct Sco_classopid *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_classopid_c(xyzxyz) (*Rgco_classopid_c((struct Sco_classopid *) (xyzxyz)))
 #ifdef __GNUC__
 
+unkId *Rgco_classopid_o PROTO((struct Sco_classopid *));
+
 extern __inline__ unkId *Rgco_classopid_o(struct Sco_classopid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_classopid_o(struct Sco_classopid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1568,6 +1723,8 @@ extern unkId *Rgco_classopid_o PROTO((struct Sco_classopid *));
 extern coresyn mkco_defmid PROTO((unkId, unkId));
 #ifdef __GNUC__
 
 extern coresyn mkco_defmid PROTO((unkId, unkId));
 #ifdef __GNUC__
 
+unkId *Rgco_defmid_c PROTO((struct Sco_defmid *));
+
 extern __inline__ unkId *Rgco_defmid_c(struct Sco_defmid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_defmid_c(struct Sco_defmid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1583,6 +1740,8 @@ extern unkId *Rgco_defmid_c PROTO((struct Sco_defmid *));
 #define gco_defmid_c(xyzxyz) (*Rgco_defmid_c((struct Sco_defmid *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_defmid_c(xyzxyz) (*Rgco_defmid_c((struct Sco_defmid *) (xyzxyz)))
 #ifdef __GNUC__
 
+unkId *Rgco_defmid_op PROTO((struct Sco_defmid *));
+
 extern __inline__ unkId *Rgco_defmid_op(struct Sco_defmid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_defmid_op(struct Sco_defmid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1600,6 +1759,8 @@ extern unkId *Rgco_defmid_op PROTO((struct Sco_defmid *));
 extern coresyn mkco_dfunid PROTO((unkId, ttype));
 #ifdef __GNUC__
 
 extern coresyn mkco_dfunid PROTO((unkId, ttype));
 #ifdef __GNUC__
 
+unkId *Rgco_dfunid_c PROTO((struct Sco_dfunid *));
+
 extern __inline__ unkId *Rgco_dfunid_c(struct Sco_dfunid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_dfunid_c(struct Sco_dfunid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1615,6 +1776,8 @@ extern unkId *Rgco_dfunid_c PROTO((struct Sco_dfunid *));
 #define gco_dfunid_c(xyzxyz) (*Rgco_dfunid_c((struct Sco_dfunid *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_dfunid_c(xyzxyz) (*Rgco_dfunid_c((struct Sco_dfunid *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgco_dfunid_ty PROTO((struct Sco_dfunid *));
+
 extern __inline__ ttype *Rgco_dfunid_ty(struct Sco_dfunid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgco_dfunid_ty(struct Sco_dfunid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1632,6 +1795,8 @@ extern ttype *Rgco_dfunid_ty PROTO((struct Sco_dfunid *));
 extern coresyn mkco_constmid PROTO((unkId, unkId, ttype));
 #ifdef __GNUC__
 
 extern coresyn mkco_constmid PROTO((unkId, unkId, ttype));
 #ifdef __GNUC__
 
+unkId *Rgco_constmid_c PROTO((struct Sco_constmid *));
+
 extern __inline__ unkId *Rgco_constmid_c(struct Sco_constmid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_constmid_c(struct Sco_constmid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1647,6 +1812,8 @@ extern unkId *Rgco_constmid_c PROTO((struct Sco_constmid *));
 #define gco_constmid_c(xyzxyz) (*Rgco_constmid_c((struct Sco_constmid *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_constmid_c(xyzxyz) (*Rgco_constmid_c((struct Sco_constmid *) (xyzxyz)))
 #ifdef __GNUC__
 
+unkId *Rgco_constmid_op PROTO((struct Sco_constmid *));
+
 extern __inline__ unkId *Rgco_constmid_op(struct Sco_constmid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgco_constmid_op(struct Sco_constmid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1662,6 +1829,8 @@ extern unkId *Rgco_constmid_op PROTO((struct Sco_constmid *));
 #define gco_constmid_op(xyzxyz) (*Rgco_constmid_op((struct Sco_constmid *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_constmid_op(xyzxyz) (*Rgco_constmid_op((struct Sco_constmid *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgco_constmid_ty PROTO((struct Sco_constmid *));
+
 extern __inline__ ttype *Rgco_constmid_ty(struct Sco_constmid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgco_constmid_ty(struct Sco_constmid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1679,6 +1848,8 @@ extern ttype *Rgco_constmid_ty PROTO((struct Sco_constmid *));
 extern coresyn mkco_specid PROTO((coresyn, list));
 #ifdef __GNUC__
 
 extern coresyn mkco_specid PROTO((coresyn, list));
 #ifdef __GNUC__
 
+coresyn *Rgco_specid_un PROTO((struct Sco_specid *));
+
 extern __inline__ coresyn *Rgco_specid_un(struct Sco_specid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_specid_un(struct Sco_specid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1694,6 +1865,8 @@ extern coresyn *Rgco_specid_un PROTO((struct Sco_specid *));
 #define gco_specid_un(xyzxyz) (*Rgco_specid_un((struct Sco_specid *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gco_specid_un(xyzxyz) (*Rgco_specid_un((struct Sco_specid *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgco_specid_tys PROTO((struct Sco_specid *));
+
 extern __inline__ list *Rgco_specid_tys(struct Sco_specid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgco_specid_tys(struct Sco_specid *t)
 {
 #ifdef UGEN_DEBUG
@@ -1711,6 +1884,8 @@ extern list *Rgco_specid_tys PROTO((struct Sco_specid *));
 extern coresyn mkco_wrkrid PROTO((coresyn));
 #ifdef __GNUC__
 
 extern coresyn mkco_wrkrid PROTO((coresyn));
 #ifdef __GNUC__
 
+coresyn *Rgco_wrkrid_un PROTO((struct Sco_wrkrid *));
+
 extern __inline__ coresyn *Rgco_wrkrid_un(struct Sco_wrkrid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgco_wrkrid_un(struct Sco_wrkrid *t)
 {
 #ifdef UGEN_DEBUG
index e376a72..d2c356c 100644 (file)
@@ -23,6 +23,7 @@ typedef enum {
 typedef struct { Tentidt tag; } *entidt;
 
 #ifdef __GNUC__
 typedef struct { Tentidt tag; } *entidt;
 
 #ifdef __GNUC__
+Tentidt tentidt(entidt t);
 extern __inline__ Tentidt tentidt(entidt t)
 {
        return(t -> tag);
 extern __inline__ Tentidt tentidt(entidt t)
 {
        return(t -> tag);
@@ -66,6 +67,8 @@ struct Sentmod {
 extern entidt mkentid PROTO((stringId));
 #ifdef __GNUC__
 
 extern entidt mkentid PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgentid PROTO((struct Sentid *));
+
 extern __inline__ stringId *Rgentid(struct Sentid *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgentid(struct Sentid *t)
 {
 #ifdef UGEN_DEBUG
@@ -83,6 +86,8 @@ extern stringId *Rgentid PROTO((struct Sentid *));
 extern entidt mkenttype PROTO((stringId));
 #ifdef __GNUC__
 
 extern entidt mkenttype PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgitentid PROTO((struct Senttype *));
+
 extern __inline__ stringId *Rgitentid(struct Senttype *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgitentid(struct Senttype *t)
 {
 #ifdef UGEN_DEBUG
@@ -100,6 +105,8 @@ extern stringId *Rgitentid PROTO((struct Senttype *));
 extern entidt mkenttypeall PROTO((stringId));
 #ifdef __GNUC__
 
 extern entidt mkenttypeall PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgatentid PROTO((struct Senttypeall *));
+
 extern __inline__ stringId *Rgatentid(struct Senttypeall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgatentid(struct Senttypeall *t)
 {
 #ifdef UGEN_DEBUG
@@ -117,6 +124,8 @@ extern stringId *Rgatentid PROTO((struct Senttypeall *));
 extern entidt mkenttypecons PROTO((stringId, list));
 #ifdef __GNUC__
 
 extern entidt mkenttypecons PROTO((stringId, list));
 #ifdef __GNUC__
 
+stringId *Rgctentid PROTO((struct Senttypecons *));
+
 extern __inline__ stringId *Rgctentid(struct Senttypecons *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgctentid(struct Senttypecons *t)
 {
 #ifdef UGEN_DEBUG
@@ -132,6 +141,8 @@ extern stringId *Rgctentid PROTO((struct Senttypecons *));
 #define gctentid(xyzxyz) (*Rgctentid((struct Senttypecons *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gctentid(xyzxyz) (*Rgctentid((struct Senttypecons *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgctentcons PROTO((struct Senttypecons *));
+
 extern __inline__ list *Rgctentcons(struct Senttypecons *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgctentcons(struct Senttypecons *t)
 {
 #ifdef UGEN_DEBUG
@@ -149,6 +160,8 @@ extern list *Rgctentcons PROTO((struct Senttypecons *));
 extern entidt mkentclass PROTO((stringId, list));
 #ifdef __GNUC__
 
 extern entidt mkentclass PROTO((stringId, list));
 #ifdef __GNUC__
 
+stringId *Rgcentid PROTO((struct Sentclass *));
+
 extern __inline__ stringId *Rgcentid(struct Sentclass *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgcentid(struct Sentclass *t)
 {
 #ifdef UGEN_DEBUG
@@ -164,6 +177,8 @@ extern stringId *Rgcentid PROTO((struct Sentclass *));
 #define gcentid(xyzxyz) (*Rgcentid((struct Sentclass *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcentid(xyzxyz) (*Rgcentid((struct Sentclass *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcentops PROTO((struct Sentclass *));
+
 extern __inline__ list *Rgcentops(struct Sentclass *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcentops(struct Sentclass *t)
 {
 #ifdef UGEN_DEBUG
@@ -181,6 +196,8 @@ extern list *Rgcentops PROTO((struct Sentclass *));
 extern entidt mkentmod PROTO((stringId));
 #ifdef __GNUC__
 
 extern entidt mkentmod PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgmentid PROTO((struct Sentmod *));
+
 extern __inline__ stringId *Rgmentid(struct Sentmod *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgmentid(struct Sentmod *t)
 {
 #ifdef UGEN_DEBUG
index d155b2b..504d5c9 100644 (file)
@@ -10,16 +10,6 @@ Tfinfot tfinfot(t)
 }
 
 
 }
 
 
-/************** nofinfo ******************/
-
-finfot mknofinfo()
-{
-       register struct Snofinfo *pp =
-               (struct Snofinfo *) malloc(sizeof(struct Snofinfo));
-       pp -> tag = nofinfo;
-       return((finfot)pp);
-}
-
 /************** finfo ******************/
 
 finfot mkfinfo(PPfi1, PPfi2)
 /************** finfo ******************/
 
 finfot mkfinfo(PPfi1, PPfi2)
index 52e8af0..98c7d31 100644 (file)
 #endif
 
 typedef enum {
 #endif
 
 typedef enum {
-       nofinfo,
        finfo
 } Tfinfot;
 
 typedef struct { Tfinfot tag; } *finfot;
 
 #ifdef __GNUC__
        finfo
 } Tfinfot;
 
 typedef struct { Tfinfot tag; } *finfot;
 
 #ifdef __GNUC__
+Tfinfot tfinfot(finfot t);
 extern __inline__ Tfinfot tfinfot(finfot t)
 {
        return(t -> tag);
 extern __inline__ Tfinfot tfinfot(finfot t)
 {
        return(t -> tag);
@@ -27,21 +27,17 @@ extern __inline__ Tfinfot tfinfot(finfot t)
 extern Tfinfot tfinfot PROTO((finfot));
 #endif /* ! __GNUC__ */
 
 extern Tfinfot tfinfot PROTO((finfot));
 #endif /* ! __GNUC__ */
 
-struct Snofinfo {
-       Tfinfot tag;
-};
-
 struct Sfinfo {
        Tfinfot tag;
        stringId Xfi1;
        stringId Xfi2;
 };
 
 struct Sfinfo {
        Tfinfot tag;
        stringId Xfi1;
        stringId Xfi2;
 };
 
-extern finfot mknofinfo PROTO(());
-
 extern finfot mkfinfo PROTO((stringId, stringId));
 #ifdef __GNUC__
 
 extern finfot mkfinfo PROTO((stringId, stringId));
 #ifdef __GNUC__
 
+stringId *Rfi1 PROTO((struct Sfinfo *));
+
 extern __inline__ stringId *Rfi1(struct Sfinfo *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rfi1(struct Sfinfo *t)
 {
 #ifdef UGEN_DEBUG
@@ -57,6 +53,8 @@ extern stringId *Rfi1 PROTO((struct Sfinfo *));
 #define fi1(xyzxyz) (*Rfi1((struct Sfinfo *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define fi1(xyzxyz) (*Rfi1((struct Sfinfo *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rfi2 PROTO((struct Sfinfo *));
+
 extern __inline__ stringId *Rfi2(struct Sfinfo *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rfi2(struct Sfinfo *t)
 {
 #ifdef UGEN_DEBUG
index 11a1115..65613c8 100644 (file)
@@ -12,7 +12,7 @@ Thpragma thpragma(t)
 
 /************** no_pragma ******************/
 
 
 /************** no_pragma ******************/
 
-hpragma mkno_pragma()
+hpragma mkno_pragma(void)
 {
        register struct Sno_pragma *pp =
                (struct Sno_pragma *) malloc(sizeof(struct Sno_pragma));
 {
        register struct Sno_pragma *pp =
                (struct Sno_pragma *) malloc(sizeof(struct Sno_pragma));
@@ -56,7 +56,7 @@ list *Rgprag_data_specs(t)
 
 /************** itype_pragma ******************/
 
 
 /************** itype_pragma ******************/
 
-hpragma mkitype_pragma()
+hpragma mkitype_pragma(void)
 {
        register struct Sitype_pragma *pp =
                (struct Sitype_pragma *) malloc(sizeof(struct Sitype_pragma));
 {
        register struct Sitype_pragma *pp =
                (struct Sitype_pragma *) malloc(sizeof(struct Sitype_pragma));
@@ -374,7 +374,7 @@ stringId *Rgprag_update_val(t)
 
 /************** ideforest_pragma ******************/
 
 
 /************** ideforest_pragma ******************/
 
-hpragma mkideforest_pragma()
+hpragma mkideforest_pragma(void)
 {
        register struct Sideforest_pragma *pp =
                (struct Sideforest_pragma *) malloc(sizeof(struct Sideforest_pragma));
 {
        register struct Sideforest_pragma *pp =
                (struct Sideforest_pragma *) malloc(sizeof(struct Sideforest_pragma));
@@ -474,7 +474,7 @@ coresyn *Rgprag_unfold_core(t)
 
 /************** iunfold_always ******************/
 
 
 /************** iunfold_always ******************/
 
-hpragma mkiunfold_always()
+hpragma mkiunfold_always(void)
 {
        register struct Siunfold_always *pp =
                (struct Siunfold_always *) malloc(sizeof(struct Siunfold_always));
 {
        register struct Siunfold_always *pp =
                (struct Siunfold_always *) malloc(sizeof(struct Siunfold_always));
index 8ba2ed5..068c3e6 100644 (file)
@@ -38,6 +38,7 @@ typedef enum {
 typedef struct { Thpragma tag; } *hpragma;
 
 #ifdef __GNUC__
 typedef struct { Thpragma tag; } *hpragma;
 
 #ifdef __GNUC__
+Thpragma thpragma(hpragma t);
 extern __inline__ Thpragma thpragma(hpragma t)
 {
        return(t -> tag);
 extern __inline__ Thpragma thpragma(hpragma t)
 {
        return(t -> tag);
@@ -170,11 +171,13 @@ struct Sidata_pragma_4s {
        list Xgprag_data_spec;
 };
 
        list Xgprag_data_spec;
 };
 
-extern hpragma mkno_pragma PROTO(());
+extern hpragma mkno_pragma PROTO((void));
 
 extern hpragma mkidata_pragma PROTO((list, list));
 #ifdef __GNUC__
 
 
 extern hpragma mkidata_pragma PROTO((list, list));
 #ifdef __GNUC__
 
+list *Rgprag_data_constrs PROTO((struct Sidata_pragma *));
+
 extern __inline__ list *Rgprag_data_constrs(struct Sidata_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_data_constrs(struct Sidata_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -190,6 +193,8 @@ extern list *Rgprag_data_constrs PROTO((struct Sidata_pragma *));
 #define gprag_data_constrs(xyzxyz) (*Rgprag_data_constrs((struct Sidata_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_data_constrs(xyzxyz) (*Rgprag_data_constrs((struct Sidata_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgprag_data_specs PROTO((struct Sidata_pragma *));
+
 extern __inline__ list *Rgprag_data_specs(struct Sidata_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_data_specs(struct Sidata_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -204,11 +209,13 @@ extern list *Rgprag_data_specs PROTO((struct Sidata_pragma *));
 
 #define gprag_data_specs(xyzxyz) (*Rgprag_data_specs((struct Sidata_pragma *) (xyzxyz)))
 
 
 #define gprag_data_specs(xyzxyz) (*Rgprag_data_specs((struct Sidata_pragma *) (xyzxyz)))
 
-extern hpragma mkitype_pragma PROTO(());
+extern hpragma mkitype_pragma PROTO((void));
 
 extern hpragma mkiclas_pragma PROTO((list));
 #ifdef __GNUC__
 
 
 extern hpragma mkiclas_pragma PROTO((list));
 #ifdef __GNUC__
 
+list *Rgprag_clas PROTO((struct Siclas_pragma *));
+
 extern __inline__ list *Rgprag_clas(struct Siclas_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_clas(struct Siclas_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -226,6 +233,8 @@ extern list *Rgprag_clas PROTO((struct Siclas_pragma *));
 extern hpragma mkiclasop_pragma PROTO((hpragma, hpragma));
 #ifdef __GNUC__
 
 extern hpragma mkiclasop_pragma PROTO((hpragma, hpragma));
 #ifdef __GNUC__
 
+hpragma *Rgprag_dsel PROTO((struct Siclasop_pragma *));
+
 extern __inline__ hpragma *Rgprag_dsel(struct Siclasop_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_dsel(struct Siclasop_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -241,6 +250,8 @@ extern hpragma *Rgprag_dsel PROTO((struct Siclasop_pragma *));
 #define gprag_dsel(xyzxyz) (*Rgprag_dsel((struct Siclasop_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_dsel(xyzxyz) (*Rgprag_dsel((struct Siclasop_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_defm PROTO((struct Siclasop_pragma *));
+
 extern __inline__ hpragma *Rgprag_defm(struct Siclasop_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_defm(struct Siclasop_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -258,6 +269,8 @@ extern hpragma *Rgprag_defm PROTO((struct Siclasop_pragma *));
 extern hpragma mkiinst_simpl_pragma PROTO((stringId, hpragma));
 #ifdef __GNUC__
 
 extern hpragma mkiinst_simpl_pragma PROTO((stringId, hpragma));
 #ifdef __GNUC__
 
+stringId *Rgprag_imod_simpl PROTO((struct Siinst_simpl_pragma *));
+
 extern __inline__ stringId *Rgprag_imod_simpl(struct Siinst_simpl_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgprag_imod_simpl(struct Siinst_simpl_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -273,6 +286,8 @@ extern stringId *Rgprag_imod_simpl PROTO((struct Siinst_simpl_pragma *));
 #define gprag_imod_simpl(xyzxyz) (*Rgprag_imod_simpl((struct Siinst_simpl_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_imod_simpl(xyzxyz) (*Rgprag_imod_simpl((struct Siinst_simpl_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_dfun_simpl PROTO((struct Siinst_simpl_pragma *));
+
 extern __inline__ hpragma *Rgprag_dfun_simpl(struct Siinst_simpl_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_dfun_simpl(struct Siinst_simpl_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -290,6 +305,8 @@ extern hpragma *Rgprag_dfun_simpl PROTO((struct Siinst_simpl_pragma *));
 extern hpragma mkiinst_const_pragma PROTO((stringId, hpragma, list));
 #ifdef __GNUC__
 
 extern hpragma mkiinst_const_pragma PROTO((stringId, hpragma, list));
 #ifdef __GNUC__
 
+stringId *Rgprag_imod_const PROTO((struct Siinst_const_pragma *));
+
 extern __inline__ stringId *Rgprag_imod_const(struct Siinst_const_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgprag_imod_const(struct Siinst_const_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -305,6 +322,8 @@ extern stringId *Rgprag_imod_const PROTO((struct Siinst_const_pragma *));
 #define gprag_imod_const(xyzxyz) (*Rgprag_imod_const((struct Siinst_const_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_imod_const(xyzxyz) (*Rgprag_imod_const((struct Siinst_const_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_dfun_const PROTO((struct Siinst_const_pragma *));
+
 extern __inline__ hpragma *Rgprag_dfun_const(struct Siinst_const_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_dfun_const(struct Siinst_const_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -320,6 +339,8 @@ extern hpragma *Rgprag_dfun_const PROTO((struct Siinst_const_pragma *));
 #define gprag_dfun_const(xyzxyz) (*Rgprag_dfun_const((struct Siinst_const_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_dfun_const(xyzxyz) (*Rgprag_dfun_const((struct Siinst_const_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgprag_constms PROTO((struct Siinst_const_pragma *));
+
 extern __inline__ list *Rgprag_constms(struct Siinst_const_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_constms(struct Siinst_const_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -337,6 +358,8 @@ extern list *Rgprag_constms PROTO((struct Siinst_const_pragma *));
 extern hpragma mkiinst_spec_pragma PROTO((stringId, hpragma, list));
 #ifdef __GNUC__
 
 extern hpragma mkiinst_spec_pragma PROTO((stringId, hpragma, list));
 #ifdef __GNUC__
 
+stringId *Rgprag_imod_spec PROTO((struct Siinst_spec_pragma *));
+
 extern __inline__ stringId *Rgprag_imod_spec(struct Siinst_spec_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgprag_imod_spec(struct Siinst_spec_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -352,6 +375,8 @@ extern stringId *Rgprag_imod_spec PROTO((struct Siinst_spec_pragma *));
 #define gprag_imod_spec(xyzxyz) (*Rgprag_imod_spec((struct Siinst_spec_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_imod_spec(xyzxyz) (*Rgprag_imod_spec((struct Siinst_spec_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_dfun_spec PROTO((struct Siinst_spec_pragma *));
+
 extern __inline__ hpragma *Rgprag_dfun_spec(struct Siinst_spec_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_dfun_spec(struct Siinst_spec_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -367,6 +392,8 @@ extern hpragma *Rgprag_dfun_spec PROTO((struct Siinst_spec_pragma *));
 #define gprag_dfun_spec(xyzxyz) (*Rgprag_dfun_spec((struct Siinst_spec_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_dfun_spec(xyzxyz) (*Rgprag_dfun_spec((struct Siinst_spec_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgprag_inst_specs PROTO((struct Siinst_spec_pragma *));
+
 extern __inline__ list *Rgprag_inst_specs(struct Siinst_spec_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_inst_specs(struct Siinst_spec_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -384,6 +411,8 @@ extern list *Rgprag_inst_specs PROTO((struct Siinst_spec_pragma *));
 extern hpragma mkigen_pragma PROTO((hpragma, hpragma, hpragma, hpragma, hpragma, list));
 #ifdef __GNUC__
 
 extern hpragma mkigen_pragma PROTO((hpragma, hpragma, hpragma, hpragma, hpragma, list));
 #ifdef __GNUC__
 
+hpragma *Rgprag_arity PROTO((struct Sigen_pragma *));
+
 extern __inline__ hpragma *Rgprag_arity(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_arity(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -399,6 +428,8 @@ extern hpragma *Rgprag_arity PROTO((struct Sigen_pragma *));
 #define gprag_arity(xyzxyz) (*Rgprag_arity((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_arity(xyzxyz) (*Rgprag_arity((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_update PROTO((struct Sigen_pragma *));
+
 extern __inline__ hpragma *Rgprag_update(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_update(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -414,6 +445,8 @@ extern hpragma *Rgprag_update PROTO((struct Sigen_pragma *));
 #define gprag_update(xyzxyz) (*Rgprag_update((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_update(xyzxyz) (*Rgprag_update((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_deforest PROTO((struct Sigen_pragma *));
+
 extern __inline__ hpragma *Rgprag_deforest(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_deforest(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -429,6 +462,8 @@ extern hpragma *Rgprag_deforest PROTO((struct Sigen_pragma *));
 #define gprag_deforest(xyzxyz) (*Rgprag_deforest((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_deforest(xyzxyz) (*Rgprag_deforest((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_strictness PROTO((struct Sigen_pragma *));
+
 extern __inline__ hpragma *Rgprag_strictness(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_strictness(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -444,6 +479,8 @@ extern hpragma *Rgprag_strictness PROTO((struct Sigen_pragma *));
 #define gprag_strictness(xyzxyz) (*Rgprag_strictness((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_strictness(xyzxyz) (*Rgprag_strictness((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_unfolding PROTO((struct Sigen_pragma *));
+
 extern __inline__ hpragma *Rgprag_unfolding(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_unfolding(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -459,6 +496,8 @@ extern hpragma *Rgprag_unfolding PROTO((struct Sigen_pragma *));
 #define gprag_unfolding(xyzxyz) (*Rgprag_unfolding((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_unfolding(xyzxyz) (*Rgprag_unfolding((struct Sigen_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgprag_specs PROTO((struct Sigen_pragma *));
+
 extern __inline__ list *Rgprag_specs(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_specs(struct Sigen_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -476,6 +515,8 @@ extern list *Rgprag_specs PROTO((struct Sigen_pragma *));
 extern hpragma mkiarity_pragma PROTO((numId));
 #ifdef __GNUC__
 
 extern hpragma mkiarity_pragma PROTO((numId));
 #ifdef __GNUC__
 
+numId *Rgprag_arity_val PROTO((struct Siarity_pragma *));
+
 extern __inline__ numId *Rgprag_arity_val(struct Siarity_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ numId *Rgprag_arity_val(struct Siarity_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -493,6 +534,8 @@ extern numId *Rgprag_arity_val PROTO((struct Siarity_pragma *));
 extern hpragma mkiupdate_pragma PROTO((stringId));
 #ifdef __GNUC__
 
 extern hpragma mkiupdate_pragma PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgprag_update_val PROTO((struct Siupdate_pragma *));
+
 extern __inline__ stringId *Rgprag_update_val(struct Siupdate_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgprag_update_val(struct Siupdate_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -507,11 +550,13 @@ extern stringId *Rgprag_update_val PROTO((struct Siupdate_pragma *));
 
 #define gprag_update_val(xyzxyz) (*Rgprag_update_val((struct Siupdate_pragma *) (xyzxyz)))
 
 
 #define gprag_update_val(xyzxyz) (*Rgprag_update_val((struct Siupdate_pragma *) (xyzxyz)))
 
-extern hpragma mkideforest_pragma PROTO(());
+extern hpragma mkideforest_pragma PROTO((void));
 
 extern hpragma mkistrictness_pragma PROTO((hstring, hpragma));
 #ifdef __GNUC__
 
 
 extern hpragma mkistrictness_pragma PROTO((hstring, hpragma));
 #ifdef __GNUC__
 
+hstring *Rgprag_strict_spec PROTO((struct Sistrictness_pragma *));
+
 extern __inline__ hstring *Rgprag_strict_spec(struct Sistrictness_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgprag_strict_spec(struct Sistrictness_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -527,6 +572,8 @@ extern hstring *Rgprag_strict_spec PROTO((struct Sistrictness_pragma *));
 #define gprag_strict_spec(xyzxyz) (*Rgprag_strict_spec((struct Sistrictness_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_strict_spec(xyzxyz) (*Rgprag_strict_spec((struct Sistrictness_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_strict_wrkr PROTO((struct Sistrictness_pragma *));
+
 extern __inline__ hpragma *Rgprag_strict_wrkr(struct Sistrictness_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_strict_wrkr(struct Sistrictness_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -544,6 +591,8 @@ extern hpragma *Rgprag_strict_wrkr PROTO((struct Sistrictness_pragma *));
 extern hpragma mkimagic_unfolding_pragma PROTO((stringId));
 #ifdef __GNUC__
 
 extern hpragma mkimagic_unfolding_pragma PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgprag_magic_str PROTO((struct Simagic_unfolding_pragma *));
+
 extern __inline__ stringId *Rgprag_magic_str(struct Simagic_unfolding_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgprag_magic_str(struct Simagic_unfolding_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -561,6 +610,8 @@ extern stringId *Rgprag_magic_str PROTO((struct Simagic_unfolding_pragma *));
 extern hpragma mkiunfolding_pragma PROTO((hpragma, coresyn));
 #ifdef __GNUC__
 
 extern hpragma mkiunfolding_pragma PROTO((hpragma, coresyn));
 #ifdef __GNUC__
 
+hpragma *Rgprag_unfold_guide PROTO((struct Siunfolding_pragma *));
+
 extern __inline__ hpragma *Rgprag_unfold_guide(struct Siunfolding_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_unfold_guide(struct Siunfolding_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -576,6 +627,8 @@ extern hpragma *Rgprag_unfold_guide PROTO((struct Siunfolding_pragma *));
 #define gprag_unfold_guide(xyzxyz) (*Rgprag_unfold_guide((struct Siunfolding_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_unfold_guide(xyzxyz) (*Rgprag_unfold_guide((struct Siunfolding_pragma *) (xyzxyz)))
 #ifdef __GNUC__
 
+coresyn *Rgprag_unfold_core PROTO((struct Siunfolding_pragma *));
+
 extern __inline__ coresyn *Rgprag_unfold_core(struct Siunfolding_pragma *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ coresyn *Rgprag_unfold_core(struct Siunfolding_pragma *t)
 {
 #ifdef UGEN_DEBUG
@@ -590,11 +643,13 @@ extern coresyn *Rgprag_unfold_core PROTO((struct Siunfolding_pragma *));
 
 #define gprag_unfold_core(xyzxyz) (*Rgprag_unfold_core((struct Siunfolding_pragma *) (xyzxyz)))
 
 
 #define gprag_unfold_core(xyzxyz) (*Rgprag_unfold_core((struct Siunfolding_pragma *) (xyzxyz)))
 
-extern hpragma mkiunfold_always PROTO(());
+extern hpragma mkiunfold_always PROTO((void));
 
 extern hpragma mkiunfold_if_args PROTO((numId, numId, stringId, numId));
 #ifdef __GNUC__
 
 
 extern hpragma mkiunfold_if_args PROTO((numId, numId, stringId, numId));
 #ifdef __GNUC__
 
+numId *Rgprag_unfold_if_t_args PROTO((struct Siunfold_if_args *));
+
 extern __inline__ numId *Rgprag_unfold_if_t_args(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ numId *Rgprag_unfold_if_t_args(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
@@ -610,6 +665,8 @@ extern numId *Rgprag_unfold_if_t_args PROTO((struct Siunfold_if_args *));
 #define gprag_unfold_if_t_args(xyzxyz) (*Rgprag_unfold_if_t_args((struct Siunfold_if_args *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_unfold_if_t_args(xyzxyz) (*Rgprag_unfold_if_t_args((struct Siunfold_if_args *) (xyzxyz)))
 #ifdef __GNUC__
 
+numId *Rgprag_unfold_if_v_args PROTO((struct Siunfold_if_args *));
+
 extern __inline__ numId *Rgprag_unfold_if_v_args(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ numId *Rgprag_unfold_if_v_args(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
@@ -625,6 +682,8 @@ extern numId *Rgprag_unfold_if_v_args PROTO((struct Siunfold_if_args *));
 #define gprag_unfold_if_v_args(xyzxyz) (*Rgprag_unfold_if_v_args((struct Siunfold_if_args *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_unfold_if_v_args(xyzxyz) (*Rgprag_unfold_if_v_args((struct Siunfold_if_args *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgprag_unfold_if_con_args PROTO((struct Siunfold_if_args *));
+
 extern __inline__ stringId *Rgprag_unfold_if_con_args(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgprag_unfold_if_con_args(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
@@ -640,6 +699,8 @@ extern stringId *Rgprag_unfold_if_con_args PROTO((struct Siunfold_if_args *));
 #define gprag_unfold_if_con_args(xyzxyz) (*Rgprag_unfold_if_con_args((struct Siunfold_if_args *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_unfold_if_con_args(xyzxyz) (*Rgprag_unfold_if_con_args((struct Siunfold_if_args *) (xyzxyz)))
 #ifdef __GNUC__
 
+numId *Rgprag_unfold_if_size PROTO((struct Siunfold_if_args *));
+
 extern __inline__ numId *Rgprag_unfold_if_size(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ numId *Rgprag_unfold_if_size(struct Siunfold_if_args *t)
 {
 #ifdef UGEN_DEBUG
@@ -657,6 +718,8 @@ extern numId *Rgprag_unfold_if_size PROTO((struct Siunfold_if_args *));
 extern hpragma mkiname_pragma_pr PROTO((unkId, hpragma));
 #ifdef __GNUC__
 
 extern hpragma mkiname_pragma_pr PROTO((unkId, hpragma));
 #ifdef __GNUC__
 
+unkId *Rgprag_name_pr1 PROTO((struct Siname_pragma_pr *));
+
 extern __inline__ unkId *Rgprag_name_pr1(struct Siname_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgprag_name_pr1(struct Siname_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
@@ -672,6 +735,8 @@ extern unkId *Rgprag_name_pr1 PROTO((struct Siname_pragma_pr *));
 #define gprag_name_pr1(xyzxyz) (*Rgprag_name_pr1((struct Siname_pragma_pr *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_name_pr1(xyzxyz) (*Rgprag_name_pr1((struct Siname_pragma_pr *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_name_pr2 PROTO((struct Siname_pragma_pr *));
+
 extern __inline__ hpragma *Rgprag_name_pr2(struct Siname_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_name_pr2(struct Siname_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
@@ -689,6 +754,8 @@ extern hpragma *Rgprag_name_pr2 PROTO((struct Siname_pragma_pr *));
 extern hpragma mkitype_pragma_pr PROTO((list, numId, hpragma));
 #ifdef __GNUC__
 
 extern hpragma mkitype_pragma_pr PROTO((list, numId, hpragma));
 #ifdef __GNUC__
 
+list *Rgprag_type_pr1 PROTO((struct Sitype_pragma_pr *));
+
 extern __inline__ list *Rgprag_type_pr1(struct Sitype_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_type_pr1(struct Sitype_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
@@ -704,6 +771,8 @@ extern list *Rgprag_type_pr1 PROTO((struct Sitype_pragma_pr *));
 #define gprag_type_pr1(xyzxyz) (*Rgprag_type_pr1((struct Sitype_pragma_pr *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_type_pr1(xyzxyz) (*Rgprag_type_pr1((struct Sitype_pragma_pr *) (xyzxyz)))
 #ifdef __GNUC__
 
+numId *Rgprag_type_pr2 PROTO((struct Sitype_pragma_pr *));
+
 extern __inline__ numId *Rgprag_type_pr2(struct Sitype_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ numId *Rgprag_type_pr2(struct Sitype_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
@@ -719,6 +788,8 @@ extern numId *Rgprag_type_pr2 PROTO((struct Sitype_pragma_pr *));
 #define gprag_type_pr2(xyzxyz) (*Rgprag_type_pr2((struct Sitype_pragma_pr *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_type_pr2(xyzxyz) (*Rgprag_type_pr2((struct Sitype_pragma_pr *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_type_pr3 PROTO((struct Sitype_pragma_pr *));
+
 extern __inline__ hpragma *Rgprag_type_pr3(struct Sitype_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_type_pr3(struct Sitype_pragma_pr *t)
 {
 #ifdef UGEN_DEBUG
@@ -736,6 +807,8 @@ extern hpragma *Rgprag_type_pr3 PROTO((struct Sitype_pragma_pr *));
 extern hpragma mkiinst_pragma_3s PROTO((list, numId, hpragma, list));
 #ifdef __GNUC__
 
 extern hpragma mkiinst_pragma_3s PROTO((list, numId, hpragma, list));
 #ifdef __GNUC__
 
+list *Rgprag_inst_pt1 PROTO((struct Siinst_pragma_3s *));
+
 extern __inline__ list *Rgprag_inst_pt1(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_inst_pt1(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
@@ -751,6 +824,8 @@ extern list *Rgprag_inst_pt1 PROTO((struct Siinst_pragma_3s *));
 #define gprag_inst_pt1(xyzxyz) (*Rgprag_inst_pt1((struct Siinst_pragma_3s *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_inst_pt1(xyzxyz) (*Rgprag_inst_pt1((struct Siinst_pragma_3s *) (xyzxyz)))
 #ifdef __GNUC__
 
+numId *Rgprag_inst_pt2 PROTO((struct Siinst_pragma_3s *));
+
 extern __inline__ numId *Rgprag_inst_pt2(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ numId *Rgprag_inst_pt2(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
@@ -766,6 +841,8 @@ extern numId *Rgprag_inst_pt2 PROTO((struct Siinst_pragma_3s *));
 #define gprag_inst_pt2(xyzxyz) (*Rgprag_inst_pt2((struct Siinst_pragma_3s *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_inst_pt2(xyzxyz) (*Rgprag_inst_pt2((struct Siinst_pragma_3s *) (xyzxyz)))
 #ifdef __GNUC__
 
+hpragma *Rgprag_inst_pt3 PROTO((struct Siinst_pragma_3s *));
+
 extern __inline__ hpragma *Rgprag_inst_pt3(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hpragma *Rgprag_inst_pt3(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
@@ -781,6 +858,8 @@ extern hpragma *Rgprag_inst_pt3 PROTO((struct Siinst_pragma_3s *));
 #define gprag_inst_pt3(xyzxyz) (*Rgprag_inst_pt3((struct Siinst_pragma_3s *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gprag_inst_pt3(xyzxyz) (*Rgprag_inst_pt3((struct Siinst_pragma_3s *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgprag_inst_pt4 PROTO((struct Siinst_pragma_3s *));
+
 extern __inline__ list *Rgprag_inst_pt4(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_inst_pt4(struct Siinst_pragma_3s *t)
 {
 #ifdef UGEN_DEBUG
@@ -798,6 +877,8 @@ extern list *Rgprag_inst_pt4 PROTO((struct Siinst_pragma_3s *));
 extern hpragma mkidata_pragma_4s PROTO((list));
 #ifdef __GNUC__
 
 extern hpragma mkidata_pragma_4s PROTO((list));
 #ifdef __GNUC__
 
+list *Rgprag_data_spec PROTO((struct Sidata_pragma_4s *));
+
 extern __inline__ list *Rgprag_data_spec(struct Sidata_pragma_4s *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgprag_data_spec(struct Sidata_pragma_4s *t)
 {
 #ifdef UGEN_DEBUG
index 20c54d3..768b8a2 100644 (file)
@@ -1,10 +1,12 @@
 /* A lexical scanner generated by flex */
 
 /* Scanner skeleton version:
 /* A lexical scanner generated by flex */
 
 /* Scanner skeleton version:
- * $Header: /srv/cvs/cvs.haskell.org/fptools/ghc/compiler/yaccParser/Attic/hslexer.c,v 1.1 1996/01/08 20:15:54 partain Exp $
+ * $Header: /srv/cvs/cvs.haskell.org/fptools/ghc/compiler/yaccParser/Attic/hslexer.c,v 1.2 1996/01/12 11:36:07 partain Exp $
  */
 
 #define FLEX_SCANNER
  */
 
 #define FLEX_SCANNER
+#define YY_FLEX_MAJOR_VERSION 2
+#define YY_FLEX_MINOR_VERSION 5
 
 #include <stdio.h>
 
 
 #include <stdio.h>
 
@@ -30,7 +32,7 @@
 
 #else  /* ! __cplusplus */
 
 
 #else  /* ! __cplusplus */
 
-#ifdef __STDC__
+#if __STDC__
 
 #define YY_USE_PROTOS
 #define YY_USE_CONST
 
 #define YY_USE_PROTOS
 #define YY_USE_CONST
 #endif /* __STDC__ */
 #endif /* ! __cplusplus */
 
 #endif /* __STDC__ */
 #endif /* ! __cplusplus */
 
-
 #ifdef __TURBOC__
 #ifdef __TURBOC__
+ #pragma warn -rch
+ #pragma warn -use
+#include <io.h>
+#include <stdlib.h>
 #define YY_USE_CONST
 #define YY_USE_CONST
+#define YY_USE_PROTOS
 #endif
 
 #endif
 
-
-#ifndef YY_USE_CONST
-#ifndef const
-#define const
-#endif
+#ifdef YY_USE_CONST
+#define yyconst const
+#else
+#define yyconst
 #endif
 
 
 #endif
 
 
 #define BEGIN yy_start = 1 + 2 *
 
 /* Translate the current start state into a value that can be later handed
 #define BEGIN yy_start = 1 + 2 *
 
 /* Translate the current start state into a value that can be later handed
- * to BEGIN to return to the state.
+ * to BEGIN to return to the state.  The YYSTATE alias is for lex
+ * compatibility.
  */
 #define YY_START ((yy_start - 1) / 2)
  */
 #define YY_START ((yy_start - 1) / 2)
+#define YYSTATE YY_START
 
 /* Action number for EOF rule of a given start state. */
 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
 
 
 /* Action number for EOF rule of a given start state. */
 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
 
-/* Special action meaning "start processing a new file".  Now included
- * only for backward compatibility with previous versions of flex.
- */
+/* Special action meaning "start processing a new file". */
 #define YY_NEW_FILE yyrestart( yyin )
 
 #define YY_END_OF_BUFFER_CHAR 0
 #define YY_NEW_FILE yyrestart( yyin )
 
 #define YY_END_OF_BUFFER_CHAR 0
@@ -96,14 +101,6 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE;
 extern int yyleng;
 extern FILE *yyin, *yyout;
 
 extern int yyleng;
 extern FILE *yyin, *yyout;
 
-#ifdef __cplusplus
-extern "C" {
-#endif
-       extern int yywrap YY_PROTO(( void ));
-#ifdef __cplusplus
-       }
-#endif
-
 #define EOB_ACT_CONTINUE_SCAN 0
 #define EOB_ACT_END_OF_FILE 1
 #define EOB_ACT_LAST_MATCH 2
 #define EOB_ACT_CONTINUE_SCAN 0
 #define EOB_ACT_END_OF_FILE 1
 #define EOB_ACT_LAST_MATCH 2
@@ -136,6 +133,12 @@ extern "C" {
 
 #define unput(c) yyunput( c, yytext_ptr )
 
 
 #define unput(c) yyunput( c, yytext_ptr )
 
+/* The following is because we cannot portably get our hands on size_t
+ * (without autoconf's help, which isn't available because we want
+ * flex-generated scanners to compile on their own).
+ */
+typedef unsigned int yy_size_t;
+
 
 struct yy_buffer_state
        {
 
 struct yy_buffer_state
        {
@@ -147,13 +150,19 @@ struct yy_buffer_state
        /* Size of input buffer in bytes, not including room for EOB
         * characters.
         */
        /* Size of input buffer in bytes, not including room for EOB
         * characters.
         */
-       int yy_buf_size;
+       yy_size_t yy_buf_size;
 
        /* Number of characters read into yy_ch_buf, not including EOB
         * characters.
         */
        int yy_n_chars;
 
 
        /* Number of characters read into yy_ch_buf, not including EOB
         * characters.
         */
        int yy_n_chars;
 
+       /* Whether we "own" the buffer - i.e., we know we created it,
+        * and can realloc() it to grow it, and should free() it to
+        * delete it.
+        */
+       int yy_is_our_buffer;
+
        /* Whether this is an "interactive" input source; if so, and
         * if we're using stdio for input, then we want to use getc()
         * instead of fread(), to make sure we stop fetching input after
        /* Whether this is an "interactive" input source; if so, and
         * if we're using stdio for input, then we want to use getc()
         * instead of fread(), to make sure we stop fetching input after
@@ -161,6 +170,12 @@ struct yy_buffer_state
         */
        int yy_is_interactive;
 
         */
        int yy_is_interactive;
 
+       /* Whether we're considered to be at the beginning of a line.
+        * If so, '^' rules will be active on the next match, otherwise
+        * not.
+        */
+       int yy_at_bol;
+
        /* Whether to try to fill the input buffer when we reach the
         * end of it.
         */
        /* Whether to try to fill the input buffer when we reach the
         * end of it.
         */
@@ -209,70 +224,66 @@ static int yy_start = 0;  /* start state number */
  */
 static int yy_did_buffer_switch_on_eof;
 
  */
 static int yy_did_buffer_switch_on_eof;
 
-static void yyunput YY_PROTO(( int c, char *buf_ptr ));
 void yyrestart YY_PROTO(( FILE *input_file ));
 void yyrestart YY_PROTO(( FILE *input_file ));
+
 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
 void yy_load_buffer_state YY_PROTO(( void ));
 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
 void yy_load_buffer_state YY_PROTO(( void ));
 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
+void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
+#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
 
 
-static int yy_start_stack_ptr = 0;
-static int yy_start_stack_depth = 0;
-static int *yy_start_stack = 0;
-static void yy_push_state YY_PROTO(( int new_state ));
-static void yy_pop_state YY_PROTO(( void ));
-static int yy_top_state YY_PROTO(( void ));
+YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
+YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *str ));
+YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
 
 
-static void *yy_flex_alloc YY_PROTO(( unsigned int ));
-static void *yy_flex_realloc YY_PROTO(( void *, unsigned int ));
+static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
+static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
 static void yy_flex_free YY_PROTO(( void * ));
 
 #define yy_new_buffer yy_create_buffer
 
 static void yy_flex_free YY_PROTO(( void * ));
 
 #define yy_new_buffer yy_create_buffer
 
-#define INITIAL 0
-#define Char 1
-#define CharEsc 2
-#define Code 3
-#define Comment 4
-#define GlaExt 5
-#define GhcPragma 6
-#define UserPragma 7
-#define String 8
-#define StringEsc 9
+#define yy_set_interactive(is_interactive) \
+       { \
+       if ( ! yy_current_buffer ) \
+               yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
+       yy_current_buffer->yy_is_interactive = is_interactive; \
+       }
+
+#define yy_set_bol(at_bol) \
+       { \
+       if ( ! yy_current_buffer ) \
+               yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
+       yy_current_buffer->yy_at_bol = at_bol; \
+       }
+
+#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
+
 typedef unsigned char YY_CHAR;
 typedef unsigned char YY_CHAR;
-typedef int yy_state_type;
 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
+typedef int yy_state_type;
 extern char *yytext;
 #define yytext_ptr yytext
 
 extern char *yytext;
 #define yytext_ptr yytext
 
-#ifndef yytext_ptr
-static void yy_flex_strncpy YY_PROTO(( char *, const char *, int ));
-#endif
-
-#ifdef __cplusplus
-static int yyinput YY_PROTO(( void ));
-#else
-static int input YY_PROTO(( void ));
-#endif
-
 static yy_state_type yy_get_previous_state YY_PROTO(( void ));
 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
 static int yy_get_next_buffer YY_PROTO(( void ));
 static yy_state_type yy_get_previous_state YY_PROTO(( void ));
 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
 static int yy_get_next_buffer YY_PROTO(( void ));
-static void yy_fatal_error YY_PROTO(( const char msg[] ));
+static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
 
 /* Done after the current pattern has been matched and before the
  * corresponding action - sets up yytext.
  */
 #define YY_DO_BEFORE_ACTION \
        yytext_ptr = yy_bp; \
 
 /* Done after the current pattern has been matched and before the
  * corresponding action - sets up yytext.
  */
 #define YY_DO_BEFORE_ACTION \
        yytext_ptr = yy_bp; \
-       yyleng = yy_cp - yy_bp; \
+       yyleng = (int) (yy_cp - yy_bp); \
        yy_hold_char = *yy_cp; \
        *yy_cp = '\0'; \
        yy_c_buf_p = yy_cp;
 
        yy_hold_char = *yy_cp; \
        *yy_cp = '\0'; \
        yy_c_buf_p = yy_cp;
 
+#define YY_NUM_RULES 201
 #define YY_END_OF_BUFFER 202
 #define YY_END_OF_BUFFER 202
-static const short int yy_accept[838] =
+static yyconst short int yy_accept[836] =
     {   0,
         0,    0,    0,    0,    0,    0,    0,    0,  190,  190,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     {   0,
         0,    0,    0,    0,    0,    0,    0,    0,  190,  190,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
@@ -297,7 +308,7 @@ static const short int yy_accept[838] =
       155,    0,    0,  179,  164,  163,  181,    0,    0,    0,
 
       180,  157,  183,  185,  186,  188,  121,  132,  131,  126,
       155,    0,    0,  179,  164,  163,  181,    0,    0,    0,
 
       180,  157,  183,  185,  186,  188,  121,  132,  131,  126,
-      125,    0,   88,   82,    0,  110,    0,    0,   90,   87,
+      125,  187,   88,   82,    0,  110,    0,    0,   90,   87,
        89,  120,  119,    0,  119,  120,  120,  120,  120,  120,
       120,   60,  120,   74,  120,  120,   68,  120,  120,   71,
       120,  120,  189,    0,    0,  190,  191,    0,  194,  192,
        89,  120,  119,    0,  119,  120,  120,  120,  120,  120,
       120,   60,  120,   74,  120,  120,   68,  120,  120,   71,
       120,  120,  189,    0,    0,  190,  191,    0,  194,  192,
@@ -311,64 +322,64 @@ static const short int yy_accept[838] =
        74,  120,   68,  189,    0,  120,  135,  134,  133,  137,
       148,  149,  173,  166,  167,  168,  169,  182,  165,  147,
       146,  176,  172,  145,  170,  142,  143,  144,  175,  171,
        74,  120,   68,  189,    0,  120,  135,  134,  133,  137,
       148,  149,  173,  166,  167,  168,  169,  182,  165,  147,
       146,  176,  172,  145,  170,  142,  143,  144,  175,  171,
-      126,  124,    0,  187,  187,  113,  106,  108,  119,  119,
-      120,  120,  120,  120,  120,  120,  120,  120,  120,  120,
-      120,   75,  120,  120,  120,  120,  120,    0,    0,    1,
-        1,    0,  130,  124,    0,    0,  113,  106,  108,  119,
-      119,    0,    0,    0,  120,  120,  120,  120,  120,  120,
-      120,  120,  120,  120,  120,   75,  120,  120,  120,  120,
-
-      120,    0,    0,    0,   18,   19,    0,  119,  119,  119,
-      119,   12,  119,  119,  119,  119,  119,  119,   17,  119,
-       15,  119,  119,  119,   11,  119,  119,    6,  119,  119,
-      119,  119,   14,  119,  119,  119,   13,  119,  119,  117,
-      120,   75,   52,  187,  187,  187,  187,    0,  119,   53,
-      120,   55,  120,  120,   58,  120,  120,  120,  120,  120,
-      120,  120,   70,   72,  120,    0,    0,    0,    0,    0,
-        0,    0,    0,  123,    0,    0,  112,    0,  105,  107,
-      119,  119,  122,    0,   53,  120,   55,  120,  120,   58,
-      120,  120,  120,  120,  120,  120,  120,   70,   72,  120,
-
-       46,    0,  100,  119,  119,  119,  119,  119,  119,  119,
-      119,  119,  119,  119,  119,  119,  119,  119,   16,  119,
-        7,  119,  119,  119,  119,  119,  119,  119,  119,  119,
-      119,  119,  119,  117,   53,    0,  113,   80,   54,  120,
-      120,  120,  120,   62,  120,  120,  120,  120,   73,    0,
-        0,    0,    0,    0,    0,    0,    0,  111,    0,  113,
-      119,  119,  114,   54,  120,  120,  120,  120,   62,  120,
-      120,  120,  120,   73,    0,    0,  119,   22,  119,  119,
-       20,  119,  119,  119,  119,  119,  119,  119,  119,  119,
-      119,  119,  115,  119,  119,  119,  119,  119,  119,  119,
-
-      119,  119,  119,  119,  119,  120,  120,   59,   61,   63,
-       64,  120,  120,   67,  120,    0,    0,    0,    0,    0,
-        0,    0,    0,   78,  119,  120,  120,   59,   61,   63,
-       64,  120,  120,   67,  120,  119,  119,  119,  119,  119,
-      119,   35,  119,   36,  119,  119,  119,  119,   34,  119,
-      119,   40,  119,   23,  119,  119,   38,  116,  119,  119,
-       39,  119,   56,  120,  120,  120,  120,    0,    0,    0,
-        0,    0,    0,    0,    0,    2,    2,  119,   76,   56,
-      120,  120,  120,  120,  119,  119,  119,  119,  119,  119,
-      119,  119,  119,  119,  119,  119,  119,  119,   33,  119,
-
-       21,  119,  119,   57,   65,  120,   69,    0,    0,    0,
-        0,    0,    0,    0,  119,  119,   57,   65,  120,   69,
-      119,  119,   41,  119,   32,   37,  119,  119,  119,  119,
-       25,  119,  119,  119,  119,  119,  119,  119,   81,   66,
-        0,    0,    0,    0,   48,    0,    0,   79,  119,   66,
-      119,  119,   29,  119,   30,   31,   42,   43,   44,   45,
-      119,  119,  119,   28,    0,    0,    0,    0,    0,    0,
-        0,   77,    8,  119,    9,   24,  119,  119,    0,    0,
-       51,   50,    0,    0,  119,  119,  119,    0,    3,    3,
-        0,    0,  119,  119,   10,    0,    0,   47,  119,  119,
-
-        0,    0,   27,  119,    5,    0,  119,    0,    0,  119,
-        0,    0,  119,    0,   49,   26,    0,    0,    0,    0,
+      126,  124,  187,  187,  187,  187,  113,  106,  108,  119,
+      119,  120,  120,  120,  120,  120,  120,  120,  120,  120,
+      120,  120,   75,  120,  120,  120,  120,  120,    0,    0,
+        1,    1,    0,  130,  124,    0,    0,  113,  106,  108,
+      119,  119,    0,    0,    0,  120,  120,  120,  120,  120,
+      120,  120,  120,  120,  120,  120,   75,  120,  120,  120,
+
+      120,  120,    0,    0,    0,   18,   19,    0,  119,  119,
+      119,  119,   12,  119,  119,  119,  119,  119,  119,   17,
+      119,   15,  119,  119,  119,   11,  119,  119,    6,  119,
+      119,  119,  119,   14,  119,  119,  119,   13,  119,  119,
+      117,  120,   75,   52,  187,    0,  119,   53,  120,   55,
+      120,  120,   58,  120,  120,  120,  120,  120,  120,  120,
+       70,   72,  120,    0,    0,    0,    0,    0,    0,    0,
+        0,  123,    0,    0,  112,    0,  105,  107,  119,  119,
+      122,    0,   53,  120,   55,  120,  120,   58,  120,  120,
+      120,  120,  120,  120,  120,   70,   72,  120,   46,    0,
+
+      100,  119,  119,  119,  119,  119,  119,  119,  119,  119,
+      119,  119,  119,  119,  119,  119,   16,  119,    7,  119,
+      119,  119,  119,  119,  119,  119,  119,  119,  119,  119,
+      119,  117,   53,    0,  113,   80,   54,  120,  120,  120,
+      120,   62,  120,  120,  120,  120,   73,    0,    0,    0,
+        0,    0,    0,    0,    0,  111,    0,  113,  119,  119,
+      114,   54,  120,  120,  120,  120,   62,  120,  120,  120,
+      120,   73,    0,    0,  119,   22,  119,  119,   20,  119,
+      119,  119,  119,  119,  119,  119,  119,  119,  119,  119,
+      115,  119,  119,  119,  119,  119,  119,  119,  119,  119,
+
+      119,  119,  119,  120,  120,   59,   61,   63,   64,  120,
+      120,   67,  120,    0,    0,    0,    0,    0,    0,    0,
+        0,   78,  119,  120,  120,   59,   61,   63,   64,  120,
+      120,   67,  120,  119,  119,  119,  119,  119,  119,   35,
+      119,   36,  119,  119,  119,  119,   34,  119,  119,   40,
+      119,   23,  119,  119,   38,  116,  119,  119,   39,  119,
+       56,  120,  120,  120,  120,    0,    0,    0,    0,    0,
+        0,    0,    0,    2,    2,  119,   76,   56,  120,  120,
+      120,  120,  119,  119,  119,  119,  119,  119,  119,  119,
+      119,  119,  119,  119,  119,  119,   33,  119,   21,  119,
+
+      119,   57,   65,  120,   69,    0,    0,    0,    0,    0,
+        0,    0,  119,  119,   57,   65,  120,   69,  119,  119,
+       41,  119,   32,   37,  119,  119,  119,  119,   25,  119,
+      119,  119,  119,  119,  119,  119,   81,   66,    0,    0,
+        0,    0,   48,    0,    0,   79,  119,   66,  119,  119,
+       29,  119,   30,   31,   42,   43,   44,   45,  119,  119,
+      119,   28,    0,    0,    0,    0,    0,    0,    0,   77,
+        8,  119,    9,   24,  119,  119,    0,    0,   51,   50,
+        0,    0,  119,  119,  119,    0,    3,    3,    0,    0,
+      119,  119,   10,    0,    0,   47,  119,  119,    0,    0,
+
+       27,  119,    5,    0,  119,    0,    0,  119,    0,    0,
+      119,    0,   49,   26,    0,    0,    0,    0,    0,    0,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    4,    0
+        0,    0,    0,    4,    0
     } ;
 
     } ;
 
-static const int yy_ec[256] =
+static yyconst int yy_ec[256] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
         2,    2,    4,    1,    1,    1,    1,    1,    1,    1,
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
         2,    2,    4,    1,    1,    1,    1,    1,    1,    1,
@@ -400,7 +411,7 @@ static const int yy_ec[256] =
         1,    1,    1,    1,    1
     } ;
 
         1,    1,    1,    1,    1
     } ;
 
-static const int yy_meta[92] =
+static yyconst int yy_meta[92] =
     {   0,
         1,    1,    2,    1,    3,    4,    3,    5,    6,    4,
         4,    7,    3,    3,    4,    3,    8,    4,    4,    9,
     {   0,
         1,    1,    2,    1,    3,    4,    3,    5,    6,    4,
         4,    7,    3,    3,    4,    3,    8,    4,    4,    9,
@@ -415,214 +426,214 @@ static const int yy_meta[92] =
 
     } ;
 
 
     } ;
 
-static const short int yy_base[881] =
+static yyconst short int yy_base[879] =
     {   0,
     {   0,
-        0,    0,    0,    4,   58,  138,  224, 2192,    0,    1,
-      315, 2191,  402,    0,  487,    0,   25,   39,  578,    0,
-     2198, 2201, 2201, 2185, 2188, 2201, 2201, 2201,   13, 2160,
-        7,   12,   12,   21,   10, 2143, 2141, 2154,   18, 2140,
-       69, 2139, 2137, 2201,    0, 2201, 2201, 2201, 2201,    0,
-     2201, 2201, 2201,    0,   50,    0, 2181, 2175, 2201, 2201,
-        0, 2201,   46, 2168,  131,  415, 2158, 2201, 2167, 2152,
-        0,    0, 2201,    0, 2201,    6, 2201,   11,   36, 2107,
-     2108,   30, 2111, 2101, 2108, 2108,   47, 2104, 2158,    0,
-     2201,    0,   52,    0,   13,    2, 2167, 2161,  425,  662,
-
-      506, 2164,   66, 2107,   66,  452,  105,    2,  129,  124,
+        0,    0,    0,    4,   58,  138,  224, 2188,    0,    1,
+      315, 2187,  402,    0,  487,    0,   25,   39,  578,    0,
+     2194, 2197, 2197, 2181, 2184, 2197, 2197, 2197,   13, 2156,
+        7,   12,   12,   21,   10, 2139, 2137, 2150,   18, 2136,
+       69, 2135, 2133, 2197,    0, 2197, 2197, 2197, 2197,    0,
+     2197, 2197, 2197,    0,   50,    0, 2177, 2171, 2197, 2197,
+        0, 2197,   46, 2164,  131,  415, 2154, 2197, 2163, 2148,
+        0,    0, 2197,    0, 2197,    6, 2197,   11,   36, 2103,
+     2104,   30, 2107, 2097, 2104, 2104,   47, 2100, 2154,    0,
+     2197,    0,   52,    0,   13,    2, 2163, 2157,  425,  662,
+
+      506, 2160,   66, 2103,   66,  452,  105,    2,  129,  124,
       107,  131,  138,  663,   42,  407,    0,  148,  515,  745,
       107,  131,  138,  663,   42,  407,    0,  148,  515,  745,
-        5,  158,  421,  449,  455, 2153,    0, 2152, 2137, 2104,
-     2102,  122,  135, 2148, 2201, 2157, 2155, 2151, 2201,  192,
-     2201, 2144,  652, 2125,  132,  169,  417,  497,  370, 2108,
-     2106, 2119,  137, 2105,  648, 2104, 2102, 2201,    0, 2201,
-     2201, 2201, 2201,  686, 2201, 2201, 2201,    0, 2136, 2140,
-     2143, 2201,  692, 2107, 2105, 2201, 2102, 2201,  669, 2103,
-     2109, 2201, 2096, 2092, 2108,  410, 2201, 2201, 2201, 2201,
-     2201, 2099, 2097, 2201, 2201, 2100, 2201, 2083, 2104, 2091,
-
-     2201, 2201, 2201,  699,    0,  723,    0, 2129, 2201, 2123,
-     2201,  207,    0,    0,  734,  745,  709,    0,    0, 2201,
-        0,    0,    0, 2071, 2066, 2051, 2066, 2048,  373, 2048,
-     2060,    0, 2048,  464, 2044, 2057,    0, 2047, 2054,    0,
-     2043, 2052, 2112,  210, 2046,    0,    0, 2101, 2201,    0,
-     2201, 2029, 2109, 2107, 2102,  796,  815, 2201,  822,  841,
-      722,    0, 2201, 2105,  114, 2104,    0,  140,  488,  410,
-      729,  483,  454, 2103,  424,  691,  489,  493, 2102,  728,
-      451, 2101,  673,  741, 2091, 2095,  830,  863, 2043, 2042,
-     2044,  846,  519,  838, 2040, 2064, 2038, 2063,  738,  766,
-
-     2049, 2048,  856,  517,  711, 2047, 2018,    0,  549,  730,
-      689,  695,  776, 2201, 2005,  492, 2087, 2085, 2201, 2201,
-     2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
-     2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
-     2080, 2201,  791,  893,  898,  890,  900,    0,    0, 2024,
-     2021, 2008, 2023, 2022, 2013, 2016, 2011, 2005, 2009, 1999,
-     2011,    0, 1996, 2013, 2000, 2007, 1995,  903,  799, 2201,
-      821, 1997, 2201, 2065,  908,    0,  941,  948, 2064, 1990,
-     2005, 2005, 2060, 2055,  824,  779,  861,  869,  862,  849,
-      864,  860,  870,  865,  932, 2058,  909,  933,  934,  937,
-
-      938, 1975, 2056,  999, 2201, 2201, 2000, 2011,  935, 2013,
-     2008,    0, 2021, 2012, 2019, 2003, 2020, 2006,    0, 1990,
-        0, 2000, 1999, 1987,    0,  913,  925,    0, 2008,  790,
-     1997, 2010,    0, 1998, 2012, 2007,    0, 2000, 1962,    0,
-      943,  972, 2201,  980,  991, 1000, 1011, 1017, 1978,    0,
-     1959,    0, 1956, 1954,    0, 1960, 1956, 1949, 1969, 1953,
-     1957, 1955,    0,    0, 1961, 1024, 1043, 1995, 1991, 1981,
-     1993, 1977, 1955, 2201, 1075, 2015, 2014, 1086, 2201, 2201,
-     1945, 1945, 2201, 2007, 2010,  950, 2009,  947,  774, 2008,
-      978,  969,  981,  952,  979,  983, 1001, 2007, 2006,  992,
-
-     2201, 1098, 2201, 1961, 1949, 1948, 1977, 1946, 1961, 1944,
-     1955,  783, 1959, 1952, 1967, 1969, 1951, 1960,    0, 1936,
-        0, 1961, 1961, 1957, 1951, 1949, 1956, 1957, 1928, 1942,
-     1939, 1938, 1922,    0, 1042, 1105, 1112,    0,    0, 1911,
-     1912, 1913, 1901,  991, 1905, 1911, 1911, 1906,    0, 1938,
-     1936, 1925, 1937, 1930, 1934, 1935, 1966, 2201, 1119, 1138,
-     1907, 1894, 2201, 1960,  989, 1000,  991, 1066, 1072, 1025,
-      498, 1036, 1044, 1959, 1145, 1164, 1916,    0, 1929, 1907,
-        0, 1900, 1927, 1909, 1897, 1909, 1895, 1894, 1893, 1905,
-     1917, 1890,    0, 1904, 1914, 1887, 1896, 1885, 1903, 1015,
-
-     1153, 1898, 1882, 1881, 1868, 1860, 1864,    0,    0,    0,
-        0, 1873, 1874,    0, 1861, 1902, 1890, 1883, 1887, 1892,
-     1891, 1896, 1050, 1891, 1866, 1073, 1027, 1920, 1919, 1918,
-     1917, 1082, 1085, 1916, 1077, 1890, 1881, 1870, 1885, 1884,
-     1873,    0, 1880,    0, 1881, 1880, 1875, 1878,    0, 1849,
-     1873,    0, 1874,    0, 1846, 1875,    0, 1171, 1844, 1871,
-        0, 1830,    0, 1833, 1834, 1835, 1830, 1837, 1862, 1848,
-     1847, 1850, 1860, 1853, 1088, 2201, 1153, 1858, 1853, 1883,
-     1143, 1172, 1145, 1173, 1855, 1854, 1807, 1811, 1781, 1780,
-     1789, 1803, 1795, 1765, 1751, 1157, 1769, 1773,    0, 1764,
-
-        0, 1756, 1719,    0,    0, 1711,    0, 1731, 1771, 1741,
-     1735, 1727, 1679, 1691, 1652, 1669, 1666, 1664, 1174, 1663,
-     1616, 1614,    0, 1599,    0,    0, 1608, 1596, 1593, 1591,
-        0, 1563, 1545, 1531, 1540, 1528, 1547, 1523,    0,    0,
-     1526, 1552, 1526, 1509, 2201, 1506, 1510,    0, 1489, 1543,
-     1485, 1495,    0, 1481,    0,    0,    0,    0,    0,    0,
-     1473, 1482, 1435,    0, 1433, 1438, 1166, 1393, 1391, 1396,
-     1396,    0,    0, 1372,    0,    0, 1393, 1394, 1390, 1196,
-     2201, 2201, 1383, 1012, 1368, 1355, 1326, 1343, 2201, 1369,
-     1338, 1347, 1333, 1203,    0, 1221, 1209, 2201, 1189, 1200,
-
-     1245, 1213,    0, 1185, 1206, 1205, 1210, 1196, 1192, 1202,
-     1184, 1196, 1143, 1164, 2201,    0, 1066, 1076, 1056, 1051,
-     1035,  948,  896,  797,  756,  728,  661,  647,  633,  450,
-     1195, 1204,  408,  396,   96, 2201, 2201, 1256, 1276, 1296,
-     1316, 1336, 1354, 1365, 1193, 1377, 1389, 1407, 1421, 1429,
-     1447, 1467, 1487, 1504, 1522, 1538, 1546, 1562, 1578, 1594,
-     1612, 1632, 1194, 1646, 1658, 1676, 1696, 1716, 1734, 1750,
-     1222, 1766, 1784, 1205, 1800, 1816, 1223, 1830, 1848, 1868
+        5,  158,  421,  449,  455, 2149,    0, 2148, 2133, 2100,
+     2098,  122,  135, 2144, 2197, 2153, 2151, 2147, 2197,  192,
+     2197, 2140,  652, 2121,  132,  169,  417,  497,  370, 2104,
+     2102, 2115,  137, 2101,  648, 2100, 2098, 2197,    0, 2197,
+     2197, 2197, 2197,  686, 2197, 2197, 2197,    0, 2132, 2136,
+     2139, 2197,  692, 2103, 2101, 2197, 2098, 2197,  669, 2099,
+     2105, 2197, 2092, 2088, 2104,  410, 2197, 2197, 2197, 2197,
+     2197, 2095, 2093, 2197, 2197, 2096, 2197, 2079, 2100, 2087,
+
+     2197, 2197, 2197,  699,    0,  723,    0, 2125, 2197, 2119,
+     2197,  727,    0,    0,  734,  745,  722,    0,    0, 2197,
+        0,    0,    0, 2067, 2062, 2047, 2062, 2044,  141, 2044,
+     2056,    0, 2044,  464, 2040, 2053,    0, 2043, 2050,    0,
+     2039, 2048, 2108,  210, 2042,    0,    0, 2097, 2197,    0,
+     2197, 2025, 2105, 2103, 2098,  796,  815, 2197,  822,  841,
+      752,    0, 2197, 2101,  114, 2100,    0,  410,  435,  424,
+      488,  489,  454, 2099,  495,  725,  484,  493, 2098,  726,
+      451, 2097,  673,  730, 2087, 2091,  830,  863, 2039, 2038,
+     2040,  846,  524,  772, 2036, 2060, 2034, 2059,  699,  738,
+
+     2045, 2044,  843,  641,  501, 2043, 2014,    0,  694,  819,
+      821,  823,  849, 2197, 2001,  753, 2083, 2081, 2197, 2197,
+     2197, 2197, 2197, 2197, 2197, 2197, 2197, 2197, 2197, 2197,
+     2197, 2197, 2197, 2197, 2197, 2197, 2197, 2197, 2197, 2197,
+     2076, 2197,  873,  893,  899,  908,  894,  901,    0,    0,
+     2020, 2017, 2004, 2019, 2018, 2009, 2012, 2007, 2001, 2005,
+     1995, 2007,    0, 1992, 2009, 1996, 2003, 1991,  925,  865,
+     2197,  869, 1993, 2197, 2061,  912,    0,  930,  957, 2060,
+     1986, 2001, 2001, 2056, 2051,  899,  779,  884,  931,  797,
+      900,  932,  671,  933,  934,  935, 2054,  936,  937,  816,
+
+      938,  731, 1971, 2052,  963, 2197, 2197, 1996, 2007,  918,
+     2009, 2004,    0, 2017, 2008, 2015, 1999, 2016, 2002,    0,
+     1986,    0, 1996, 1995, 1983,    0,  928,  897,    0, 2004,
+      953, 1993, 2006,    0, 1994, 2008, 2003,    0, 1996, 1958,
+        0,  966,  984, 2197, 1006, 1000, 1974,    0, 1955,    0,
+     1952, 1950,    0, 1956, 1952, 1945, 1965, 1949, 1953, 1951,
+        0,    0, 1957, 1025, 1036, 1991, 1987, 1977, 1989, 1973,
+     1951, 2197, 1023, 2011, 2010, 1068, 2197, 2197, 1941, 1941,
+     2197, 2003, 2006,  956, 2005,  951,  987, 2004,  990,  993,
+      696,  989, 1004, 1025, 1006, 2003, 2002,  995, 2197, 1081,
+
+     2197, 1957, 1945, 1944, 1973, 1942, 1957, 1940, 1951,  408,
+     1955, 1948, 1963, 1965, 1947, 1956,    0, 1932,    0, 1957,
+     1957, 1953, 1947, 1945, 1952, 1953, 1924, 1938, 1935, 1934,
+     1918,    0, 1041, 1088, 1095,    0,    0, 1907, 1908, 1909,
+     1897,  938, 1901, 1907, 1907, 1902,    0, 1934, 1932, 1921,
+     1933, 1926, 1930, 1931, 1962, 2197, 1102, 1121, 1903, 1890,
+     2197, 1956, 1055, 1060, 1028, 1049, 1057, 1071,  140, 1066,
+     1078, 1955, 1132, 1141, 1912,    0, 1925, 1903,    0, 1896,
+     1923, 1905, 1893, 1905, 1891, 1890, 1889, 1901, 1913, 1886,
+        0, 1900, 1910, 1883, 1892, 1881, 1899, 1015, 1148, 1894,
+
+     1878, 1877, 1864, 1856, 1860,    0,    0,    0,    0, 1869,
+     1870,    0, 1857, 1898, 1886, 1879, 1883, 1888, 1887, 1892,
+     1048, 1887, 1862, 1052, 1128, 1916, 1915, 1914, 1913, 1130,
+     1131, 1912, 1132, 1886, 1877, 1866, 1881, 1880, 1869,    0,
+     1876,    0, 1877, 1876, 1871, 1874,    0, 1845, 1869,    0,
+     1870,    0, 1842, 1871,    0, 1155, 1840, 1867,    0, 1826,
+        0, 1829, 1830, 1831, 1826, 1833, 1858, 1844, 1825, 1805,
+     1814, 1807, 1156, 2197, 1179, 1810, 1804, 1827, 1142, 1176,
+     1177, 1178, 1786, 1784, 1755, 1780, 1750, 1733, 1736, 1750,
+     1749, 1730, 1716, 1148, 1733, 1732,    0, 1703,    0, 1694,
+
+     1657,    0,    0, 1640,    0, 1631, 1672, 1643, 1636, 1634,
+     1604, 1632, 1601, 1626, 1651, 1623, 1179, 1605, 1547, 1545,
+        0, 1533,    0,    0, 1541, 1528, 1518, 1511,    0, 1503,
+     1502, 1501, 1507, 1494, 1515, 1490,    0,    0, 1501, 1532,
+     1506, 1472, 2197, 1438, 1427,    0, 1397, 1442, 1385, 1396,
+        0, 1379,    0,    0,    0,    0,    0,    0, 1377, 1403,
+     1385,    0, 1401, 1409, 1171, 1356, 1343, 1348, 1352,    0,
+        0, 1328,    0,    0, 1349, 1352, 1334, 1187, 2197, 2197,
+     1222, 1004, 1224, 1223, 1194, 1211, 2197, 1238, 1207, 1216,
+     1217, 1199,    0, 1217, 1203, 2197, 1183, 1192, 1237, 1205,
+
+        0, 1177, 1198, 1197, 1200, 1188, 1187, 1197, 1160, 1172,
+     1147, 1171, 2197,    0, 1157, 1059, 1062, 1024, 1016, 1037,
+      894,  765,  744,  733,  658,  650,  527,  548, 1194, 1201,
+      408,  396,   96, 2197, 2197, 1261, 1281, 1301, 1321, 1341,
+     1359, 1370, 1183, 1382, 1394, 1412, 1426, 1434, 1452, 1472,
+     1492, 1509, 1527, 1543, 1551, 1567, 1583, 1599, 1617, 1637,
+     1184, 1651, 1663, 1681, 1701, 1721, 1739, 1755, 1219, 1771,
+     1789, 1185, 1805, 1821, 1220, 1835, 1853, 1873
     } ;
 
     } ;
 
-static const short int yy_def[881] =
+static yyconst short int yy_def[879] =
     {   0,
     {   0,
-      838,  838,  839,  839,  840,  840,  837,    7,  841,  841,
-      837,   11,   11,   13,   11,   15,  842,  842,  837,   19,
-      837,  837,  837,  843,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  844,  837,  837,  837,  837,  837,
-      837,  837,  837,  845,  837,  846,  847,  848,  837,  837,
-      846,  837,  846,  846,  837,  837,  846,  837,  846,  846,
-      846,  849,  837,  846,  837,  850,  837,  849,  849,  849,
-      849,  849,  849,  849,  849,  849,  849,  849,  837,  846,
-      837,  846,  846,  851,  852,  853,  854,  855,  846,  837,
-
-      837,  856,  850,  857,  856,  856,  856,  856,  856,  856,
-      856,  856,  856,  856,  856,  837,  858,   99,  837,  850,
-      859,  859,  859,  859,  859,  837,  846,  846,  846,  850,
-      857,  856,  856,  837,  837,  860,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  844,  837,
-      837,  837,  837,  837,  837,  837,  837,  845,  837,  843,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-
-      837,  837,  837,  837,  845,  837,  846,  847,  837,  861,
-      837,  862,  846,  846,  837,  837,  837,  863,  846,  837,
-      846,  864,  865,  850,  865,  864,  864,  864,  864,  864,
-      864,  864,  864,  864,  864,  864,  864,  864,  864,  864,
-      864,  864,  837,  866,  837,  867,  868,  868,  837,  869,
-      837,  869,  870,  837,  861,  837,  837,  837,  837,  837,
-      837,  871,  837,  856,  865,  872,  873,  856,  856,  856,
-      856,  856,  856,  856,  856,  856,  856,  856,  856,  856,
-      856,  856,  856,  856,  837,  861,  837,  837,  837,  837,
-      837,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-
-      865,  865,  865,  865,  865,  865,  865,  874,  875,  875,
-      875,  875,  875,  837,  837,  856,  876,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      861,  837,  862,  837,  862,  837,  837,  863,  865,  865,
-      864,  864,  864,  864,  864,  864,  864,  864,  864,  864,
-      864,  864,  864,  864,  864,  864,  864,  837,  866,  837,
-      866,  837,  837,  837,  837,  877,  837,  837,  871,  865,
-      865,  837,  872,  873,  856,  856,  856,  856,  856,  856,
-      856,  856,  856,  856,  856,  856,  856,  856,  856,  856,
-
-      856,  837,  837,  837,  837,  837,  837,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  878,
-      875,  875,  837,  837,  862,  837,  862,  837,  865,  864,
-      864,  864,  864,  864,  864,  864,  864,  864,  864,  864,
-      864,  864,  864,  864,  864,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  877,  837,  837,  837,  837,
-      865,  865,  837,  837,  856,  856,  856,  856,  856,  856,
-      856,  856,  856,  856,  856,  856,  856,  856,  856,  856,
-
-      837,  837,  837,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  878,  875,  837,  837,  865,  864,  864,
-      864,  864,  864,  864,  864,  864,  864,  864,  864,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      865,  865,  837,  856,  856,  856,  856,  856,  856,  856,
-      856,  856,  856,  856,  837,  837,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-
-      865,  865,  865,  865,  865,  864,  864,  864,  864,  864,
-      864,  864,  864,  864,  864,  837,  837,  837,  837,  837,
-      837,  837,  879,  865,  865,  856,  856,  856,  856,  856,
-      856,  856,  856,  856,  856,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  864,  864,  864,  864,  864,  837,  837,  837,
-      837,  837,  837,  837,  879,  837,  879,  865,  865,  856,
-      856,  856,  856,  856,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-
-      865,  865,  865,  864,  864,  864,  864,  837,  837,  837,
-      837,  837,  837,  837,  865,  865,  856,  856,  856,  856,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  864,
-      837,  880,  837,  837,  837,  837,  837,  865,  865,  856,
-      865,  865,  865,  865,  865,  865,  865,  865,  865,  865,
-      865,  865,  865,  865,  837,  880,  880,  837,  837,  837,
-      837,  865,  865,  865,  865,  865,  865,  865,  837,  880,
-      837,  837,  837,  837,  865,  865,  865,  837,  837,  880,
-      837,  837,  865,  865,  865,  837,  837,  837,  865,  865,
-
-      837,  837,  865,  865,  837,  837,  865,  837,  837,  865,
-      837,  837,  865,  837,  837,  865,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,    0,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837
+      836,  836,  837,  837,  838,  838,  835,    7,  839,  839,
+      835,   11,   11,   13,   11,   15,  840,  840,  835,   19,
+      835,  835,  835,  841,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  842,  835,  835,  835,  835,  835,
+      835,  835,  835,  843,  835,  844,  845,  846,  835,  835,
+      844,  835,  844,  844,  835,  835,  844,  835,  844,  844,
+      844,  847,  835,  844,  835,  848,  835,  847,  847,  847,
+      847,  847,  847,  847,  847,  847,  847,  847,  835,  844,
+      835,  844,  844,  849,  850,  851,  852,  853,  844,  835,
+
+      835,  854,  848,  855,  854,  854,  854,  854,  854,  854,
+      854,  854,  854,  854,  854,  835,  856,   99,  835,  848,
+      857,  857,  857,  857,  857,  835,  844,  844,  844,  848,
+      855,  854,  854,  835,  835,  858,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  842,  835,
+      835,  835,  835,  835,  835,  835,  835,  843,  835,  841,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+
+      835,  835,  835,  835,  843,  835,  844,  845,  835,  859,
+      835,  860,  844,  844,  835,  835,  835,  861,  844,  835,
+      844,  862,  863,  848,  863,  862,  862,  862,  862,  862,
+      862,  862,  862,  862,  862,  862,  862,  862,  862,  862,
+      862,  862,  835,  864,  835,  865,  866,  866,  835,  867,
+      835,  867,  868,  835,  859,  835,  835,  835,  835,  835,
+      835,  869,  835,  854,  863,  870,  871,  854,  854,  854,
+      854,  854,  854,  854,  854,  854,  854,  854,  854,  854,
+      854,  854,  854,  854,  835,  859,  835,  835,  835,  835,
+      835,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+
+      863,  863,  863,  863,  863,  863,  863,  872,  873,  873,
+      873,  873,  873,  835,  835,  854,  874,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      859,  835,  860,  860,  835,  860,  835,  835,  861,  863,
+      863,  862,  862,  862,  862,  862,  862,  862,  862,  862,
+      862,  862,  862,  862,  862,  862,  862,  862,  835,  864,
+      835,  864,  835,  835,  835,  835,  875,  835,  835,  869,
+      863,  863,  835,  870,  871,  854,  854,  854,  854,  854,
+      854,  854,  854,  854,  854,  854,  854,  854,  854,  854,
+
+      854,  854,  835,  835,  835,  835,  835,  835,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      876,  873,  873,  835,  835,  835,  863,  862,  862,  862,
+      862,  862,  862,  862,  862,  862,  862,  862,  862,  862,
+      862,  862,  862,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  875,  835,  835,  835,  835,  863,  863,
+      835,  835,  854,  854,  854,  854,  854,  854,  854,  854,
+      854,  854,  854,  854,  854,  854,  854,  854,  835,  835,
+
+      835,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  876,  873,  835,  835,  863,  862,  862,  862,  862,
+      862,  862,  862,  862,  862,  862,  862,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  863,  863,
+      835,  854,  854,  854,  854,  854,  854,  854,  854,  854,
+      854,  854,  835,  835,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+
+      863,  863,  863,  862,  862,  862,  862,  862,  862,  862,
+      862,  862,  862,  835,  835,  835,  835,  835,  835,  835,
+      877,  863,  863,  854,  854,  854,  854,  854,  854,  854,
+      854,  854,  854,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      862,  862,  862,  862,  862,  835,  835,  835,  835,  835,
+      835,  835,  877,  835,  877,  863,  863,  854,  854,  854,
+      854,  854,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+
+      863,  862,  862,  862,  862,  835,  835,  835,  835,  835,
+      835,  835,  863,  863,  854,  854,  854,  854,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  862,  835,  878,
+      835,  835,  835,  835,  835,  863,  863,  854,  863,  863,
+      863,  863,  863,  863,  863,  863,  863,  863,  863,  863,
+      863,  863,  835,  878,  878,  835,  835,  835,  835,  863,
+      863,  863,  863,  863,  863,  863,  835,  878,  835,  835,
+      835,  835,  863,  863,  863,  835,  835,  878,  835,  835,
+      863,  863,  863,  835,  835,  835,  863,  863,  835,  835,
+
+      863,  863,  835,  835,  863,  835,  835,  863,  835,  835,
+      863,  835,  835,  863,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,    0,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835
     } ;
 
     } ;
 
-static const short int yy_nxt[2293] =
+static yyconst short int yy_nxt[2289] =
     {   0,
     {   0,
-       23,   23,   23,   23,   23,   23,   23,   23,  837,  263,
-      837,   25,  263,  308,  837,   25,   95,   95,  251,  204,
+       23,   23,   23,   23,   23,   23,   23,   23,  835,  263,
+      835,   25,  263,  308,  835,   25,   95,   95,  251,  204,
       204,  204,  204,  204,  204,  135,  135,  135,  135,  248,
       204,  204,  204,  204,  204,  135,  135,  135,  135,  248,
-      837,  137,  173,  173,  173,  173,  173,  173,  173,  135,
+      835,  137,  173,  173,  173,  173,  173,  173,  173,  135,
       135,  135,  135,  175,  177,  137,  179,  187,  180,  263,
       135,  135,  135,  175,  177,  137,  179,  187,  180,  263,
-      192,  206,  206,  206,  206,  181,  244,  176,  837,   26,
+      192,  206,  206,  206,  206,  181,  244,  176,  835,   26,
       188,  178,  212,   26,   28,  182,  183,  184,  224,   28,
       193,  185,  186,  263,  273,  226,  213,   29,   29,   29,
        29,   29,   29,   29,  138,  227,  225,   96,   96,  252,
       188,  178,  212,   26,   28,  182,  183,  184,  224,   28,
       193,  185,  186,  263,  273,  226,  213,   29,   29,   29,
        29,   29,   29,   29,  138,  227,  225,   96,   96,  252,
@@ -634,14 +645,14 @@ static const short int yy_nxt[2293] =
       268,  263,  265,  241,   49,   50,  263,   51,  263,   52,
       269,   53,  263,   54,   28,  263,  225,  263,  215,   28,
       216,  216,  216,  216,  216,  216,  216,   29,   29,   29,
       268,  263,  265,  241,   49,   50,  263,   51,  263,   52,
       269,   53,  263,   54,   28,  263,  225,  263,  215,   28,
       216,  216,  216,  216,  216,  216,  216,   29,   29,   29,
-       29,   29,   29,   29,  837,  263,  308,  257,  175,  192,
-       30,   31,   32,   33,   34,   35,   36,   37,  380,  272,
-      381,   38,  176,   39,  278,  836,  270,   40,   41,  193,
+       29,   29,   29,   29,  835,  263,  308,  257,  175,  192,
+       30,   31,   32,   33,   34,   35,   36,   37,  381,  272,
+      382,   38,  176,   39,  278,  834,  270,   40,   41,  193,
        42,   43,  277,  206,  206,  206,  206,   44,  274,   45,
 
        42,   43,  277,  206,  206,  206,  206,   44,  274,   45,
 
-      279,  177,   46,   47,  275,  276,  280,   48,  217,  344,
-      345,  316,  370,  371,   49,   50,  218,   51,  178,   52,
-      385,   53,  310,   54,   22,   55,   55,   55,   55,   56,
+      279,  177,   46,   47,  275,  276,  280,   48,  217,  631,
+      355,  316,  371,  372,   49,   50,  218,   51,  178,   52,
+      356,   53,  310,   54,   22,   55,   55,   55,   55,   56,
        57,   56,   56,   56,   56,   58,   59,   60,   61,   62,
        63,   64,   56,   65,   66,   66,   66,   66,   66,   66,
        67,   68,   69,   70,   56,   71,   72,   72,   72,   72,
        57,   56,   56,   56,   56,   58,   59,   60,   61,   62,
        63,   64,   56,   65,   66,   66,   66,   66,   66,   66,
        67,   68,   69,   70,   56,   71,   72,   72,   72,   72,
@@ -662,24 +673,24 @@ static const short int yy_nxt[2293] =
       111,  102,  112,  102,  113,  102,  114,  102,  102,  115,
 
       102,  102,   89,   90,   91,   92,  116,  187,  206,  206,
       111,  102,  112,  102,  113,  102,  114,  102,  102,  115,
 
       102,  102,   89,   90,   91,   92,  116,  187,  206,  206,
-      206,  206,  835,  117,  285,  834,   56,  263,  118,   56,
+      206,  206,  833,  117,  285,  832,   56,  263,  118,   56,
       188,  119,  119,  119,  119,  119,  119,  119,  263,  308,
        56,  263,  215,   56,  216,  216,  216,  216,  216,  216,
       188,  119,  119,  119,  119,  119,  119,  119,  263,  308,
        56,  263,  215,   56,  216,  216,  216,  216,  216,  216,
-      216,  212,  354,  333,  256,  257,  257,  257,  257,  257,
-      257,  179,  355,  180,  831,  213,  263,  308,  263,  263,
+      216,  212,  263,  333,  256,  257,  257,  257,  257,  257,
+      257,  179,  583,  180,  584,  213,  263,  308,  263,  263,
       181,  263,  263,  308,  120,  334,  121,  121,  122,  121,
       121,  121,  121,  121,  123,  121,  124,  121,  121,  125,
       121,  121,  121,  121,  121,  121,  121,  121,  121,  126,
       181,  263,  263,  308,  120,  334,  121,  121,  122,  121,
       121,  121,  121,  121,  123,  121,  124,  121,  121,  125,
       121,  121,  121,  121,  121,  121,  121,  121,  121,  126,
-      263,  387,  127,   22,  128,  263,  263,  311,   22,  263,
-
-      263,   56,  392,  129,   56,  263,   22,   22,   22,   22,
-       22,   22,   22,  258,   22,   56,  270,  312,   56,  399,
-      271,  391,  258,  259,  313,  260,  260,  260,  260,  260,
-      260,  260,  287,  359,  288,  288,  288,  288,  288,  288,
-      288,  182,  183,  184,  360,  361,   56,  185,  186,  130,
-      131,  413,  386,  102,  132,  102,  263,  308,  102,  133,
-      397,  102,  102,  390,  102,  414,  102,  633,  102,  434,
-      396,  102,  394,  435,  134,   56,   22,  127,  139,  140,
+      386,  263,  127,   22,  128,  263,  263,  311,   22,  387,
+
+      263,   56,  263,  129,   56,  388,   22,   22,   22,   22,
+       22,   22,   22,  258,   22,   56,  270,  312,   56,  400,
+      271,  392,  258,  259,  313,  260,  260,  260,  260,  260,
+      260,  260,  287,  360,  288,  288,  288,  288,  288,  288,
+      288,  182,  183,  184,  361,  362,   56,  185,  186,  130,
+      131,  437,  829,  102,  132,  102,  414,  389,  102,  133,
+      398,  102,  102,  438,  102,  397,  102,  390,  102,  391,
+      415,  102,  828,  393,  134,   56,   22,  127,  139,  140,
       140,  140,  140,  139,  141,  139,  139,  139,  139,  141,
       139,  139,  139,  139,  142,  139,  139,  143,  143,  143,
 
       140,  140,  140,  139,  141,  139,  139,  139,  139,  141,
       139,  139,  139,  139,  142,  139,  139,  143,  143,  143,
 
@@ -690,189 +701,187 @@ static const short int yy_nxt[2293] =
       139,  139,  160,  161,  139,  139,  139,  162,  139,  139,
       139,  139,  139,  139,  163,  164,  139,  165,  139,  166,
       139,  167,  139,  168,  139,  169,  139,  139,  139,  258,
       139,  139,  160,  161,  139,  139,  139,  162,  139,  139,
       139,  139,  139,  139,  163,  164,  139,  165,  139,  166,
       139,  167,  139,  168,  139,  169,  139,  139,  139,  258,
-      263,  173,  173,  173,  173,  173,  173,  173,  830,  259,
+      263,  173,  173,  173,  173,  173,  173,  173,  263,  259,
       263,  260,  260,  260,  260,  260,  260,  260,  195,  324,
       263,  260,  260,  260,  260,  260,  260,  260,  195,  324,
-      325,  326,  327,  829,  196,  197,  263,  308,  263,  198,
+      325,  326,  327,  435,  196,  197,  827,  436,  826,  198,
 
 
-      199,  828,  263,  308,  200,  204,  204,  204,  204,  204,
+      199,  263,  308,  263,  200,  204,  204,  204,  204,  204,
       204,  173,  173,  173,  173,  173,  173,  173,  204,  204,
       204,  173,  173,  173,  173,  173,  173,  173,  204,  204,
-      204,  204,  204,  204,  206,  206,  206,  206,  347,  347,
-      347,  347,  347,  347,  281,  263,  263,  263,  308,  261,
-      282,  378,  378,  378,  378,  378,  378,  262,  263,  283,
-      289,  400,  290,  346,  346,  346,  346,  346,  346,  346,
-      393,  436,  215,  291,  216,  216,  216,  216,  216,  216,
-      216,  394,  395,  437,  423,  424,  442,  292,  827,  293,
-      294,  263,  295,  263,  308,  296,  263,  297,  298,  299,
-      300,  301,  302,  344,  345,  303,  304,  305,  388,  306,
-
-      425,  370,  371,  258,  398,  826,  426,  224,  389,  401,
-      441,  265,  427,  287,  307,  257,  257,  257,  257,  257,
-      257,  257,  258,  370,  371,  225,  525,  585,  428,  586,
-      526,  263,  287,  825,  257,  257,  257,  257,  257,  257,
-      257,  377,  377,  377,  377,  377,  377,  377,  258,  404,
-      404,  404,  404,  404,  404,  404,  263,  566,  259,  486,
-      260,  260,  260,  260,  260,  260,  260,  263,  263,  263,
-      258,  263,  263,  375,  415,  416,  263,  263,  417,  408,
-      287,  376,  288,  288,  288,  288,  288,  288,  288,  409,
-      418,  431,  485,  410,  444,  444,  444,  444,  411,  445,
-
-      446,  447,  445,  432,  466,  466,  466,  467,  412,  346,
-      346,  346,  346,  346,  346,  346,  263,  490,  433,  347,
-      347,  347,  347,  347,  347,  487,  448,  475,  475,  475,
-      475,  475,  475,  488,  489,  468,  491,  492,  469,  263,
-      263,  263,  493,  470,  263,  263,  494,  471,  477,  824,
-      263,  308,  823,  472,  263,  479,  520,  263,  448,  263,
-      377,  377,  377,  377,  377,  377,  377,  378,  378,  378,
-      378,  378,  378,  505,  522,  521,  263,  478,  506,  263,
-      308,  444,  444,  444,  444,  263,  263,  523,  263,  507,
-      263,  496,  445,  446,  447,  445,  263,  497,  263,  263,
-
-      495,  444,  444,  444,  444,  499,  477,  263,  263,  478,
-      498,  535,  445,  446,  447,  445,  570,  500,  404,  404,
-      404,  404,  404,  404,  404,  466,  466,  466,  466,  565,
-      564,  536,  263,  536,  263,  502,  537,  537,  537,  537,
-      537,  537,  537,  263,  466,  466,  466,  466,  568,  263,
-      308,  263,  676,  677,  567,  656,  468,  572,  571,  469,
-      574,  628,  792,  626,  470,  610,  569,  502,  471,  792,
-      611,  822,  627,  263,  472,  468,  573,  657,  469,  263,
-      263,  550,  479,  470,  263,  821,  551,  471,  820,  263,
-      676,  677,  263,  472,  475,  475,  475,  475,  475,  475,
-
-      559,  632,  559,  681,  634,  560,  560,  560,  560,  560,
-      560,  560,  575,  819,  575,  818,  635,  576,  576,  576,
-      576,  576,  576,  576,  537,  537,  537,  537,  537,  537,
-      537,  537,  537,  537,  537,  537,  537,  537,  560,  560,
-      560,  560,  560,  560,  560,  477,  630,  629,  682,  683,
-      263,  631,  263,  684,  680,  676,  677,  560,  560,  560,
-      560,  560,  560,  560,  576,  576,  576,  576,  576,  576,
-      576,  477,  658,  658,  658,  658,  658,  658,  658,  263,
-      263,  263,  767,  576,  576,  576,  576,  576,  576,  576,
-      658,  658,  658,  658,  658,  658,  658,  732,  789,  790,
-
-      817,  205,  348,  205,  348,  816,  733,  734,  833,  205,
-      348,  719,  767,  717,  832,  832,  832,  832,  832,  832,
-      832,  440,  440,  832,  832,  832,  832,  832,  832,  832,
-      379,  476,  379,  476,  815,  814,  813,  812,  379,  476,
-      718,  811,  750,  720,  810,  809,  808,  807,  806,  805,
-      804,  803,  802,  801,  800,  780,   22,   22,   22,   22,
+      204,  204,  204,  204,  206,  206,  206,  206,  344,  345,
+      346,  344,  263,  263,  281,  424,  425,  263,  263,  261,
+      282,  348,  348,  348,  348,  348,  348,  262,  490,  283,
+      289,  401,  290,  347,  347,  347,  347,  347,  347,  347,
+      263,  426,  215,  291,  216,  216,  216,  216,  216,  216,
+      216,  379,  379,  379,  379,  379,  379,  292,  427,  293,
+      294,  567,  295,  825,  428,  296,  263,  297,  298,  299,
+      300,  301,  302,  824,  394,  303,  304,  305,  402,  306,
+
+      429,  823,  399,  258,  263,  395,  396,  224,  416,  417,
+      498,  265,  418,  287,  307,  257,  257,  257,  257,  257,
+      257,  257,  258,  263,  419,  225,  263,  308,  263,  308,
+      263,  308,  287,  395,  257,  257,  257,  257,  257,  257,
+      257,  378,  378,  378,  378,  378,  378,  378,  258,  405,
+      405,  405,  405,  405,  405,  405,  263,  308,  259,  484,
+      260,  260,  260,  260,  260,  260,  260,  371,  372,  487,
+      258,  371,  372,  376,  344,  345,  346,  344,  432,  409,
+      287,  377,  288,  288,  288,  288,  288,  288,  288,  410,
+      433,  263,  496,  411,  344,  345,  346,  344,  412,  442,
+
+      445,  445,  445,  445,  443,  434,  263,  263,  413,  344,
+      345,  346,  344,  347,  347,  347,  347,  347,  347,  347,
+      348,  348,  348,  348,  348,  348,  464,  464,  464,  465,
+      446,  473,  473,  473,  473,  473,  473,  475,  263,  263,
+      263,  263,  263,  263,  263,  263,  520,  822,  485,  378,
+      378,  378,  378,  378,  378,  378,  503,  466,  263,  521,
+      467,  504,  446,  263,  477,  468,  476,  483,  488,  469,
+      475,  518,  505,  263,  308,  470,  379,  379,  379,  379,
+      379,  379,  405,  405,  405,  405,  405,  405,  405,  523,
+      519,  263,  308,  524,  263,  486,  263,  263,  476,  500,
+
+      263,  495,  263,  493,  489,  491,  497,  445,  445,  445,
+      445,  263,  608,  263,  534,  492,  534,  609,  494,  535,
+      535,  535,  535,  535,  535,  535,  464,  464,  464,  464,
+      477,  500,  263,  563,  533,  263,  562,  464,  464,  464,
+      464,  821,  473,  473,  473,  473,  473,  473,  263,  308,
+      674,  675,  820,  568,  790,  654,  263,  466,  819,  263,
+      467,  790,  263,  572,  263,  468,  565,  263,  466,  469,
+      564,  467,  566,  263,  548,  470,  468,  655,  263,  549,
+      469,  571,  557,  569,  557,  263,  470,  558,  558,  558,
+      558,  558,  558,  558,  818,  573,  817,  573,  626,  570,
+
+      574,  574,  574,  574,  574,  574,  574,  535,  535,  535,
+      535,  535,  535,  535,  535,  535,  535,  535,  535,  535,
+      535,  558,  558,  558,  558,  558,  558,  558,  475,  624,
+      627,  628,  625,  678,  632,  263,  629,  263,  263,  263,
+      558,  558,  558,  558,  558,  558,  558,  630,  475,  263,
+      633,  574,  574,  574,  574,  574,  574,  574,  674,  675,
+      574,  574,  574,  574,  574,  574,  574,  656,  656,  656,
+      656,  656,  656,  656,  656,  656,  656,  656,  656,  656,
+      656,  674,  675,  263,  263,  263,  263,  765,  730,  787,
+      788,  205,  349,  205,  349,  681,  680,  731,  732,  205,
+
+      349,  441,  441,  765,  679,  831,  816,  815,  682,  814,
+      813,  812,  715,  830,  830,  830,  830,  830,  830,  830,
+      830,  830,  830,  830,  830,  830,  830,  380,  474,  380,
+      474,  811,  810,  809,  808,  380,  474,  807,  806,  805,
+      804,  803,  802,  717,  716,  801,  800,  748,  718,  799,
+      798,  797,  796,  795,  765,  794,  793,  792,  791,  789,
+      778,   22,   22,   22,   22,   22,   22,   22,   22,   22,
        22,   22,   22,   22,   22,   22,   22,   22,   22,   22,
        22,   22,   22,   22,   22,   22,   22,   22,   22,   22,
-       22,   22,   22,   22,   22,   22,   24,   24,   24,   24,
+       22,   24,   24,   24,   24,   24,   24,   24,   24,   24,
        24,   24,   24,   24,   24,   24,   24,   24,   24,   24,
        24,   24,   24,   24,   24,   24,   24,   24,   24,   24,
-       24,   24,   24,   24,   24,   24,   27,   27,   27,   27,
 
 
+       24,   27,   27,   27,   27,   27,   27,   27,   27,   27,
        27,   27,   27,   27,   27,   27,   27,   27,   27,   27,
        27,   27,   27,   27,   27,   27,   27,   27,   27,   27,
-       27,   27,   27,   27,   27,   27,   94,   94,   94,   94,
+       27,   94,   94,   94,   94,   94,   94,   94,   94,   94,
        94,   94,   94,   94,   94,   94,   94,   94,   94,   94,
        94,   94,   94,   94,   94,   94,   94,   94,   94,   94,
-       94,   94,   94,   94,   94,   94,  136,  136,  136,  136,
+       94,  136,  136,  136,  136,  136,  136,  136,  136,  136,
       136,  136,  136,  136,  136,  136,  136,  136,  136,  136,
       136,  136,  136,  136,  136,  136,  136,  136,  136,  136,
-      136,  136,  136,  136,  136,  136,  170,  170,  170,  170,
-      170,  170,  170,  170,  170,  170,  170,  799,  170,  170,
-      170,  170,  170,  170,  203,  203,  203,  203,  203,  203,
-      207,  207,  207,  798,  797,  767,  207,  796,  795,  794,
-      207,  208,  208,  208,  208,  208,  208,  208,  208,  208,
-
-      208,  208,  793,  208,  208,  208,  208,  208,  208,  210,
-      210,  210,  210,  210,  210,  210,  210,  210,  210,  210,
-      791,  210,  210,  210,  210,  210,  210,  222,  788,  222,
-      787,  222,  222,  786,  785,  222,  784,  222,  222,  223,
-      223,  783,  782,  223,  781,  223,  223,  246,  246,  246,
-      246,  246,  246,  246,  767,  246,  246,  246,  246,  246,
-      246,  246,  246,  246,  246,  779,  246,  247,  247,  247,
+      136,  170,  170,  170,  170,  170,  170,  170,  170,  170,
+      170,  170,  786,  170,  170,  170,  170,  170,  170,  203,
+      203,  203,  203,  203,  203,  207,  207,  207,  785,  784,
+      783,  207,  782,  781,  780,  207,  208,  208,  208,  208,
+
+      208,  208,  208,  208,  208,  208,  208,  779,  208,  208,
+      208,  208,  208,  208,  210,  210,  210,  210,  210,  210,
+      210,  210,  210,  210,  210,  765,  210,  210,  210,  210,
+      210,  210,  222,  777,  222,  776,  222,  222,  775,  774,
+      222,  773,  222,  222,  223,  223,  772,  771,  223,  263,
+      223,  223,  246,  246,  246,  246,  246,  246,  246,  770,
+      246,  246,  246,  246,  246,  246,  246,  246,  246,  246,
+      769,  246,  247,  247,  247,  247,  247,  247,  247,  247,
       247,  247,  247,  247,  247,  247,  247,  247,  247,  247,
       247,  247,  247,  247,  247,  247,  247,  247,  247,  247,
-      247,  247,  247,  247,  247,  778,  247,  250,  250,  250,
-      250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
+      768,  247,  250,  250,  250,  250,  250,  250,  250,  250,
 
 
-      250,  250,  250,  250,  250,  250,  253,  253,  253,  253,
-      253,  253,  253,  253,  253,  253,  253,  777,  253,  253,
-      253,  253,  253,  253,  255,  255,  255,  255,  255,  255,
-      255,  255,  255,  255,  255,  776,  255,  255,  255,  255,
-      255,  255,  264,  775,  264,  774,  264,  773,  264,  264,
-      263,  772,  264,  771,  264,  264,  266,  266,  770,  769,
-      768,  266,  266,  266,  286,  286,  286,  286,  767,  286,
-      286,  286,  286,  286,  286,  765,  286,  286,  286,  286,
-      286,  286,  309,  309,  309,  764,  309,  763,  309,  309,
-      762,  761,  309,  760,  309,  309,  317,  317,  317,  317,
-
-      317,  317,  317,  317,  317,  317,  317,  759,  317,  317,
-      317,  317,  317,  317,  341,  341,  341,  341,  341,  341,
-      341,  341,  341,  341,  341,  758,  341,  341,  341,  341,
-      341,  341,  343,  343,  343,  343,  343,  343,  343,  343,
+      250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
+      250,  253,  253,  253,  253,  253,  253,  253,  253,  253,
+      253,  253,  767,  253,  253,  253,  253,  253,  253,  255,
+      255,  255,  255,  255,  255,  255,  255,  255,  255,  255,
+      766,  255,  255,  255,  255,  255,  255,  264,  765,  264,
+      763,  264,  762,  264,  264,  761,  760,  264,  759,  264,
+      264,  266,  266,  758,  757,  756,  266,  266,  266,  286,
+      286,  286,  286,  755,  286,  286,  286,  286,  286,  286,
+      754,  286,  286,  286,  286,  286,  286,  309,  309,  309,
+      753,  309,  752,  309,  309,  751,  750,  309,  749,  309,
+
+      309,  317,  317,  317,  317,  317,  317,  317,  317,  317,
+      317,  317,  263,  317,  317,  317,  317,  317,  317,  341,
+      341,  341,  341,  341,  341,  341,  341,  341,  341,  341,
+      263,  341,  341,  341,  341,  341,  341,  343,  343,  343,
       343,  343,  343,  343,  343,  343,  343,  343,  343,  343,
       343,  343,  343,  343,  343,  343,  343,  343,  343,  343,
-      343,  343,  222,  757,  222,  756,  222,  222,  755,  754,
-      222,  753,  222,  222,  349,  752,  349,  751,  349,  349,
-      263,  263,  349,  263,  349,  349,  369,  369,  369,  369,
-      369,  369,  369,  369,  369,  369,  369,  369,  369,  369,
-      369,  369,  369,  369,  369,  369,  246,  246,  246,  246,
-
-      246,  246,  246,  749,  246,  246,  246,  246,  246,  246,
-      246,  246,  246,  246,  748,  246,  247,  247,  247,  247,
-      247,  247,  247,  747,  247,  247,  247,  247,  247,  247,
-      247,  247,  247,  247,  250,  250,  250,  250,  250,  250,
-      250,  746,  250,  250,  250,  250,  250,  250,  250,  250,
-      250,  250,  253,  253,  253,  253,  253,  253,  253,  253,
-      253,  253,  253,  745,  253,  253,  253,  253,  253,  253,
-      383,  744,  383,  743,  383,  742,  383,  383,  741,  740,
-      383,  739,  383,  383,  384,  384,  384,  384,  384,  384,
-      738,  384,  384,  384,  384,  384,  384,  384,  384,  384,
-
-      384,  384,  384,  384,  309,  309,  309,  737,  309,  736,
-      309,  309,  735,  731,  309,  730,  309,  309,  317,  317,
-      317,  317,  317,  317,  317,  317,  317,  317,  317,  729,
-      317,  317,  317,  317,  317,  317,  534,  728,  534,  727,
-      534,  534,  726,  725,  534,  724,  534,  534,  675,  675,
-      675,  675,  675,  675,  675,  675,  675,  675,  675,  675,
-      675,  675,  675,  675,  675,  675,  675,  675,  766,  723,
-      766,  766,  766,  766,  766,  766,  766,  766,  766,  766,
-      766,  766,  766,  766,  766,  766,  766,  766,  722,  721,
-      263,  716,  715,  714,  713,  712,  711,  710,  709,  708,
-
-      707,  706,  705,  704,  703,  702,  701,  700,  699,  698,
-      697,  696,  695,  694,  693,  692,  691,  690,  689,  688,
-      687,  686,  685,  263,  263,  263,  263,  263,  679,  678,
-      674,  673,  672,  671,  670,  669,  668,  667,  666,  665,
-      664,  663,  662,  661,  660,  659,  655,  654,  653,  652,
-      651,  650,  649,  648,  647,  646,  645,  644,  643,  642,
-      641,  640,  639,  638,  637,  636,  263,  263,  625,  624,
-      623,  622,  621,  620,  619,  618,  617,  616,  615,  614,
-      613,  612,  609,  608,  607,  606,  605,  604,  603,  602,
-      601,  600,  599,  598,  597,  596,  595,  594,  593,  592,
-
-      591,  590,  589,  588,  587,  584,  583,  582,  581,  580,
-      579,  578,  577,  263,  263,  263,  263,  263,  563,  562,
-      561,  558,  480,  557,  556,  555,  554,  553,  552,  549,
-      548,  547,  546,  545,  544,  543,  542,  541,  540,  539,
-      538,  533,  532,  531,  530,  529,  528,  527,  524,  519,
-      518,  517,  516,  515,  514,  513,  512,  511,  510,  509,
-      508,  504,  503,  474,  501,  263,  484,  382,  483,  482,
-      481,  480,  474,  473,  465,  464,  463,  462,  461,  460,
-      459,  458,  457,  456,  455,  454,  453,  452,  451,  450,
-      449,  837,  319,  318,  443,  439,  438,  430,  429,  422,
-
-      421,  420,  419,  407,  406,  405,  403,  402,  263,  263,
-      263,  382,  263,  374,  373,  254,  252,  248,  372,  368,
-      367,  366,  365,  364,  363,  362,  358,  357,  356,  353,
-      352,  351,  350,  224,  342,  209,  340,  339,  338,  337,
-      336,  335,  332,  331,  330,  329,  328,  323,  322,  321,
-      172,  171,  314,  202,  201,  194,  191,  190,  189,  174,
-      212,  320,  319,  318,  314,  837,  224,  213,  315,  314,
-      267,  263,  211,  254,  243,  242,  238,  237,  236,  235,
-      231,  230,  221,  220,  219,  214,  211,  209,  202,  201,
-      194,  191,  190,  189,  174,  172,  171,  837,   93,   93,
-
-       21,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837
-
+      343,  343,  343,  343,  343,  343,  343,  222,  263,  222,
+      747,  222,  222,  746,  745,  222,  744,  222,  222,  350,
+      743,  350,  742,  350,  350,  741,  740,  350,  739,  350,
+      350,  370,  370,  370,  370,  370,  370,  370,  370,  370,
+      370,  370,  370,  370,  370,  370,  370,  370,  370,  370,
+
+      370,  246,  246,  246,  246,  246,  246,  246,  738,  246,
+      246,  246,  246,  246,  246,  246,  246,  246,  246,  737,
+      246,  247,  247,  247,  247,  247,  247,  247,  736,  247,
+      247,  247,  247,  247,  247,  247,  247,  247,  247,  250,
+      250,  250,  250,  250,  250,  250,  735,  250,  250,  250,
+      250,  250,  250,  250,  250,  250,  250,  253,  253,  253,
+      253,  253,  253,  253,  253,  253,  253,  253,  734,  253,
+      253,  253,  253,  253,  253,  384,  733,  384,  729,  384,
+      728,  384,  384,  727,  726,  384,  725,  384,  384,  385,
+      385,  385,  385,  385,  385,  724,  385,  385,  385,  385,
+
+      385,  385,  385,  385,  385,  385,  385,  385,  385,  309,
+      309,  309,  723,  309,  722,  309,  309,  721,  720,  309,
+      719,  309,  309,  317,  317,  317,  317,  317,  317,  317,
+      317,  317,  317,  317,  263,  317,  317,  317,  317,  317,
+      317,  532,  714,  532,  713,  532,  532,  712,  711,  532,
+      710,  532,  532,  673,  673,  673,  673,  673,  673,  673,
+      673,  673,  673,  673,  673,  673,  673,  673,  673,  673,
+      673,  673,  673,  764,  709,  764,  764,  764,  764,  764,
+      764,  764,  764,  764,  764,  764,  764,  764,  764,  764,
+      764,  764,  764,  708,  707,  706,  705,  704,  703,  702,
+
+      701,  700,  699,  698,  697,  696,  695,  694,  693,  692,
+      691,  690,  689,  688,  687,  686,  685,  684,  683,  263,
+      263,  263,  263,  263,  677,  676,  672,  671,  670,  669,
+      668,  667,  666,  665,  664,  663,  662,  661,  660,  659,
+      658,  657,  653,  652,  651,  650,  649,  648,  647,  646,
+      645,  644,  643,  642,  641,  640,  639,  638,  637,  636,
+      635,  634,  263,  263,  623,  622,  621,  620,  619,  618,
+      617,  616,  615,  614,  613,  612,  611,  610,  607,  606,
+      605,  604,  603,  602,  601,  600,  599,  598,  597,  596,
+      595,  594,  593,  592,  591,  590,  589,  588,  587,  586,
+
+      585,  582,  581,  580,  579,  578,  577,  576,  575,  263,
+      263,  263,  263,  263,  561,  560,  559,  556,  478,  555,
+      554,  553,  552,  551,  550,  547,  546,  545,  544,  543,
+      542,  541,  540,  539,  538,  537,  536,  531,  530,  529,
+      528,  527,  526,  525,  522,  517,  516,  515,  514,  513,
+      512,  511,  510,  509,  508,  507,  506,  502,  501,  472,
+      499,  263,  482,  383,  481,  480,  479,  478,  472,  471,
+      463,  462,  461,  460,  459,  458,  457,  456,  455,  454,
+      453,  452,  451,  450,  449,  448,  447,  835,  319,  318,
+      444,  440,  439,  431,  430,  423,  422,  421,  420,  408,
+
+      407,  406,  404,  403,  263,  263,  263,  383,  263,  375,
+      374,  254,  252,  248,  373,  369,  368,  367,  366,  365,
+      364,  363,  359,  358,  357,  354,  353,  352,  351,  224,
+      342,  209,  340,  339,  338,  337,  336,  335,  332,  331,
+      330,  329,  328,  323,  322,  321,  172,  171,  314,  202,
+      201,  194,  191,  190,  189,  174,  212,  320,  319,  318,
+      314,  835,  224,  213,  315,  314,  267,  263,  211,  254,
+      243,  242,  238,  237,  236,  235,  231,  230,  221,  220,
+      219,  214,  211,  209,  202,  201,  194,  191,  190,  189,
+      174,  172,  171,  835,   93,   93,   21,  835,  835,  835,
+
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835
     } ;
 
     } ;
 
-static const short int yy_chk[2293] =
+static yyconst short int yy_chk[2289] =
     {   0,
         3,    3,    3,    3,    4,    4,    4,    4,    0,  108,
         0,    3,  121,  121,    0,    4,    9,   10,   96,   50,
     {   0,
         3,    3,    3,    3,    4,    4,    4,    4,    0,  108,
         0,    3,  121,  121,    0,    4,    9,   10,   96,   50,
@@ -889,16 +898,16 @@ static const short int yy_chk[2293] =
         5,    5,  107,  115,  111,   41,   41,    5,   87,    5,
        41,   41,    5,    5,   87,   41,   93,    5,  103,  132,
       105,  110,  103,   87,    5,    5,  109,    5,  112,    5,
         5,    5,  107,  115,  111,   41,   41,    5,   87,    5,
        41,   41,    5,    5,   87,   41,   93,    5,  103,  132,
       105,  110,  103,   87,    5,    5,  109,    5,  112,    5,
-      105,    5,  133,    5,    6,  113,  103,  268,   65,    6,
+      105,    5,  133,    5,    6,  113,  103,  569,   65,    6,
        65,   65,   65,   65,   65,   65,   65,    6,    6,    6,
         6,    6,    6,    6,  118,  122,  122,  118,  145,  153,
         6,    6,    6,    6,    6,    6,    6,    6,  265,  107,
        65,   65,   65,   65,   65,   65,   65,    6,    6,    6,
         6,    6,    6,    6,  118,  122,  122,  118,  145,  153,
         6,    6,    6,    6,    6,    6,    6,    6,  265,  107,
-      265,    6,  145,    6,  111,  835,  132,    6,    6,  153,
+      265,    6,  145,    6,  111,  833,  132,    6,    6,  153,
         6,    6,  110,  140,  140,  140,  140,    6,  109,    6,
 
         6,    6,  110,  140,  140,  140,  140,    6,  109,    6,
 
-      112,  146,    6,    6,  109,  109,  113,    6,   65,  212,
-      212,  133,  244,  244,    6,    6,   65,    6,  146,    6,
-      268,    6,  122,    6,    7,    7,    7,    7,    7,    7,
+      112,  146,    6,    6,  109,  109,  113,    6,   65,  569,
+      229,  133,  244,  244,    6,    6,   65,    6,  146,    6,
+      229,    6,  122,    6,    7,    7,    7,    7,    7,    7,
         7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
         7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
         7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
         7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
         7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
         7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
@@ -919,24 +928,24 @@ static const short int yy_chk[2293] =
        11,   11,   11,   11,   11,   11,   11,   11,   11,   11,
 
        11,   11,   11,   11,   11,   11,   13,  149,  116,  116,
        11,   11,   11,   11,   11,   11,   11,   11,   11,   11,
 
        11,   11,   11,   11,   11,   11,   13,  149,  116,  116,
-      116,  116,  834,   13,  116,  833,   13,  270,   13,   13,
+      116,  116,  832,   13,  116,  831,   13,  268,   13,   13,
       149,   13,   13,   13,   13,   13,   13,   13,  123,  123,
       149,   13,   13,   13,   13,   13,   13,   13,  123,  123,
-       13,  275,   66,   13,   66,   66,   66,   66,   66,   66,
-       66,   99,  229,  186,   99,   99,   99,   99,   99,   99,
-       99,  147,  229,  147,  830,   99,  124,  124,  281,  106,
+       13,  270,   66,   13,   66,   66,   66,   66,   66,   66,
+       66,   99,  269,  186,   99,   99,   99,   99,   99,   99,
+       99,  147,  510,  147,  510,   99,  124,  124,  281,  106,
       147,  273,  125,  125,   13,  186,   13,   13,   13,   13,
        13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
        13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
       147,  273,  125,  125,   13,  186,   13,   13,   13,   13,
        13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
        13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
-      272,  270,   13,   15,   15,  269,  277,  123,   15,  316,
+      268,  277,   13,   15,   15,  271,  272,  123,   15,  269,
 
 
-      278,   15,  275,   15,   15,  571,   15,   15,   15,   15,
+      278,   15,  275,   15,   15,  270,   15,   15,   15,   15,
        15,   15,   15,  101,   15,   15,  106,  124,   15,  281,
       106,  273,  119,  101,  125,  101,  101,  101,  101,  101,
       101,  101,  119,  234,  119,  119,  119,  119,  119,  119,
       119,  148,  148,  148,  234,  234,   15,  148,  148,   15,
        15,   15,   15,  101,   15,   15,  106,  124,   15,  281,
       106,  273,  119,  101,  125,  101,  101,  101,  101,  101,
       101,  101,  119,  234,  119,  119,  119,  119,  119,  119,
       119,  148,  148,  148,  234,  234,   15,  148,  148,   15,
-       15,  293,  269,   15,   15,   15,  309,  309,   15,   15,
-      278,   15,   15,  272,   15,  293,   15,  571,   15,  304,
-      277,   15,  316,  304,   15,   15,   15,   15,   19,   19,
+       15,  305,  828,   15,   15,   15,  293,  271,   15,   15,
+      278,   15,   15,  305,   15,  277,   15,  271,   15,  272,
+      293,   15,  827,  275,   15,   15,   15,   15,   19,   19,
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
 
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
 
@@ -947,186 +956,184 @@ static const short int yy_chk[2293] =
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
        19,   19,   19,   19,   19,   19,   19,   19,   19,  100,
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
        19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
        19,   19,   19,   19,   19,   19,   19,   19,   19,  100,
-      114,  143,  143,  143,  143,  143,  143,  143,  829,  100,
+      114,  143,  143,  143,  143,  143,  143,  143,  393,  100,
       283,  100,  100,  100,  100,  100,  100,  100,  155,  179,
       283,  100,  100,  100,  100,  100,  100,  100,  155,  179,
-      179,  179,  179,  828,  155,  155,  311,  311,  276,  155,
+      179,  179,  179,  304,  155,  155,  826,  304,  825,  155,
 
 
-      155,  827,  312,  312,  155,  164,  164,  164,  164,  164,
+      155,  309,  309,  491,  155,  164,  164,  164,  164,  164,
       164,  173,  173,  173,  173,  173,  173,  173,  204,  204,
       164,  173,  173,  173,  173,  173,  173,  173,  204,  204,
-      204,  204,  204,  204,  206,  206,  206,  206,  217,  217,
-      217,  217,  217,  217,  114,  280,  271,  310,  310,  100,
-      114,  261,  261,  261,  261,  261,  261,  100,  284,  114,
+      204,  204,  204,  204,  206,  206,  206,  206,  212,  212,
+      212,  212,  276,  280,  114,  299,  299,  284,  402,  100,
+      114,  217,  217,  217,  217,  217,  217,  100,  393,  114,
       120,  283,  120,  215,  215,  215,  215,  215,  215,  215,
       120,  283,  120,  215,  215,  215,  215,  215,  215,  215,
-      276,  305,  216,  120,  216,  216,  216,  216,  216,  216,
-      216,  276,  276,  305,  299,  299,  312,  120,  826,  120,
-      120,  489,  120,  313,  313,  120,  386,  120,  120,  120,
-      120,  120,  120,  343,  343,  120,  120,  120,  271,  120,
-
-      299,  369,  369,  256,  280,  825,  300,  120,  271,  284,
-      310,  120,  300,  256,  120,  256,  256,  256,  256,  256,
-      256,  256,  257,  371,  371,  120,  430,  512,  300,  512,
-      430,  385,  257,  824,  257,  257,  257,  257,  257,  257,
+      316,  299,  216,  120,  216,  216,  216,  216,  216,  216,
+      216,  261,  261,  261,  261,  261,  261,  120,  300,  120,
+      120,  491,  120,  824,  300,  120,  387,  120,  120,  120,
+      120,  120,  120,  823,  276,  120,  120,  120,  284,  120,
+
+      300,  822,  280,  256,  390,  276,  276,  120,  294,  294,
+      402,  120,  294,  256,  120,  256,  256,  256,  256,  256,
+      256,  256,  257,  400,  294,  120,  310,  310,  311,  311,
+      312,  312,  257,  316,  257,  257,  257,  257,  257,  257,
       257,  259,  259,  259,  259,  259,  259,  259,  260,  287,
       257,  259,  259,  259,  259,  259,  259,  259,  260,  287,
-      287,  287,  287,  287,  287,  287,  390,  489,  260,  386,
-      260,  260,  260,  260,  260,  260,  260,  392,  387,  389,
-      288,  391,  394,  256,  294,  294,  388,  393,  294,  292,
+      287,  287,  287,  287,  287,  287,  313,  313,  260,  387,
+      260,  260,  260,  260,  260,  260,  260,  370,  370,  390,
+      288,  372,  372,  256,  343,  343,  343,  343,  303,  292,
       288,  256,  288,  288,  288,  288,  288,  288,  288,  292,
       288,  256,  288,  288,  288,  288,  288,  288,  288,  292,
-      294,  303,  385,  292,  344,  344,  344,  344,  292,  345,
-
-      345,  345,  345,  303,  368,  368,  368,  368,  292,  346,
-      346,  346,  346,  346,  346,  346,  397,  390,  303,  347,
-      347,  347,  347,  347,  347,  387,  346,  375,  375,  375,
-      375,  375,  375,  388,  389,  368,  391,  392,  368,  395,
-      398,  399,  393,  368,  400,  401,  394,  368,  377,  823,
-      441,  441,  822,  368,  488,  378,  426,  486,  346,  494,
-      377,  377,  377,  377,  377,  377,  377,  378,  378,  378,
-      378,  378,  378,  409,  427,  426,  492,  377,  409,  442,
-      442,  444,  444,  444,  444,  491,  495,  427,  493,  409,
-      496,  397,  445,  445,  445,  445,  565,  398,  567,  500,
-
-      395,  446,  446,  446,  446,  400,  404,  566,  497,  377,
-      399,  441,  447,  447,  447,  447,  494,  401,  404,  404,
-      404,  404,  404,  404,  404,  466,  466,  466,  466,  488,
-      486,  448,  570,  448,  627,  404,  448,  448,  448,  448,
-      448,  448,  448,  572,  467,  467,  467,  467,  492,  535,
-      535,  573,  623,  623,  491,  600,  466,  496,  495,  466,
-      500,  567,  784,  565,  466,  544,  493,  404,  466,  784,
-      544,  821,  566,  568,  466,  467,  497,  600,  467,  569,
-      626,  467,  475,  467,  635,  820,  467,  467,  819,  632,
-      675,  675,  633,  467,  475,  475,  475,  475,  475,  475,
-
-      478,  570,  478,  627,  572,  478,  478,  478,  478,  478,
-      478,  478,  502,  818,  502,  817,  573,  502,  502,  502,
-      502,  502,  502,  502,  536,  536,  536,  536,  536,  536,
-      536,  537,  537,  537,  537,  537,  537,  537,  559,  559,
-      559,  559,  559,  559,  559,  560,  569,  568,  632,  633,
-      681,  569,  683,  635,  626,  677,  677,  560,  560,  560,
-      560,  560,  560,  560,  575,  575,  575,  575,  575,  575,
-      575,  576,  601,  601,  601,  601,  601,  601,  601,  682,
-      684,  719,  767,  576,  576,  576,  576,  576,  576,  576,
-      658,  658,  658,  658,  658,  658,  658,  696,  780,  780,
-
-      814,  845,  863,  845,  863,  813,  696,  696,  832,  845,
-      863,  683,  780,  681,  831,  831,  831,  831,  831,  831,
-      831,  874,  874,  832,  832,  832,  832,  832,  832,  832,
-      871,  877,  871,  877,  812,  811,  810,  809,  871,  877,
-      682,  808,  719,  684,  807,  806,  805,  804,  802,  801,
-      800,  799,  797,  796,  794,  767,  838,  838,  838,  838,
+      303,  388,  400,  292,  344,  344,  344,  344,  292,  310,
+
+      345,  345,  345,  345,  312,  303,  386,  391,  292,  346,
+      346,  346,  346,  347,  347,  347,  347,  347,  347,  347,
+      348,  348,  348,  348,  348,  348,  369,  369,  369,  369,
+      347,  376,  376,  376,  376,  376,  376,  378,  389,  392,
+      394,  395,  396,  398,  399,  401,  428,  821,  388,  378,
+      378,  378,  378,  378,  378,  378,  410,  369,  486,  428,
+      369,  410,  347,  484,  379,  369,  378,  386,  391,  369,
+      405,  427,  410,  442,  442,  369,  379,  379,  379,  379,
+      379,  379,  405,  405,  405,  405,  405,  405,  405,  431,
+      427,  443,  443,  431,  487,  389,  492,  489,  378,  405,
+
+      490,  399,  498,  396,  392,  394,  401,  445,  445,  445,
+      445,  493,  542,  495,  446,  395,  446,  542,  398,  446,
+      446,  446,  446,  446,  446,  446,  464,  464,  464,  464,
+      473,  405,  494,  486,  442,  565,  484,  465,  465,  465,
+      465,  820,  473,  473,  473,  473,  473,  473,  533,  533,
+      621,  621,  819,  492,  782,  598,  566,  464,  818,  624,
+      464,  782,  563,  498,  567,  464,  489,  564,  465,  464,
+      487,  465,  490,  570,  465,  464,  465,  598,  568,  465,
+      465,  495,  476,  493,  476,  571,  465,  476,  476,  476,
+      476,  476,  476,  476,  817,  500,  816,  500,  565,  494,
+
+      500,  500,  500,  500,  500,  500,  500,  534,  534,  534,
+      534,  534,  534,  534,  535,  535,  535,  535,  535,  535,
+      535,  557,  557,  557,  557,  557,  557,  557,  558,  563,
+      566,  567,  564,  624,  570,  625,  567,  630,  631,  633,
+      558,  558,  558,  558,  558,  558,  558,  568,  574,  679,
+      571,  573,  573,  573,  573,  573,  573,  573,  673,  673,
+      574,  574,  574,  574,  574,  574,  574,  599,  599,  599,
+      599,  599,  599,  599,  656,  656,  656,  656,  656,  656,
+      656,  675,  675,  680,  681,  682,  717,  765,  694,  778,
+      778,  843,  861,  843,  861,  631,  630,  694,  694,  843,
+
+      861,  872,  872,  778,  625,  830,  815,  812,  633,  811,
+      810,  809,  679,  829,  829,  829,  829,  829,  829,  829,
+      830,  830,  830,  830,  830,  830,  830,  869,  875,  869,
+      875,  808,  807,  806,  805,  869,  875,  804,  803,  802,
+      800,  799,  798,  681,  680,  797,  795,  717,  682,  794,
+      792,  791,  790,  789,  788,  786,  785,  784,  783,  781,
+      765,  836,  836,  836,  836,  836,  836,  836,  836,  836,
+      836,  836,  836,  836,  836,  836,  836,  836,  836,  836,
+      836,  837,  837,  837,  837,  837,  837,  837,  837,  837,
+      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
+
+      837,  838,  838,  838,  838,  838,  838,  838,  838,  838,
       838,  838,  838,  838,  838,  838,  838,  838,  838,  838,
       838,  838,  838,  838,  838,  838,  838,  838,  838,  838,
-      838,  838,  838,  838,  838,  838,  839,  839,  839,  839,
+      838,  839,  839,  839,  839,  839,  839,  839,  839,  839,
       839,  839,  839,  839,  839,  839,  839,  839,  839,  839,
       839,  839,  839,  839,  839,  839,  839,  839,  839,  839,
-      839,  839,  839,  839,  839,  839,  840,  840,  840,  840,
-
+      839,  840,  840,  840,  840,  840,  840,  840,  840,  840,
       840,  840,  840,  840,  840,  840,  840,  840,  840,  840,
       840,  840,  840,  840,  840,  840,  840,  840,  840,  840,
-      840,  840,  840,  840,  840,  840,  841,  841,  841,  841,
-      841,  841,  841,  841,  841,  841,  841,  841,  841,  841,
-      841,  841,  841,  841,  841,  841,  842,  842,  842,  842,
-      842,  842,  842,  842,  842,  842,  842,  842,  842,  842,
-      842,  842,  842,  842,  842,  842,  843,  843,  843,  843,
-      843,  843,  843,  843,  843,  843,  843,  793,  843,  843,
-      843,  843,  843,  843,  844,  844,  844,  844,  844,  844,
-      846,  846,  846,  792,  791,  790,  846,  788,  787,  786,
-      846,  847,  847,  847,  847,  847,  847,  847,  847,  847,
-
-      847,  847,  785,  847,  847,  847,  847,  847,  847,  848,
-      848,  848,  848,  848,  848,  848,  848,  848,  848,  848,
-      783,  848,  848,  848,  848,  848,  848,  849,  779,  849,
-      778,  849,  849,  777,  774,  849,  771,  849,  849,  850,
-      850,  770,  769,  850,  768,  850,  850,  851,  851,  851,
-      851,  851,  851,  851,  766,  851,  851,  851,  851,  851,
-      851,  851,  851,  851,  851,  765,  851,  852,  852,  852,
-      852,  852,  852,  852,  852,  852,  852,  852,  852,  852,
-      852,  852,  852,  852,  852,  763,  852,  853,  853,  853,
+      840,  841,  841,  841,  841,  841,  841,  841,  841,  841,
+      841,  841,  777,  841,  841,  841,  841,  841,  841,  842,
+      842,  842,  842,  842,  842,  844,  844,  844,  776,  775,
+      772,  844,  769,  768,  767,  844,  845,  845,  845,  845,
+
+      845,  845,  845,  845,  845,  845,  845,  766,  845,  845,
+      845,  845,  845,  845,  846,  846,  846,  846,  846,  846,
+      846,  846,  846,  846,  846,  764,  846,  846,  846,  846,
+      846,  846,  847,  763,  847,  761,  847,  847,  760,  759,
+      847,  752,  847,  847,  848,  848,  750,  749,  848,  748,
+      848,  848,  849,  849,  849,  849,  849,  849,  849,  747,
+      849,  849,  849,  849,  849,  849,  849,  849,  849,  849,
+      745,  849,  850,  850,  850,  850,  850,  850,  850,  850,
+      850,  850,  850,  850,  850,  850,  850,  850,  850,  850,
+      744,  850,  851,  851,  851,  851,  851,  851,  851,  851,
+
+      851,  851,  851,  851,  851,  851,  851,  851,  851,  851,
+      851,  852,  852,  852,  852,  852,  852,  852,  852,  852,
+      852,  852,  742,  852,  852,  852,  852,  852,  852,  853,
       853,  853,  853,  853,  853,  853,  853,  853,  853,  853,
       853,  853,  853,  853,  853,  853,  853,  853,  853,  853,
+      741,  853,  853,  853,  853,  853,  853,  854,  740,  854,
+      739,  854,  736,  854,  854,  735,  734,  854,  733,  854,
+      854,  855,  855,  732,  731,  730,  855,  855,  855,  856,
+      856,  856,  856,  728,  856,  856,  856,  856,  856,  856,
+      727,  856,  856,  856,  856,  856,  856,  857,  857,  857,
+      726,  857,  725,  857,  857,  722,  720,  857,  719,  857,
+
+      857,  858,  858,  858,  858,  858,  858,  858,  858,  858,
+      858,  858,  718,  858,  858,  858,  858,  858,  858,  859,
+      859,  859,  859,  859,  859,  859,  859,  859,  859,  859,
+      716,  859,  859,  859,  859,  859,  859,  860,  860,  860,
+      860,  860,  860,  860,  860,  860,  860,  860,  860,  860,
+      860,  860,  860,  860,  860,  860,  860,  862,  715,  862,
+      714,  862,  862,  713,  712,  862,  711,  862,  862,  863,
+      710,  863,  709,  863,  863,  708,  707,  863,  706,  863,
+      863,  864,  864,  864,  864,  864,  864,  864,  864,  864,
+      864,  864,  864,  864,  864,  864,  864,  864,  864,  864,
 
 
-      853,  853,  853,  853,  853,  853,  854,  854,  854,  854,
-      854,  854,  854,  854,  854,  854,  854,  762,  854,  854,
-      854,  854,  854,  854,  855,  855,  855,  855,  855,  855,
-      855,  855,  855,  855,  855,  761,  855,  855,  855,  855,
-      855,  855,  856,  754,  856,  752,  856,  751,  856,  856,
-      750,  749,  856,  747,  856,  856,  857,  857,  746,  744,
-      743,  857,  857,  857,  858,  858,  858,  858,  742,  858,
-      858,  858,  858,  858,  858,  741,  858,  858,  858,  858,
-      858,  858,  859,  859,  859,  738,  859,  737,  859,  859,
-      736,  735,  859,  734,  859,  859,  860,  860,  860,  860,
-
-      860,  860,  860,  860,  860,  860,  860,  733,  860,  860,
-      860,  860,  860,  860,  861,  861,  861,  861,  861,  861,
-      861,  861,  861,  861,  861,  732,  861,  861,  861,  861,
-      861,  861,  862,  862,  862,  862,  862,  862,  862,  862,
-      862,  862,  862,  862,  862,  862,  862,  862,  862,  862,
-      862,  862,  864,  730,  864,  729,  864,  864,  728,  727,
-      864,  724,  864,  864,  865,  722,  865,  721,  865,  865,
-      720,  718,  865,  717,  865,  865,  866,  866,  866,  866,
-      866,  866,  866,  866,  866,  866,  866,  866,  866,  866,
-      866,  866,  866,  866,  866,  866,  867,  867,  867,  867,
-
-      867,  867,  867,  716,  867,  867,  867,  867,  867,  867,
-      867,  867,  867,  867,  715,  867,  868,  868,  868,  868,
-      868,  868,  868,  714,  868,  868,  868,  868,  868,  868,
-      868,  868,  868,  868,  869,  869,  869,  869,  869,  869,
-      869,  713,  869,  869,  869,  869,  869,  869,  869,  869,
-      869,  869,  870,  870,  870,  870,  870,  870,  870,  870,
-      870,  870,  870,  712,  870,  870,  870,  870,  870,  870,
-      872,  711,  872,  710,  872,  709,  872,  872,  708,  706,
-      872,  703,  872,  872,  873,  873,  873,  873,  873,  873,
-      702,  873,  873,  873,  873,  873,  873,  873,  873,  873,
-
-      873,  873,  873,  873,  875,  875,  875,  700,  875,  698,
-      875,  875,  697,  695,  875,  694,  875,  875,  876,  876,
-      876,  876,  876,  876,  876,  876,  876,  876,  876,  693,
-      876,  876,  876,  876,  876,  876,  878,  692,  878,  691,
-      878,  878,  690,  689,  878,  688,  878,  878,  879,  879,
-      879,  879,  879,  879,  879,  879,  879,  879,  879,  879,
-      879,  879,  879,  879,  879,  879,  879,  879,  880,  687,
-      880,  880,  880,  880,  880,  880,  880,  880,  880,  880,
-      880,  880,  880,  880,  880,  880,  880,  880,  686,  685,
-      680,  679,  678,  674,  673,  672,  671,  670,  669,  668,
-
-      667,  666,  665,  664,  662,  660,  659,  656,  655,  653,
-      651,  650,  648,  647,  646,  645,  643,  641,  640,  639,
-      638,  637,  636,  634,  631,  630,  629,  628,  625,  624,
-      622,  621,  620,  619,  618,  617,  616,  615,  613,  612,
-      607,  606,  605,  604,  603,  602,  599,  598,  597,  596,
-      595,  594,  592,  591,  590,  589,  588,  587,  586,  585,
-      584,  583,  582,  580,  579,  577,  574,  564,  562,  561,
-      557,  556,  555,  554,  553,  552,  551,  550,  548,  547,
-      546,  545,  543,  542,  541,  540,  533,  532,  531,  530,
-      529,  528,  527,  526,  525,  524,  523,  522,  520,  518,
-
-      517,  516,  515,  514,  513,  511,  510,  509,  508,  507,
-      506,  505,  504,  499,  498,  490,  487,  485,  484,  482,
-      481,  477,  476,  473,  472,  471,  470,  469,  468,  465,
-      462,  461,  460,  459,  458,  457,  456,  454,  453,  451,
-      449,  439,  438,  436,  435,  434,  432,  431,  429,  424,
-      423,  422,  420,  418,  417,  416,  415,  414,  413,  411,
-      410,  408,  407,  403,  402,  396,  384,  383,  382,  381,
-      380,  379,  374,  372,  367,  366,  365,  364,  363,  361,
-      360,  359,  358,  357,  356,  355,  354,  353,  352,  351,
-      350,  341,  318,  317,  315,  307,  306,  302,  301,  298,
-
-      297,  296,  295,  291,  290,  289,  286,  285,  282,  279,
-      274,  266,  264,  255,  254,  253,  252,  248,  245,  243,
-      242,  241,  239,  238,  236,  235,  233,  231,  230,  228,
-      227,  226,  225,  224,  210,  208,  200,  199,  198,  196,
-      193,  192,  185,  184,  183,  181,  180,  177,  175,  174,
-      171,  170,  169,  157,  156,  154,  152,  151,  150,  144,
-      142,  138,  137,  136,  134,  131,  130,  129,  128,  126,
-      104,  102,   98,   97,   89,   88,   86,   85,   84,   83,
-       81,   80,   70,   69,   67,   64,   58,   57,   43,   42,
-       40,   38,   37,   36,   30,   25,   24,   21,   12,    8,
-
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837,  837,  837,  837,  837,  837,  837,  837,  837,
-      837,  837
-
+      864,  865,  865,  865,  865,  865,  865,  865,  704,  865,
+      865,  865,  865,  865,  865,  865,  865,  865,  865,  701,
+      865,  866,  866,  866,  866,  866,  866,  866,  700,  866,
+      866,  866,  866,  866,  866,  866,  866,  866,  866,  867,
+      867,  867,  867,  867,  867,  867,  698,  867,  867,  867,
+      867,  867,  867,  867,  867,  867,  867,  868,  868,  868,
+      868,  868,  868,  868,  868,  868,  868,  868,  696,  868,
+      868,  868,  868,  868,  868,  870,  695,  870,  693,  870,
+      692,  870,  870,  691,  690,  870,  689,  870,  870,  871,
+      871,  871,  871,  871,  871,  688,  871,  871,  871,  871,
+
+      871,  871,  871,  871,  871,  871,  871,  871,  871,  873,
+      873,  873,  687,  873,  686,  873,  873,  685,  684,  873,
+      683,  873,  873,  874,  874,  874,  874,  874,  874,  874,
+      874,  874,  874,  874,  678,  874,  874,  874,  874,  874,
+      874,  876,  677,  876,  676,  876,  876,  672,  671,  876,
+      670,  876,  876,  877,  877,  877,  877,  877,  877,  877,
+      877,  877,  877,  877,  877,  877,  877,  877,  877,  877,
+      877,  877,  877,  878,  669,  878,  878,  878,  878,  878,
+      878,  878,  878,  878,  878,  878,  878,  878,  878,  878,
+      878,  878,  878,  668,  667,  666,  665,  664,  663,  662,
+
+      660,  658,  657,  654,  653,  651,  649,  648,  646,  645,
+      644,  643,  641,  639,  638,  637,  636,  635,  634,  632,
+      629,  628,  627,  626,  623,  622,  620,  619,  618,  617,
+      616,  615,  614,  613,  611,  610,  605,  604,  603,  602,
+      601,  600,  597,  596,  595,  594,  593,  592,  590,  589,
+      588,  587,  586,  585,  584,  583,  582,  581,  580,  578,
+      577,  575,  572,  562,  560,  559,  555,  554,  553,  552,
+      551,  550,  549,  548,  546,  545,  544,  543,  541,  540,
+      539,  538,  531,  530,  529,  528,  527,  526,  525,  524,
+      523,  522,  521,  520,  518,  516,  515,  514,  513,  512,
+
+      511,  509,  508,  507,  506,  505,  504,  503,  502,  497,
+      496,  488,  485,  483,  482,  480,  479,  475,  474,  471,
+      470,  469,  468,  467,  466,  463,  460,  459,  458,  457,
+      456,  455,  454,  452,  451,  449,  447,  440,  439,  437,
+      436,  435,  433,  432,  430,  425,  424,  423,  421,  419,
+      418,  417,  416,  415,  414,  412,  411,  409,  408,  404,
+      403,  397,  385,  384,  383,  382,  381,  380,  375,  373,
+      368,  367,  366,  365,  364,  362,  361,  360,  359,  358,
+      357,  356,  355,  354,  353,  352,  351,  341,  318,  317,
+      315,  307,  306,  302,  301,  298,  297,  296,  295,  291,
+
+      290,  289,  286,  285,  282,  279,  274,  266,  264,  255,
+      254,  253,  252,  248,  245,  243,  242,  241,  239,  238,
+      236,  235,  233,  231,  230,  228,  227,  226,  225,  224,
+      210,  208,  200,  199,  198,  196,  193,  192,  185,  184,
+      183,  181,  180,  177,  175,  174,  171,  170,  169,  157,
+      156,  154,  152,  151,  150,  144,  142,  138,  137,  136,
+      134,  131,  130,  129,  128,  126,  104,  102,   98,   97,
+       89,   88,   86,   85,   84,   83,   81,   80,   70,   69,
+       67,   64,   58,   57,   43,   42,   40,   38,   37,   36,
+       30,   25,   24,   21,   12,    8,  835,  835,  835,  835,
+
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835,  835,  835,
+      835,  835,  835,  835,  835,  835,  835,  835
     } ;
 
 static yy_state_type yy_last_accepting_state;
     } ;
 
 static yy_state_type yy_last_accepting_state;
@@ -1139,8 +1146,9 @@ static char *yy_last_accepting_cpos;
 #define yymore() yymore_used_but_not_detected
 #define YY_MORE_ADJ 0
 char *yytext;
 #define yymore() yymore_used_but_not_detected
 #define YY_MORE_ADJ 0
 char *yytext;
-# line 1 "yaccParser/hslexer.flex"
-# line 2 "yaccParser/hslexer.flex"
+#line 1 "yaccParser/hslexer.flex"
+#define INITIAL 0
+#line 2 "yaccParser/hslexer.flex"
 /**********************************************************************
 *                                                                     *
 *                                                                     *
 /**********************************************************************
 *                                                                     *
 *                                                                     *
@@ -1206,7 +1214,7 @@ char *yytext;
 #define _isconstr(s)   (CharTable[*s]&(_C))
 BOOLEAN isconstr PROTO((char *)); /* fwd decl */
 
 #define _isconstr(s)   (CharTable[*s]&(_C))
 BOOLEAN isconstr PROTO((char *)); /* fwd decl */
 
-unsigned char CharTable[NCHARS] = {
+static unsigned char CharTable[NCHARS] = {
 /* nul */      0,      0,      0,      0,      0,      0,      0,      0,
 /* bs  */      0,      _S,     _S,     _S,     _S,     0,      0,      0,
 /* dle */      0,      0,      0,      0,      0,      0,      0,      0,
 /* nul */      0,      0,      0,      0,      0,      0,      0,      0,
 /* bs  */      0,      _S,     _S,     _S,     _S,     0,      0,      0,
 /* dle */      0,      0,      0,      0,      0,      0,      0,      0,
@@ -1257,12 +1265,12 @@ char *input_filename = NULL;    /* Always points to a dynamically allocated string
  * have been renamed as hsXXXXX rather than yyXXXXX.  --JSM
  */
 
  * have been renamed as hsXXXXX rather than yyXXXXX.  --JSM
  */
 
-int hslineno = 0;              /* Line number at end of token */
+static int hslineno = 0;       /* Line number at end of token */
 int hsplineno = 0;             /* Line number at end of previous token */
 
 int hsplineno = 0;             /* Line number at end of previous token */
 
-int hscolno = 0;               /* Column number at end of token */
+static int hscolno = 0;                /* Column number at end of token */
 int hspcolno = 0;              /* Column number at end of previous token */
 int hspcolno = 0;              /* Column number at end of previous token */
-int hsmlcolno = 0;             /* Column number for multiple-rule lexemes */
+static int hsmlcolno = 0;      /* Column number for multiple-rule lexemes */
 
 int startlineno = 0;           /* The line number where something starts */
 int endlineno = 0;             /* The line number where something ends */
 
 int startlineno = 0;           /* The line number where something starts */
 int endlineno = 0;             /* The line number where something ends */
@@ -1284,12 +1292,15 @@ static int nested_comments;     /* For counting comment nesting depth */
 
 /* Essential forward declarations */
 
 
 /* Essential forward declarations */
 
-static VOID hsnewid     PROTO((char *, int));
-static VOID layout_input PROTO((char *, int));
-static VOID cleartext   (NO_ARGS);
-static VOID addtext     PROTO((char *, unsigned));
-static VOID addchar     PROTO((char));
+static void hsnewid     PROTO((char *, int));
+static void layout_input PROTO((char *, int));
+static void cleartext   (NO_ARGS);
+static void addtext     PROTO((char *, unsigned));
+static void addchar     PROTO((char));
 static char *fetchtext  PROTO((unsigned *));
 static char *fetchtext  PROTO((unsigned *));
+static void new_filename PROTO((char *));
+static int  Return      PROTO((int));
+static void hsentercontext PROTO((int));
 
 /* Special file handling for IMPORTS */
 /*  Note: imports only ever go *one deep* (hence no need for a stack) WDP 94/09 */
 
 /* Special file handling for IMPORTS */
 /*  Note: imports only ever go *one deep* (hence no need for a stack) WDP 94/09 */
@@ -1392,11 +1403,65 @@ static int StateDepth = -1;
    are _exclusive_.  All rules should be prefixed with an appropriate
    list of start states.
  */
    are _exclusive_.  All rules should be prefixed with an appropriate
    list of start states.
  */
+#define Char 1
+#define CharEsc 2
+#define Code 3
+#define Comment 4
+#define GlaExt 5
+#define GhcPragma 6
+#define UserPragma 7
+#define String 8
+#define StringEsc 9
+
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
  */
 
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
  */
 
+#ifndef YY_SKIP_YYWRAP
+#ifdef __cplusplus
+extern "C" int yywrap YY_PROTO(( void ));
+#else
+extern int yywrap YY_PROTO(( void ));
+#endif
+#endif
+
+#ifndef YY_NO_UNPUT
+static void yyunput YY_PROTO(( int c, char *buf_ptr ));
+#endif
+
+#ifndef yytext_ptr
+static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
+#endif
+
+#ifndef YY_NO_INPUT
+#ifdef __cplusplus
+static int yyinput YY_PROTO(( void ));
+#else
+static int input YY_PROTO(( void ));
+#endif
+#endif
+
+#if YY_STACK_USED
+static int yy_start_stack_ptr = 0;
+static int yy_start_stack_depth = 0;
+static int *yy_start_stack = 0;
+#ifndef YY_NO_PUSH_STATE
+static void yy_push_state YY_PROTO(( int new_state ));
+#endif
+#ifndef YY_NO_POP_STATE
+static void yy_pop_state YY_PROTO(( void ));
+#endif
+#ifndef YY_NO_TOP_STATE
+static int yy_top_state YY_PROTO(( void ));
+#endif
+
+#else
+#define YY_NO_PUSH_STATE 1
+#define YY_NO_POP_STATE 1
+#define YY_NO_TOP_STATE 1
+#endif
+
 #ifdef YY_MALLOC_DECL
 YY_MALLOC_DECL
 #else
 #ifdef YY_MALLOC_DECL
 YY_MALLOC_DECL
 #else
@@ -1433,9 +1498,15 @@ YY_MALLOC_DECL
 #define YY_INPUT(buf,result,max_size) \
        if ( yy_current_buffer->yy_is_interactive ) \
                { \
 #define YY_INPUT(buf,result,max_size) \
        if ( yy_current_buffer->yy_is_interactive ) \
                { \
-               int c = getc( yyin ); \
-               result = c == EOF ? 0 : 1; \
-               buf[0] = (char) c; \
+               int c = '*', n; \
+               for ( n = 0; n < max_size && \
+                            (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
+                       buf[n] = (char) c; \
+               if ( c == '\n' ) \
+                       buf[n++] = (char) c; \
+               if ( c == EOF && ferror( yyin ) ) \
+                       YY_FATAL_ERROR( "input in flex scanner failed" ); \
+               result = n; \
                } \
        else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
                  && ferror( yyin ) ) \
                } \
        else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
                  && ferror( yyin ) ) \
@@ -1479,13 +1550,19 @@ YY_MALLOC_DECL
 #define YY_BREAK break;
 #endif
 
 #define YY_BREAK break;
 #endif
 
+#define YY_RULE_SETUP \
+       if ( yyleng > 0 ) \
+               yy_current_buffer->yy_at_bol = \
+                               (yytext[yyleng - 1] == '\n'); \
+       YY_USER_ACTION
+
 YY_DECL
        {
        register yy_state_type yy_current_state;
        register char *yy_cp, *yy_bp;
        register int yy_act;
 
 YY_DECL
        {
        register yy_state_type yy_current_state;
        register char *yy_cp, *yy_bp;
        register int yy_act;
 
-# line 274 "yaccParser/hslexer.flex"
+#line 277 "yaccParser/hslexer.flex"
 
 
 
 
 
 
@@ -1498,6 +1575,8 @@ YY_DECL
 
        if ( yy_init )
                {
 
        if ( yy_init )
                {
+               yy_init = 0;
+
 #ifdef YY_USER_INIT
                YY_USER_INIT;
 #endif
 #ifdef YY_USER_INIT
                YY_USER_INIT;
 #endif
@@ -1511,15 +1590,11 @@ YY_DECL
                if ( ! yyout )
                        yyout = stdout;
 
                if ( ! yyout )
                        yyout = stdout;
 
-               if ( yy_current_buffer )
-                       yy_init_buffer( yy_current_buffer, yyin );
-               else
+               if ( ! yy_current_buffer )
                        yy_current_buffer =
                                yy_create_buffer( yyin, YY_BUF_SIZE );
 
                yy_load_buffer_state();
                        yy_current_buffer =
                                yy_create_buffer( yyin, YY_BUF_SIZE );
 
                yy_load_buffer_state();
-
-               yy_init = 0;
                }
 
        while ( 1 )             /* loops until end-of-file is reached */
                }
 
        while ( 1 )             /* loops until end-of-file is reached */
@@ -1535,8 +1610,7 @@ YY_DECL
                yy_bp = yy_cp;
 
                yy_current_state = yy_start;
                yy_bp = yy_cp;
 
                yy_current_state = yy_start;
-               if ( yy_bp[-1] == '\n' )
-                       ++yy_current_state;
+               yy_current_state += YY_AT_BOL();
 yy_match:
                do
                        {
 yy_match:
                do
                        {
@@ -1549,16 +1623,22 @@ yy_match:
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                                {
                                yy_current_state = (int) yy_def[yy_current_state];
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                                {
                                yy_current_state = (int) yy_def[yy_current_state];
-                               if ( yy_current_state >= 838 )
+                               if ( yy_current_state >= 836 )
                                        yy_c = yy_meta[(unsigned int) yy_c];
                                }
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                        ++yy_cp;
                        }
                                        yy_c = yy_meta[(unsigned int) yy_c];
                                }
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                        ++yy_cp;
                        }
-               while ( yy_base[yy_current_state] != 2201 );
+               while ( yy_base[yy_current_state] != 2197 );
 
 yy_find_action:
                yy_act = yy_accept[yy_current_state];
 
 yy_find_action:
                yy_act = yy_accept[yy_current_state];
+               if ( yy_act == 0 )
+                       { /* have to back up */
+                       yy_cp = yy_last_accepting_cpos;
+                       yy_current_state = yy_last_accepting_state;
+                       yy_act = yy_accept[yy_current_state];
+                       }
 
                YY_DO_BEFORE_ACTION;
 
 
                YY_DO_BEFORE_ACTION;
 
@@ -1576,8 +1656,8 @@ do_action:        /* This label is used only to access EOF actions. */
                        goto yy_find_action;
 
 case 1:
                        goto yy_find_action;
 
 case 1:
-YY_USER_ACTION
-# line 283 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 286 "yaccParser/hslexer.flex"
 {
                          char tempf[FILENAME_SIZE];
                          sscanf(yytext+1, "%d \"%[^\"]", &hslineno, tempf); 
 {
                          char tempf[FILENAME_SIZE];
                          sscanf(yytext+1, "%d \"%[^\"]", &hslineno, tempf); 
@@ -1586,8 +1666,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 2:
                        }
        YY_BREAK
 case 2:
-YY_USER_ACTION
-# line 290 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 293 "yaccParser/hslexer.flex"
 {
                          char tempf[FILENAME_SIZE];
                          sscanf(yytext+5, "%d \"%[^\"]", &hslineno, tempf); 
 {
                          char tempf[FILENAME_SIZE];
                          sscanf(yytext+5, "%d \"%[^\"]", &hslineno, tempf); 
@@ -1596,8 +1676,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 3:
                        }
        YY_BREAK
 case 3:
-YY_USER_ACTION
-# line 297 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 300 "yaccParser/hslexer.flex"
 { 
                          /* partain: pragma-style line directive */
                          char tempf[FILENAME_SIZE];
 { 
                          /* partain: pragma-style line directive */
                          char tempf[FILENAME_SIZE];
@@ -1607,15 +1687,15 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 4:
                        }
        YY_BREAK
 case 4:
-YY_USER_ACTION
-# line 304 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 307 "yaccParser/hslexer.flex"
 {
                          sscanf(yytext+33,"%d ",&thisIfacePragmaVersion);
                        }
        YY_BREAK
 case 5:
 {
                          sscanf(yytext+33,"%d ",&thisIfacePragmaVersion);
                        }
        YY_BREAK
 case 5:
-YY_USER_ACTION
-# line 307 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 310 "yaccParser/hslexer.flex"
 { 
                          if ( ignorePragmas ||
                               thisIfacePragmaVersion < minAcceptablePragmaVersion || 
 { 
                          if ( ignorePragmas ||
                               thisIfacePragmaVersion < minAcceptablePragmaVersion || 
@@ -1629,253 +1709,253 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 6:
                        }
        YY_BREAK
 case 6:
-YY_USER_ACTION
-# line 318 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 321 "yaccParser/hslexer.flex"
 { RETURN(NO_PRAGMA); }
        YY_BREAK
 case 7:
 { RETURN(NO_PRAGMA); }
        YY_BREAK
 case 7:
-YY_USER_ACTION
-# line 319 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 322 "yaccParser/hslexer.flex"
 { RETURN(NOINFO_PRAGMA); }
        YY_BREAK
 case 8:
 { RETURN(NOINFO_PRAGMA); }
        YY_BREAK
 case 8:
-YY_USER_ACTION
-# line 320 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 323 "yaccParser/hslexer.flex"
 { RETURN(ABSTRACT_PRAGMA); }
        YY_BREAK
 case 9:
 { RETURN(ABSTRACT_PRAGMA); }
        YY_BREAK
 case 9:
-YY_USER_ACTION
-# line 321 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 324 "yaccParser/hslexer.flex"
 { RETURN(DEFOREST_PRAGMA); }
        YY_BREAK
 case 10:
 { RETURN(DEFOREST_PRAGMA); }
        YY_BREAK
 case 10:
-YY_USER_ACTION
-# line 322 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 325 "yaccParser/hslexer.flex"
 { RETURN(SPECIALISE_PRAGMA); }
        YY_BREAK
 case 11:
 { RETURN(SPECIALISE_PRAGMA); }
        YY_BREAK
 case 11:
-YY_USER_ACTION
-# line 323 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 326 "yaccParser/hslexer.flex"
 { RETURN(MODNAME_PRAGMA); }
        YY_BREAK
 case 12:
 { RETURN(MODNAME_PRAGMA); }
        YY_BREAK
 case 12:
-YY_USER_ACTION
-# line 324 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 327 "yaccParser/hslexer.flex"
 { RETURN(ARITY_PRAGMA); }
        YY_BREAK
 case 13:
 { RETURN(ARITY_PRAGMA); }
        YY_BREAK
 case 13:
-YY_USER_ACTION
-# line 325 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 328 "yaccParser/hslexer.flex"
 { RETURN(UPDATE_PRAGMA); }
        YY_BREAK
 case 14:
 { RETURN(UPDATE_PRAGMA); }
        YY_BREAK
 case 14:
-YY_USER_ACTION
-# line 326 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 329 "yaccParser/hslexer.flex"
 { RETURN(STRICTNESS_PRAGMA); }
        YY_BREAK
 case 15:
 { RETURN(STRICTNESS_PRAGMA); }
        YY_BREAK
 case 15:
-YY_USER_ACTION
-# line 327 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 330 "yaccParser/hslexer.flex"
 { RETURN(KIND_PRAGMA); }
        YY_BREAK
 case 16:
 { RETURN(KIND_PRAGMA); }
        YY_BREAK
 case 16:
-YY_USER_ACTION
-# line 328 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 331 "yaccParser/hslexer.flex"
 { RETURN(MAGIC_UNFOLDING_PRAGMA); }
        YY_BREAK
 case 17:
 { RETURN(MAGIC_UNFOLDING_PRAGMA); }
        YY_BREAK
 case 17:
-YY_USER_ACTION
-# line 329 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 332 "yaccParser/hslexer.flex"
 { RETURN(UNFOLDING_PRAGMA); }
        YY_BREAK
 case 18:
 { RETURN(UNFOLDING_PRAGMA); }
        YY_BREAK
 case 18:
-YY_USER_ACTION
-# line 331 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 334 "yaccParser/hslexer.flex"
 { RETURN(COCON); }
        YY_BREAK
 case 19:
 { RETURN(COCON); }
        YY_BREAK
 case 19:
-YY_USER_ACTION
-# line 332 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 335 "yaccParser/hslexer.flex"
 { RETURN(COPRIM); }
        YY_BREAK
 case 20:
 { RETURN(COPRIM); }
        YY_BREAK
 case 20:
-YY_USER_ACTION
-# line 333 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 336 "yaccParser/hslexer.flex"
 { RETURN(COAPP); }
        YY_BREAK
 case 21:
 { RETURN(COAPP); }
        YY_BREAK
 case 21:
-YY_USER_ACTION
-# line 334 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 337 "yaccParser/hslexer.flex"
 { RETURN(COTYAPP); }
        YY_BREAK
 case 22:
 { RETURN(COTYAPP); }
        YY_BREAK
 case 22:
-YY_USER_ACTION
-# line 335 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 338 "yaccParser/hslexer.flex"
 { RETURN(CO_ALG_ALTS); }
        YY_BREAK
 case 23:
 { RETURN(CO_ALG_ALTS); }
        YY_BREAK
 case 23:
-YY_USER_ACTION
-# line 336 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 339 "yaccParser/hslexer.flex"
 { RETURN(CO_PRIM_ALTS); }
        YY_BREAK
 case 24:
 { RETURN(CO_PRIM_ALTS); }
        YY_BREAK
 case 24:
-YY_USER_ACTION
-# line 337 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 340 "yaccParser/hslexer.flex"
 { RETURN(CO_NO_DEFAULT); }
        YY_BREAK
 case 25:
 { RETURN(CO_NO_DEFAULT); }
        YY_BREAK
 case 25:
-YY_USER_ACTION
-# line 338 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 341 "yaccParser/hslexer.flex"
 { RETURN(CO_LETREC); }
        YY_BREAK
 case 26:
 { RETURN(CO_LETREC); }
        YY_BREAK
 case 26:
-YY_USER_ACTION
-# line 340 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 343 "yaccParser/hslexer.flex"
 { RETURN(CO_PRELUDE_DICTS_CC); }
        YY_BREAK
 case 27:
 { RETURN(CO_PRELUDE_DICTS_CC); }
        YY_BREAK
 case 27:
-YY_USER_ACTION
-# line 341 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 344 "yaccParser/hslexer.flex"
 { RETURN(CO_ALL_DICTS_CC); }
        YY_BREAK
 case 28:
 { RETURN(CO_ALL_DICTS_CC); }
        YY_BREAK
 case 28:
-YY_USER_ACTION
-# line 342 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 345 "yaccParser/hslexer.flex"
 { RETURN(CO_USER_CC); }
        YY_BREAK
 case 29:
 { RETURN(CO_USER_CC); }
        YY_BREAK
 case 29:
-YY_USER_ACTION
-# line 343 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 346 "yaccParser/hslexer.flex"
 { RETURN(CO_AUTO_CC); }
        YY_BREAK
 case 30:
 { RETURN(CO_AUTO_CC); }
        YY_BREAK
 case 30:
-YY_USER_ACTION
-# line 344 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 347 "yaccParser/hslexer.flex"
 { RETURN(CO_DICT_CC); }
        YY_BREAK
 case 31:
 { RETURN(CO_DICT_CC); }
        YY_BREAK
 case 31:
-YY_USER_ACTION
-# line 346 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 349 "yaccParser/hslexer.flex"
 { RETURN(CO_DUPD_CC); }
        YY_BREAK
 case 32:
 { RETURN(CO_DUPD_CC); }
        YY_BREAK
 case 32:
-YY_USER_ACTION
-# line 347 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 350 "yaccParser/hslexer.flex"
 { RETURN(CO_CAF_CC); }
        YY_BREAK
 case 33:
 { RETURN(CO_CAF_CC); }
        YY_BREAK
 case 33:
-YY_USER_ACTION
-# line 349 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 352 "yaccParser/hslexer.flex"
 { RETURN(CO_SDSEL_ID); }
        YY_BREAK
 case 34:
 { RETURN(CO_SDSEL_ID); }
        YY_BREAK
 case 34:
-YY_USER_ACTION
-# line 350 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 353 "yaccParser/hslexer.flex"
 { RETURN(CO_METH_ID); }
        YY_BREAK
 case 35:
 { RETURN(CO_METH_ID); }
        YY_BREAK
 case 35:
-YY_USER_ACTION
-# line 351 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 354 "yaccParser/hslexer.flex"
 { RETURN(CO_DEFM_ID); }
        YY_BREAK
 case 36:
 { RETURN(CO_DEFM_ID); }
        YY_BREAK
 case 36:
-YY_USER_ACTION
-# line 352 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 355 "yaccParser/hslexer.flex"
 { RETURN(CO_DFUN_ID); }
        YY_BREAK
 case 37:
 { RETURN(CO_DFUN_ID); }
        YY_BREAK
 case 37:
-YY_USER_ACTION
-# line 353 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 356 "yaccParser/hslexer.flex"
 { RETURN(CO_CONSTM_ID); }
        YY_BREAK
 case 38:
 { RETURN(CO_CONSTM_ID); }
        YY_BREAK
 case 38:
-YY_USER_ACTION
-# line 354 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 357 "yaccParser/hslexer.flex"
 { RETURN(CO_SPEC_ID); }
        YY_BREAK
 case 39:
 { RETURN(CO_SPEC_ID); }
        YY_BREAK
 case 39:
-YY_USER_ACTION
-# line 355 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 358 "yaccParser/hslexer.flex"
 { RETURN(CO_WRKR_ID); }
        YY_BREAK
 case 40:
 { RETURN(CO_WRKR_ID); }
        YY_BREAK
 case 40:
-YY_USER_ACTION
-# line 356 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 359 "yaccParser/hslexer.flex"
 { RETURN(CO_ORIG_NM); /* fully-qualified original name*/ }
        YY_BREAK
 case 41:
 { RETURN(CO_ORIG_NM); /* fully-qualified original name*/ }
        YY_BREAK
 case 41:
-YY_USER_ACTION
-# line 358 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 361 "yaccParser/hslexer.flex"
 { RETURN(UNFOLD_ALWAYS); }
        YY_BREAK
 case 42:
 { RETURN(UNFOLD_ALWAYS); }
        YY_BREAK
 case 42:
-YY_USER_ACTION
-# line 359 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 362 "yaccParser/hslexer.flex"
 { RETURN(UNFOLD_IF_ARGS); }
        YY_BREAK
 case 43:
 { RETURN(UNFOLD_IF_ARGS); }
        YY_BREAK
 case 43:
-YY_USER_ACTION
-# line 361 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 364 "yaccParser/hslexer.flex"
 { RETURN(NOREP_INTEGER); }
        YY_BREAK
 case 44:
 { RETURN(NOREP_INTEGER); }
        YY_BREAK
 case 44:
-YY_USER_ACTION
-# line 362 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 365 "yaccParser/hslexer.flex"
 { RETURN(NOREP_RATIONAL); }
        YY_BREAK
 case 45:
 { RETURN(NOREP_RATIONAL); }
        YY_BREAK
 case 45:
-YY_USER_ACTION
-# line 363 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 366 "yaccParser/hslexer.flex"
 { RETURN(NOREP_STRING); }
        YY_BREAK
 case 46:
 { RETURN(NOREP_STRING); }
        YY_BREAK
 case 46:
-YY_USER_ACTION
-# line 365 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 368 "yaccParser/hslexer.flex"
 { POP_STATE; RETURN(END_PRAGMA); }
        YY_BREAK
 case 47:
 { POP_STATE; RETURN(END_PRAGMA); }
        YY_BREAK
 case 47:
-YY_USER_ACTION
-# line 367 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 370 "yaccParser/hslexer.flex"
 {
                              PUSH_STATE(UserPragma);
                              RETURN(SPECIALISE_UPRAGMA);
                            }
        YY_BREAK
 case 48:
 {
                              PUSH_STATE(UserPragma);
                              RETURN(SPECIALISE_UPRAGMA);
                            }
        YY_BREAK
 case 48:
-YY_USER_ACTION
-# line 371 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 374 "yaccParser/hslexer.flex"
 {
                              PUSH_STATE(UserPragma);
                              RETURN(INLINE_UPRAGMA);
                            }
        YY_BREAK
 case 49:
 {
                              PUSH_STATE(UserPragma);
                              RETURN(INLINE_UPRAGMA);
                            }
        YY_BREAK
 case 49:
-YY_USER_ACTION
-# line 375 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 378 "yaccParser/hslexer.flex"
 {
                              PUSH_STATE(UserPragma);
                              RETURN(MAGIC_UNFOLDING_UPRAGMA);
                            }
        YY_BREAK
 case 50:
 {
                              PUSH_STATE(UserPragma);
                              RETURN(MAGIC_UNFOLDING_UPRAGMA);
                            }
        YY_BREAK
 case 50:
-YY_USER_ACTION
-# line 379 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 382 "yaccParser/hslexer.flex"
 {
                               PUSH_STATE(UserPragma);
                               RETURN(DEFOREST_UPRAGMA);
                            }
        YY_BREAK
 case 51:
 {
                               PUSH_STATE(UserPragma);
                               RETURN(DEFOREST_UPRAGMA);
                            }
        YY_BREAK
 case 51:
-YY_USER_ACTION
-# line 383 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 386 "yaccParser/hslexer.flex"
 {
                              PUSH_STATE(UserPragma);
                              RETURN(ABSTRACT_UPRAGMA);
                            }
        YY_BREAK
 case 52:
 {
                              PUSH_STATE(UserPragma);
                              RETURN(ABSTRACT_UPRAGMA);
                            }
        YY_BREAK
 case 52:
-YY_USER_ACTION
-# line 387 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 390 "yaccParser/hslexer.flex"
 { POP_STATE; RETURN(END_UPRAGMA); }
        YY_BREAK
 
 { POP_STATE; RETURN(END_UPRAGMA); }
        YY_BREAK
 
@@ -1885,148 +1965,148 @@ YY_USER_ACTION
      */
 
 case 53:
      */
 
 case 53:
-YY_USER_ACTION
-# line 396 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 399 "yaccParser/hslexer.flex"
 { RETURN(CASE); }
        YY_BREAK
 case 54:
 { RETURN(CASE); }
        YY_BREAK
 case 54:
-YY_USER_ACTION
-# line 397 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 400 "yaccParser/hslexer.flex"
 { RETURN(CLASS); }
        YY_BREAK
 case 55:
 { RETURN(CLASS); }
        YY_BREAK
 case 55:
-YY_USER_ACTION
-# line 398 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 401 "yaccParser/hslexer.flex"
 { RETURN(DATA); }
        YY_BREAK
 case 56:
 { RETURN(DATA); }
        YY_BREAK
 case 56:
-YY_USER_ACTION
-# line 399 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 402 "yaccParser/hslexer.flex"
 { RETURN(DEFAULT); }
        YY_BREAK
 case 57:
 { RETURN(DEFAULT); }
        YY_BREAK
 case 57:
-YY_USER_ACTION
-# line 400 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 403 "yaccParser/hslexer.flex"
 { RETURN(DERIVING); }
        YY_BREAK
 case 58:
 { RETURN(DERIVING); }
        YY_BREAK
 case 58:
-YY_USER_ACTION
-# line 401 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 404 "yaccParser/hslexer.flex"
 { RETURN(ELSE); }
        YY_BREAK
 case 59:
 { RETURN(ELSE); }
        YY_BREAK
 case 59:
-YY_USER_ACTION
-# line 402 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 405 "yaccParser/hslexer.flex"
 { RETURN(HIDING); }
        YY_BREAK
 case 60:
 { RETURN(HIDING); }
        YY_BREAK
 case 60:
-YY_USER_ACTION
-# line 403 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 406 "yaccParser/hslexer.flex"
 { RETURN(IF); }
        YY_BREAK
 case 61:
 { RETURN(IF); }
        YY_BREAK
 case 61:
-YY_USER_ACTION
-# line 404 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 407 "yaccParser/hslexer.flex"
 { RETURN(IMPORT); }
        YY_BREAK
 case 62:
 { RETURN(IMPORT); }
        YY_BREAK
 case 62:
-YY_USER_ACTION
-# line 405 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 408 "yaccParser/hslexer.flex"
 { RETURN(INFIX); }
        YY_BREAK
 case 63:
 { RETURN(INFIX); }
        YY_BREAK
 case 63:
-YY_USER_ACTION
-# line 406 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 409 "yaccParser/hslexer.flex"
 { RETURN(INFIXL); }
        YY_BREAK
 case 64:
 { RETURN(INFIXL); }
        YY_BREAK
 case 64:
-YY_USER_ACTION
-# line 407 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 410 "yaccParser/hslexer.flex"
 { RETURN(INFIXR); }
        YY_BREAK
 case 65:
 { RETURN(INFIXR); }
        YY_BREAK
 case 65:
-YY_USER_ACTION
-# line 408 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 411 "yaccParser/hslexer.flex"
 { RETURN(INSTANCE); }
        YY_BREAK
 case 66:
 { RETURN(INSTANCE); }
        YY_BREAK
 case 66:
-YY_USER_ACTION
-# line 409 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 412 "yaccParser/hslexer.flex"
 { RETURN(INTERFACE); }
        YY_BREAK
 case 67:
 { RETURN(INTERFACE); }
        YY_BREAK
 case 67:
-YY_USER_ACTION
-# line 410 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 413 "yaccParser/hslexer.flex"
 { RETURN(MODULE); }
        YY_BREAK
 case 68:
 { RETURN(MODULE); }
        YY_BREAK
 case 68:
-YY_USER_ACTION
-# line 411 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 414 "yaccParser/hslexer.flex"
 { RETURN(OF); }
        YY_BREAK
 case 69:
 { RETURN(OF); }
        YY_BREAK
 case 69:
-YY_USER_ACTION
-# line 412 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 415 "yaccParser/hslexer.flex"
 { RETURN(RENAMING); }
        YY_BREAK
 case 70:
 { RETURN(RENAMING); }
        YY_BREAK
 case 70:
-YY_USER_ACTION
-# line 413 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 416 "yaccParser/hslexer.flex"
 { RETURN(THEN); }
        YY_BREAK
 case 71:
 { RETURN(THEN); }
        YY_BREAK
 case 71:
-YY_USER_ACTION
-# line 414 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 417 "yaccParser/hslexer.flex"
 { RETURN(TO); }
        YY_BREAK
 case 72:
 { RETURN(TO); }
        YY_BREAK
 case 72:
-YY_USER_ACTION
-# line 415 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 418 "yaccParser/hslexer.flex"
 { RETURN(TYPE); }
        YY_BREAK
 case 73:
 { RETURN(TYPE); }
        YY_BREAK
 case 73:
-YY_USER_ACTION
-# line 416 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 419 "yaccParser/hslexer.flex"
 { RETURN(WHERE); }
        YY_BREAK
 case 74:
 { RETURN(WHERE); }
        YY_BREAK
 case 74:
-YY_USER_ACTION
-# line 417 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 420 "yaccParser/hslexer.flex"
 { RETURN(IN); }
        YY_BREAK
 case 75:
 { RETURN(IN); }
        YY_BREAK
 case 75:
-YY_USER_ACTION
-# line 418 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 421 "yaccParser/hslexer.flex"
 { RETURN(LET); }
        YY_BREAK
 case 76:
 { RETURN(LET); }
        YY_BREAK
 case 76:
-YY_USER_ACTION
-# line 419 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 422 "yaccParser/hslexer.flex"
 { RETURN(CCALL); }
        YY_BREAK
 case 77:
 { RETURN(CCALL); }
        YY_BREAK
 case 77:
-YY_USER_ACTION
-# line 420 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 423 "yaccParser/hslexer.flex"
 { RETURN(CCALL_GC); }
        YY_BREAK
 case 78:
 { RETURN(CCALL_GC); }
        YY_BREAK
 case 78:
-YY_USER_ACTION
-# line 421 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 424 "yaccParser/hslexer.flex"
 { RETURN(CASM); }
        YY_BREAK
 case 79:
 { RETURN(CASM); }
        YY_BREAK
 case 79:
-YY_USER_ACTION
-# line 422 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 425 "yaccParser/hslexer.flex"
 { RETURN(CASM_GC); }
        YY_BREAK
 case 80:
 { RETURN(CASM_GC); }
        YY_BREAK
 case 80:
-YY_USER_ACTION
-# line 423 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 426 "yaccParser/hslexer.flex"
 { RETURN(SCC); }
        YY_BREAK
 case 81:
 { RETURN(SCC); }
        YY_BREAK
 case 81:
-YY_USER_ACTION
-# line 424 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 427 "yaccParser/hslexer.flex"
 { RETURN(FORALL); }
        YY_BREAK
 
 { RETURN(FORALL); }
        YY_BREAK
 
@@ -2035,118 +2115,118 @@ YY_USER_ACTION
      */
 
 case 82:
      */
 
 case 82:
-YY_USER_ACTION
-# line 432 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 435 "yaccParser/hslexer.flex"
 { RETURN(DOTDOT); }
        YY_BREAK
 case 83:
 { RETURN(DOTDOT); }
        YY_BREAK
 case 83:
-YY_USER_ACTION
-# line 433 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 436 "yaccParser/hslexer.flex"
 { RETURN(SEMI); }
        YY_BREAK
 case 84:
 { RETURN(SEMI); }
        YY_BREAK
 case 84:
-YY_USER_ACTION
-# line 434 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 437 "yaccParser/hslexer.flex"
 { RETURN(COMMA); }
        YY_BREAK
 case 85:
 { RETURN(COMMA); }
        YY_BREAK
 case 85:
-YY_USER_ACTION
-# line 435 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 438 "yaccParser/hslexer.flex"
 { RETURN(VBAR); }
        YY_BREAK
 case 86:
 { RETURN(VBAR); }
        YY_BREAK
 case 86:
-YY_USER_ACTION
-# line 436 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 439 "yaccParser/hslexer.flex"
 { RETURN(EQUAL); }
        YY_BREAK
 case 87:
 { RETURN(EQUAL); }
        YY_BREAK
 case 87:
-YY_USER_ACTION
-# line 437 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 440 "yaccParser/hslexer.flex"
 { RETURN(LARROW); }
        YY_BREAK
 case 88:
 { RETURN(LARROW); }
        YY_BREAK
 case 88:
-YY_USER_ACTION
-# line 438 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 441 "yaccParser/hslexer.flex"
 { RETURN(RARROW); }
        YY_BREAK
 case 89:
 { RETURN(RARROW); }
        YY_BREAK
 case 89:
-YY_USER_ACTION
-# line 439 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 442 "yaccParser/hslexer.flex"
 { RETURN(DARROW); }
        YY_BREAK
 case 90:
 { RETURN(DARROW); }
        YY_BREAK
 case 90:
-YY_USER_ACTION
-# line 440 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 443 "yaccParser/hslexer.flex"
 { RETURN(DCOLON); }
        YY_BREAK
 case 91:
 { RETURN(DCOLON); }
        YY_BREAK
 case 91:
-YY_USER_ACTION
-# line 441 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 444 "yaccParser/hslexer.flex"
 { RETURN(OPAREN); }
        YY_BREAK
 case 92:
 { RETURN(OPAREN); }
        YY_BREAK
 case 92:
-YY_USER_ACTION
-# line 442 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 445 "yaccParser/hslexer.flex"
 { RETURN(CPAREN); }
        YY_BREAK
 case 93:
 { RETURN(CPAREN); }
        YY_BREAK
 case 93:
-YY_USER_ACTION
-# line 443 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 446 "yaccParser/hslexer.flex"
 { RETURN(OBRACK); }
        YY_BREAK
 case 94:
 { RETURN(OBRACK); }
        YY_BREAK
 case 94:
-YY_USER_ACTION
-# line 444 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 447 "yaccParser/hslexer.flex"
 { RETURN(CBRACK); }
        YY_BREAK
 case 95:
 { RETURN(CBRACK); }
        YY_BREAK
 case 95:
-YY_USER_ACTION
-# line 445 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 448 "yaccParser/hslexer.flex"
 { RETURN(OCURLY); }
        YY_BREAK
 case 96:
 { RETURN(OCURLY); }
        YY_BREAK
 case 96:
-YY_USER_ACTION
-# line 446 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 449 "yaccParser/hslexer.flex"
 { RETURN(CCURLY); }
        YY_BREAK
 case 97:
 { RETURN(CCURLY); }
        YY_BREAK
 case 97:
-YY_USER_ACTION
-# line 447 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 450 "yaccParser/hslexer.flex"
 { RETURN(PLUS); }
        YY_BREAK
 case 98:
 { RETURN(PLUS); }
        YY_BREAK
 case 98:
-YY_USER_ACTION
-# line 448 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 451 "yaccParser/hslexer.flex"
 { RETURN(AT); }
        YY_BREAK
 case 99:
 { RETURN(AT); }
        YY_BREAK
 case 99:
-YY_USER_ACTION
-# line 449 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 452 "yaccParser/hslexer.flex"
 { RETURN(LAMBDA); }
        YY_BREAK
 case 100:
 { RETURN(LAMBDA); }
        YY_BREAK
 case 100:
-YY_USER_ACTION
-# line 450 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 453 "yaccParser/hslexer.flex"
 { RETURN(TYLAMBDA); }
        YY_BREAK
 case 101:
 { RETURN(TYLAMBDA); }
        YY_BREAK
 case 101:
-YY_USER_ACTION
-# line 451 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 454 "yaccParser/hslexer.flex"
 { RETURN(WILDCARD); }
        YY_BREAK
 case 102:
 { RETURN(WILDCARD); }
        YY_BREAK
 case 102:
-YY_USER_ACTION
-# line 452 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 455 "yaccParser/hslexer.flex"
 { RETURN(BQUOTE); }
        YY_BREAK
 case 103:
 { RETURN(BQUOTE); }
        YY_BREAK
 case 103:
-YY_USER_ACTION
-# line 453 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 456 "yaccParser/hslexer.flex"
 { RETURN(LAZY); }
        YY_BREAK
 case 104:
 { RETURN(LAZY); }
        YY_BREAK
 case 104:
-YY_USER_ACTION
-# line 454 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 457 "yaccParser/hslexer.flex"
 { RETURN(MINUS); }
        YY_BREAK
 
 { RETURN(MINUS); }
        YY_BREAK
 
@@ -2157,48 +2237,48 @@ YY_USER_ACTION
      */
 
 case 105:
      */
 
 case 105:
-YY_USER_ACTION
-# line 464 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 467 "yaccParser/hslexer.flex"
 { /* octal */
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(INTPRIM);
                        }
        YY_BREAK
 case 106:
 { /* octal */
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(INTPRIM);
                        }
        YY_BREAK
 case 106:
-YY_USER_ACTION
-# line 468 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 471 "yaccParser/hslexer.flex"
 { /* octal */
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(INTEGER);
                        }
        YY_BREAK
 case 107:
 { /* octal */
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(INTEGER);
                        }
        YY_BREAK
 case 107:
-YY_USER_ACTION
-# line 472 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 475 "yaccParser/hslexer.flex"
 { /* hexadecimal */
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(INTPRIM);
                        }
        YY_BREAK
 case 108:
 { /* hexadecimal */
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(INTPRIM);
                        }
        YY_BREAK
 case 108:
-YY_USER_ACTION
-# line 476 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 479 "yaccParser/hslexer.flex"
 { /* hexadecimal */
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(INTEGER);
                        }
        YY_BREAK
 case 109:
 { /* hexadecimal */
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(INTEGER);
                        }
        YY_BREAK
 case 109:
-YY_USER_ACTION
-# line 480 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 483 "yaccParser/hslexer.flex"
 {
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(INTPRIM);
                        }
        YY_BREAK
 case 110:
 {
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(INTPRIM);
                        }
        YY_BREAK
 case 110:
-YY_USER_ACTION
-# line 484 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 487 "yaccParser/hslexer.flex"
 {
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(INTEGER);
 {
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(INTEGER);
@@ -2210,24 +2290,24 @@ YY_USER_ACTION
      */
 
 case 111:
      */
 
 case 111:
-YY_USER_ACTION
-# line 495 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 498 "yaccParser/hslexer.flex"
 {
                         yylval.uid = xstrndup(yytext, yyleng - 2);
                         RETURN(DOUBLEPRIM);
                        }
        YY_BREAK
 case 112:
 {
                         yylval.uid = xstrndup(yytext, yyleng - 2);
                         RETURN(DOUBLEPRIM);
                        }
        YY_BREAK
 case 112:
-YY_USER_ACTION
-# line 499 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 502 "yaccParser/hslexer.flex"
 {
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(FLOATPRIM);
                        }
        YY_BREAK
 case 113:
 {
                         yylval.uid = xstrndup(yytext, yyleng - 1);
                         RETURN(FLOATPRIM);
                        }
        YY_BREAK
 case 113:
-YY_USER_ACTION
-# line 503 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 506 "yaccParser/hslexer.flex"
 {
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(FLOAT);
 {
                         yylval.uid = xstrndup(yytext, yyleng);
                         RETURN(FLOAT);
@@ -2239,8 +2319,8 @@ YY_USER_ACTION
      */
 
 case 114:
      */
 
 case 114:
-YY_USER_ACTION
-# line 514 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 517 "yaccParser/hslexer.flex"
 {
                         hsnewid(yytext + 2, yyleng - 4);
                         RETURN(CLITLIT);
 {
                         hsnewid(yytext + 2, yyleng - 4);
                         RETURN(CLITLIT);
@@ -2253,23 +2333,23 @@ YY_USER_ACTION
      */
 
 case 115:
      */
 
 case 115:
-YY_USER_ACTION
-# line 526 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 529 "yaccParser/hslexer.flex"
 { hsnewid(yytext, yyleng); RETURN(CONID); }
        YY_BREAK
 case 116:
 { hsnewid(yytext, yyleng); RETURN(CONID); }
        YY_BREAK
 case 116:
-YY_USER_ACTION
-# line 527 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 530 "yaccParser/hslexer.flex"
 { hsnewid(yytext, yyleng); RETURN(CONID); }
        YY_BREAK
 case 117:
 { hsnewid(yytext, yyleng); RETURN(CONID); }
        YY_BREAK
 case 117:
-YY_USER_ACTION
-# line 528 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 531 "yaccParser/hslexer.flex"
 { hsnewid(yytext, yyleng); RETURN(TYVAR_TEMPLATE_ID); }
        YY_BREAK
 case 118:
 { hsnewid(yytext, yyleng); RETURN(TYVAR_TEMPLATE_ID); }
        YY_BREAK
 case 118:
-YY_USER_ACTION
-# line 530 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 533 "yaccParser/hslexer.flex"
 { 
                         hsnewid(yytext, yyleng);
                         RETURN(_isconstr(yytext) ? CONID : VARID);
 { 
                         hsnewid(yytext, yyleng);
                         RETURN(_isconstr(yytext) ? CONID : VARID);
@@ -2279,8 +2359,8 @@ YY_USER_ACTION
 /* This SHOULDNAE work in "Code" (sigh) */
 
 case 119:
 /* This SHOULDNAE work in "Code" (sigh) */
 
 case 119:
-YY_USER_ACTION
-# line 537 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 540 "yaccParser/hslexer.flex"
 { 
                         if (! (nonstandardFlag || in_interface)) {
                            char errbuf[ERR_BUF_SIZE];
 { 
                         if (! (nonstandardFlag || in_interface)) {
                            char errbuf[ERR_BUF_SIZE];
@@ -2293,16 +2373,16 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 120:
                        }
        YY_BREAK
 case 120:
-YY_USER_ACTION
-# line 547 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 550 "yaccParser/hslexer.flex"
 {
                         hsnewid(yytext, yyleng);
                         RETURN(_isconstr(yytext) ? CONID : VARID);
                        }
        YY_BREAK
 case 121:
 {
                         hsnewid(yytext, yyleng);
                         RETURN(_isconstr(yytext) ? CONID : VARID);
                        }
        YY_BREAK
 case 121:
-YY_USER_ACTION
-# line 551 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 554 "yaccParser/hslexer.flex"
 {
                         hsnewid(yytext, yyleng);
                         RETURN(_isconstr(yytext) ? CONSYM : VARSYM);
 {
                         hsnewid(yytext, yyleng);
                         RETURN(_isconstr(yytext) ? CONSYM : VARSYM);
@@ -2318,8 +2398,8 @@ YY_USER_ACTION
     */
 
 case 122:
     */
 
 case 122:
-YY_USER_ACTION
-# line 566 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 569 "yaccParser/hslexer.flex"
 {      
                         hsnewid(yytext + 1, yyleng - 2);
                         RETURN(_isconstr(yytext+1) ? CONSYM : VARSYM);
 {      
                         hsnewid(yytext + 1, yyleng - 2);
                         RETURN(_isconstr(yytext+1) ? CONSYM : VARSYM);
@@ -2339,32 +2419,32 @@ YY_USER_ACTION
      */
 
 case 123:
      */
 
 case 123:
-YY_USER_ACTION
-# line 585 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 588 "yaccParser/hslexer.flex"
 {
                         yylval.uhstring = installHstring(1, yytext+1);
                         RETURN(CHARPRIM);
                        }
        YY_BREAK
 case 124:
 {
                         yylval.uhstring = installHstring(1, yytext+1);
                         RETURN(CHARPRIM);
                        }
        YY_BREAK
 case 124:
-YY_USER_ACTION
-# line 589 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 592 "yaccParser/hslexer.flex"
 {
                         yylval.uhstring = installHstring(1, yytext+1);
                         RETURN(CHAR);
                        }
        YY_BREAK
 case 125:
 {
                         yylval.uhstring = installHstring(1, yytext+1);
                         RETURN(CHAR);
                        }
        YY_BREAK
 case 125:
-YY_USER_ACTION
-# line 593 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 596 "yaccParser/hslexer.flex"
 {char errbuf[ERR_BUF_SIZE];
                         sprintf(errbuf, "'' is not a valid character (or string) literal\n");
                         hsperror(errbuf);
                        }
        YY_BREAK
 case 126:
 {char errbuf[ERR_BUF_SIZE];
                         sprintf(errbuf, "'' is not a valid character (or string) literal\n");
                         hsperror(errbuf);
                        }
        YY_BREAK
 case 126:
-YY_USER_ACTION
-# line 597 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 600 "yaccParser/hslexer.flex"
 {
                         hsmlcolno = hspcolno;
                         cleartext();
 {
                         hsmlcolno = hspcolno;
                         cleartext();
@@ -2373,8 +2453,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 127:
                        }
        YY_BREAK
 case 127:
-YY_USER_ACTION
-# line 603 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 606 "yaccParser/hslexer.flex"
 {
                         unsigned length;
                         char *text;
 {
                         unsigned length;
                         char *text;
@@ -2402,8 +2482,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 128:
                        }
        YY_BREAK
 case 128:
-YY_USER_ACTION
-# line 628 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 631 "yaccParser/hslexer.flex"
 {
                         unsigned length;
                         char *text;
 {
                         unsigned length;
                         char *text;
@@ -2425,8 +2505,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 129:
                        }
        YY_BREAK
 case 129:
-YY_USER_ACTION
-# line 647 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 650 "yaccParser/hslexer.flex"
 { addtext(yytext, yyleng); }
        YY_BREAK
 
 { addtext(yytext, yyleng); }
        YY_BREAK
 
@@ -2444,8 +2524,8 @@ YY_USER_ACTION
      */
 
 case 130:
      */
 
 case 130:
-YY_USER_ACTION
-# line 665 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 668 "yaccParser/hslexer.flex"
 {
                         yylval.uhstring = installHstring(yyleng-3, yytext+1);
                            /* the -3 accounts for the " on front, "# on the end */
 {
                         yylval.uhstring = installHstring(yyleng-3, yytext+1);
                            /* the -3 accounts for the " on front, "# on the end */
@@ -2453,16 +2533,16 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 131:
                        }
        YY_BREAK
 case 131:
-YY_USER_ACTION
-# line 670 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 673 "yaccParser/hslexer.flex"
 {
                         yylval.uhstring = installHstring(yyleng-2, yytext+1);
                         RETURN(STRING); 
                        }
        YY_BREAK
 case 132:
 {
                         yylval.uhstring = installHstring(yyleng-2, yytext+1);
                         RETURN(STRING); 
                        }
        YY_BREAK
 case 132:
-YY_USER_ACTION
-# line 674 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 677 "yaccParser/hslexer.flex"
 {
                         hsmlcolno = hspcolno;
                         cleartext();
 {
                         hsmlcolno = hspcolno;
                         cleartext();
@@ -2471,8 +2551,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 133:
                        }
        YY_BREAK
 case 133:
-YY_USER_ACTION
-# line 680 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 683 "yaccParser/hslexer.flex"
 {
                         unsigned length;
                         char *text;
 {
                         unsigned length;
                         char *text;
@@ -2493,8 +2573,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 134:
                        }
        YY_BREAK
 case 134:
-YY_USER_ACTION
-# line 698 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 701 "yaccParser/hslexer.flex"
 {
                         unsigned length;
                         char *text;
 {
                         unsigned length;
                         char *text;
@@ -2509,8 +2589,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 135:
                        }
        YY_BREAK
 case 135:
-YY_USER_ACTION
-# line 710 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 713 "yaccParser/hslexer.flex"
 { addtext(yytext, yyleng); }
        YY_BREAK
 
 { addtext(yytext, yyleng); }
        YY_BREAK
 
@@ -2529,227 +2609,227 @@ YY_USER_ACTION
      */
 
 case 136:
      */
 
 case 136:
-YY_USER_ACTION
-# line 728 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 731 "yaccParser/hslexer.flex"
 { PUSH_STATE(CharEsc); }
        YY_BREAK
 case 137:
 { PUSH_STATE(CharEsc); }
        YY_BREAK
 case 137:
-YY_USER_ACTION
-# line 729 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 732 "yaccParser/hslexer.flex"
 /* Ignore */ ;
        YY_BREAK
 case 138:
 /* Ignore */ ;
        YY_BREAK
 case 138:
-YY_USER_ACTION
-# line 730 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 733 "yaccParser/hslexer.flex"
 { PUSH_STATE(StringEsc); noGap = TRUE; }
        YY_BREAK
 case 139:
 { PUSH_STATE(StringEsc); noGap = TRUE; }
        YY_BREAK
 case 139:
-YY_USER_ACTION
-# line 732 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 735 "yaccParser/hslexer.flex"
 { addchar(*yytext); POP_STATE; }
        YY_BREAK
 case 140:
 { addchar(*yytext); POP_STATE; }
        YY_BREAK
 case 140:
-YY_USER_ACTION
-# line 733 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 736 "yaccParser/hslexer.flex"
 { if (noGap) { addchar(*yytext); } POP_STATE; }
        YY_BREAK
 case 141:
 { if (noGap) { addchar(*yytext); } POP_STATE; }
        YY_BREAK
 case 141:
-YY_USER_ACTION
-# line 735 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 738 "yaccParser/hslexer.flex"
 { addchar(*yytext); POP_STATE; }
        YY_BREAK
 case 142:
 { addchar(*yytext); POP_STATE; }
        YY_BREAK
 case 142:
-YY_USER_ACTION
-# line 736 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 739 "yaccParser/hslexer.flex"
 { addchar('\000'); POP_STATE; }
        YY_BREAK
 case 143:
 { addchar('\000'); POP_STATE; }
        YY_BREAK
 case 143:
-YY_USER_ACTION
-# line 737 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 740 "yaccParser/hslexer.flex"
 { addchar('\001'); POP_STATE; }
        YY_BREAK
 case 144:
 { addchar('\001'); POP_STATE; }
        YY_BREAK
 case 144:
-YY_USER_ACTION
-# line 738 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 741 "yaccParser/hslexer.flex"
 { addchar('\002'); POP_STATE; }
        YY_BREAK
 case 145:
 { addchar('\002'); POP_STATE; }
        YY_BREAK
 case 145:
-YY_USER_ACTION
-# line 739 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 742 "yaccParser/hslexer.flex"
 { addchar('\003'); POP_STATE; }
        YY_BREAK
 case 146:
 { addchar('\003'); POP_STATE; }
        YY_BREAK
 case 146:
-YY_USER_ACTION
-# line 740 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 743 "yaccParser/hslexer.flex"
 { addchar('\004'); POP_STATE; }
        YY_BREAK
 case 147:
 { addchar('\004'); POP_STATE; }
        YY_BREAK
 case 147:
-YY_USER_ACTION
-# line 741 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 744 "yaccParser/hslexer.flex"
 { addchar('\005'); POP_STATE; }
        YY_BREAK
 case 148:
 { addchar('\005'); POP_STATE; }
        YY_BREAK
 case 148:
-YY_USER_ACTION
-# line 742 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 745 "yaccParser/hslexer.flex"
 { addchar('\006'); POP_STATE; }
        YY_BREAK
 case 149:
 { addchar('\006'); POP_STATE; }
        YY_BREAK
 case 149:
-# line 744 "yaccParser/hslexer.flex"
+#line 747 "yaccParser/hslexer.flex"
 case 150:
 case 150:
-YY_USER_ACTION
-# line 744 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 747 "yaccParser/hslexer.flex"
 { addchar('\007'); POP_STATE; }
        YY_BREAK
 case 151:
 { addchar('\007'); POP_STATE; }
        YY_BREAK
 case 151:
-# line 746 "yaccParser/hslexer.flex"
+#line 749 "yaccParser/hslexer.flex"
 case 152:
 case 152:
-YY_USER_ACTION
-# line 746 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 749 "yaccParser/hslexer.flex"
 { addchar('\010'); POP_STATE; }
        YY_BREAK
 case 153:
 { addchar('\010'); POP_STATE; }
        YY_BREAK
 case 153:
-# line 748 "yaccParser/hslexer.flex"
+#line 751 "yaccParser/hslexer.flex"
 case 154:
 case 154:
-YY_USER_ACTION
-# line 748 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 751 "yaccParser/hslexer.flex"
 { addchar('\011'); POP_STATE; }
        YY_BREAK
 case 155:
 { addchar('\011'); POP_STATE; }
        YY_BREAK
 case 155:
-# line 750 "yaccParser/hslexer.flex"
+#line 753 "yaccParser/hslexer.flex"
 case 156:
 case 156:
-YY_USER_ACTION
-# line 750 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 753 "yaccParser/hslexer.flex"
 { addchar('\012'); POP_STATE; }
        YY_BREAK
 case 157:
 { addchar('\012'); POP_STATE; }
        YY_BREAK
 case 157:
-# line 752 "yaccParser/hslexer.flex"
+#line 755 "yaccParser/hslexer.flex"
 case 158:
 case 158:
-YY_USER_ACTION
-# line 752 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 755 "yaccParser/hslexer.flex"
 { addchar('\013'); POP_STATE; }
        YY_BREAK
 case 159:
 { addchar('\013'); POP_STATE; }
        YY_BREAK
 case 159:
-# line 754 "yaccParser/hslexer.flex"
+#line 757 "yaccParser/hslexer.flex"
 case 160:
 case 160:
-YY_USER_ACTION
-# line 754 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 757 "yaccParser/hslexer.flex"
 { addchar('\014'); POP_STATE; }
        YY_BREAK
 case 161:
 { addchar('\014'); POP_STATE; }
        YY_BREAK
 case 161:
-# line 756 "yaccParser/hslexer.flex"
+#line 759 "yaccParser/hslexer.flex"
 case 162:
 case 162:
-YY_USER_ACTION
-# line 756 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 759 "yaccParser/hslexer.flex"
 { addchar('\015'); POP_STATE; }
        YY_BREAK
 case 163:
 { addchar('\015'); POP_STATE; }
        YY_BREAK
 case 163:
-YY_USER_ACTION
-# line 757 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 760 "yaccParser/hslexer.flex"
 { addchar('\016'); POP_STATE; }
        YY_BREAK
 case 164:
 { addchar('\016'); POP_STATE; }
        YY_BREAK
 case 164:
-YY_USER_ACTION
-# line 758 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 761 "yaccParser/hslexer.flex"
 { addchar('\017'); POP_STATE; }
        YY_BREAK
 case 165:
 { addchar('\017'); POP_STATE; }
        YY_BREAK
 case 165:
-YY_USER_ACTION
-# line 759 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 762 "yaccParser/hslexer.flex"
 { addchar('\020'); POP_STATE; }
        YY_BREAK
 case 166:
 { addchar('\020'); POP_STATE; }
        YY_BREAK
 case 166:
-YY_USER_ACTION
-# line 760 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 763 "yaccParser/hslexer.flex"
 { addchar('\021'); POP_STATE; }
        YY_BREAK
 case 167:
 { addchar('\021'); POP_STATE; }
        YY_BREAK
 case 167:
-YY_USER_ACTION
-# line 761 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 764 "yaccParser/hslexer.flex"
 { addchar('\022'); POP_STATE; }
        YY_BREAK
 case 168:
 { addchar('\022'); POP_STATE; }
        YY_BREAK
 case 168:
-YY_USER_ACTION
-# line 762 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 765 "yaccParser/hslexer.flex"
 { addchar('\023'); POP_STATE; }
        YY_BREAK
 case 169:
 { addchar('\023'); POP_STATE; }
        YY_BREAK
 case 169:
-YY_USER_ACTION
-# line 763 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 766 "yaccParser/hslexer.flex"
 { addchar('\024'); POP_STATE; }
        YY_BREAK
 case 170:
 { addchar('\024'); POP_STATE; }
        YY_BREAK
 case 170:
-YY_USER_ACTION
-# line 764 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 767 "yaccParser/hslexer.flex"
 { addchar('\025'); POP_STATE; }
        YY_BREAK
 case 171:
 { addchar('\025'); POP_STATE; }
        YY_BREAK
 case 171:
-YY_USER_ACTION
-# line 765 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 768 "yaccParser/hslexer.flex"
 { addchar('\026'); POP_STATE; }
        YY_BREAK
 case 172:
 { addchar('\026'); POP_STATE; }
        YY_BREAK
 case 172:
-YY_USER_ACTION
-# line 766 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 769 "yaccParser/hslexer.flex"
 { addchar('\027'); POP_STATE; }
        YY_BREAK
 case 173:
 { addchar('\027'); POP_STATE; }
        YY_BREAK
 case 173:
-YY_USER_ACTION
-# line 767 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 770 "yaccParser/hslexer.flex"
 { addchar('\030'); POP_STATE; }
        YY_BREAK
 case 174:
 { addchar('\030'); POP_STATE; }
        YY_BREAK
 case 174:
-YY_USER_ACTION
-# line 768 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 771 "yaccParser/hslexer.flex"
 { addchar('\031'); POP_STATE; }
        YY_BREAK
 case 175:
 { addchar('\031'); POP_STATE; }
        YY_BREAK
 case 175:
-YY_USER_ACTION
-# line 769 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 772 "yaccParser/hslexer.flex"
 { addchar('\032'); POP_STATE; }
        YY_BREAK
 case 176:
 { addchar('\032'); POP_STATE; }
        YY_BREAK
 case 176:
-YY_USER_ACTION
-# line 770 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 773 "yaccParser/hslexer.flex"
 { addchar('\033'); POP_STATE; }
        YY_BREAK
 case 177:
 { addchar('\033'); POP_STATE; }
        YY_BREAK
 case 177:
-YY_USER_ACTION
-# line 771 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 774 "yaccParser/hslexer.flex"
 { addchar('\034'); POP_STATE; }
        YY_BREAK
 case 178:
 { addchar('\034'); POP_STATE; }
        YY_BREAK
 case 178:
-YY_USER_ACTION
-# line 772 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 775 "yaccParser/hslexer.flex"
 { addchar('\035'); POP_STATE; }
        YY_BREAK
 case 179:
 { addchar('\035'); POP_STATE; }
        YY_BREAK
 case 179:
-YY_USER_ACTION
-# line 773 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 776 "yaccParser/hslexer.flex"
 { addchar('\036'); POP_STATE; }
        YY_BREAK
 case 180:
 { addchar('\036'); POP_STATE; }
        YY_BREAK
 case 180:
-YY_USER_ACTION
-# line 774 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 777 "yaccParser/hslexer.flex"
 { addchar('\037'); POP_STATE; }
        YY_BREAK
 case 181:
 { addchar('\037'); POP_STATE; }
        YY_BREAK
 case 181:
-YY_USER_ACTION
-# line 775 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 778 "yaccParser/hslexer.flex"
 { addchar('\040'); POP_STATE; }
        YY_BREAK
 case 182:
 { addchar('\040'); POP_STATE; }
        YY_BREAK
 case 182:
-YY_USER_ACTION
-# line 776 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 779 "yaccParser/hslexer.flex"
 { addchar('\177'); POP_STATE; }
        YY_BREAK
 case 183:
 { addchar('\177'); POP_STATE; }
        YY_BREAK
 case 183:
-YY_USER_ACTION
-# line 777 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 780 "yaccParser/hslexer.flex"
 { char c = yytext[1] - '@'; addchar(c); POP_STATE; }
        YY_BREAK
 case 184:
 { char c = yytext[1] - '@'; addchar(c); POP_STATE; }
        YY_BREAK
 case 184:
-YY_USER_ACTION
-# line 778 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 781 "yaccParser/hslexer.flex"
 {
                          int i = strtol(yytext, NULL, 10);
                          if (i < NCHARS) {
 {
                          int i = strtol(yytext, NULL, 10);
                          if (i < NCHARS) {
@@ -2764,8 +2844,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 185:
                        }
        YY_BREAK
 case 185:
-YY_USER_ACTION
-# line 790 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 793 "yaccParser/hslexer.flex"
 {
                          int i = strtol(yytext + 1, NULL, 8);
                          if (i < NCHARS) {
 {
                          int i = strtol(yytext + 1, NULL, 8);
                          if (i < NCHARS) {
@@ -2780,8 +2860,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 186:
                        }
        YY_BREAK
 case 186:
-YY_USER_ACTION
-# line 802 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 805 "yaccParser/hslexer.flex"
 {
                          int i = strtol(yytext + 1, NULL, 16);
                          if (i < NCHARS) {
 {
                          int i = strtol(yytext + 1, NULL, 16);
                          if (i < NCHARS) {
@@ -2800,13 +2880,17 @@ YY_USER_ACTION
      * Simple comments and whitespace.  Normally, we would just ignore these, but
      * in case we're processing a string escape, we need to note that we've seen
      * a gap.
      * Simple comments and whitespace.  Normally, we would just ignore these, but
      * in case we're processing a string escape, we need to note that we've seen
      * a gap.
+     *
+     * Note that we cater for a comment line that *doesn't* end in a newline.
+     * This is incorrect, strictly speaking, but seems like the right thing
+     * to do.  Reported by Rajiv Mirani.  (WDP 95/08)
      */
 
 case 187:
      */
 
 case 187:
-# line 824 "yaccParser/hslexer.flex"
+#line 831 "yaccParser/hslexer.flex"
 case 188:
 case 188:
-YY_USER_ACTION
-# line 824 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 831 "yaccParser/hslexer.flex"
 { noGap = FALSE; }
        YY_BREAK
 
 { noGap = FALSE; }
        YY_BREAK
 
@@ -2817,34 +2901,34 @@ YY_USER_ACTION
      */
 
 case 189:
      */
 
 case 189:
-YY_USER_ACTION
-# line 834 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 841 "yaccParser/hslexer.flex"
 { 
                          noGap = FALSE; nested_comments = 1; PUSH_STATE(Comment); 
                        }
        YY_BREAK
 case 190:
 { 
                          noGap = FALSE; nested_comments = 1; PUSH_STATE(Comment); 
                        }
        YY_BREAK
 case 190:
-# line 839 "yaccParser/hslexer.flex"
+#line 846 "yaccParser/hslexer.flex"
 case 191:
 case 191:
-# line 840 "yaccParser/hslexer.flex"
+#line 847 "yaccParser/hslexer.flex"
 case 192:
 case 192:
-YY_USER_ACTION
-# line 840 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 847 "yaccParser/hslexer.flex"
 ;
        YY_BREAK
 case 193:
 ;
        YY_BREAK
 case 193:
-YY_USER_ACTION
-# line 841 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 848 "yaccParser/hslexer.flex"
 { nested_comments++; }
        YY_BREAK
 case 194:
 { nested_comments++; }
        YY_BREAK
 case 194:
-YY_USER_ACTION
-# line 842 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 849 "yaccParser/hslexer.flex"
 { if (--nested_comments == 0) POP_STATE; }
        YY_BREAK
 case 195:
 { if (--nested_comments == 0) POP_STATE; }
        YY_BREAK
 case 195:
-YY_USER_ACTION
-# line 843 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 850 "yaccParser/hslexer.flex"
 ;
        YY_BREAK
 
 ;
        YY_BREAK
 
@@ -2855,8 +2939,8 @@ YY_USER_ACTION
      */
 
 case 196:
      */
 
 case 196:
-YY_USER_ACTION
-# line 853 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 860 "yaccParser/hslexer.flex"
 { 
                         fprintf(stderr, "\"%s\", line %d, column %d: Illegal character: `", 
                            input_filename, hsplineno, hspcolno + 1); 
 { 
                         fprintf(stderr, "\"%s\", line %d, column %d: Illegal character: `", 
                            input_filename, hsplineno, hspcolno + 1); 
@@ -2866,8 +2950,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 197:
                        }
        YY_BREAK
 case 197:
-YY_USER_ACTION
-# line 860 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 867 "yaccParser/hslexer.flex"
 { 
                         fprintf(stderr, "\"%s\", line %d, column %d: Illegal character: `",
                            input_filename, hsplineno, hspcolno + 1); 
 { 
                         fprintf(stderr, "\"%s\", line %d, column %d: Illegal character: `",
                            input_filename, hsplineno, hspcolno + 1); 
@@ -2877,8 +2961,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 198:
                        }
        YY_BREAK
 case 198:
-YY_USER_ACTION
-# line 867 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 874 "yaccParser/hslexer.flex"
 {
                         fprintf(stderr, "\"%s\", line %d, column %d: Illegal character escape: `\\",
                            input_filename, hsplineno, hspcolno + 1); 
 {
                         fprintf(stderr, "\"%s\", line %d, column %d: Illegal character escape: `\\",
                            input_filename, hsplineno, hspcolno + 1); 
@@ -2888,8 +2972,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 199:
                        }
        YY_BREAK
 case 199:
-YY_USER_ACTION
-# line 874 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 881 "yaccParser/hslexer.flex"
 { if (nonstandardFlag) {
                              addtext(yytext, yyleng);
                           } else { 
 { if (nonstandardFlag) {
                              addtext(yytext, yyleng);
                           } else { 
@@ -2902,8 +2986,8 @@ YY_USER_ACTION
                        }
        YY_BREAK
 case 200:
                        }
        YY_BREAK
 case 200:
-YY_USER_ACTION
-# line 884 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 891 "yaccParser/hslexer.flex"
 {
                         if (noGap) {
                             fprintf(stderr, "\"%s\", line %d, column %d: Illegal string escape: `\\", 
 {
                         if (noGap) {
                             fprintf(stderr, "\"%s\", line %d, column %d: Illegal string escape: `\\", 
@@ -2934,14 +3018,14 @@ YY_USER_ACTION
 
 case YY_STATE_EOF(Char):
 case YY_STATE_EOF(CharEsc):
 
 case YY_STATE_EOF(Char):
 case YY_STATE_EOF(CharEsc):
-# line 913 "yaccParser/hslexer.flex"
+#line 920 "yaccParser/hslexer.flex"
 { 
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated character literal");
                        }
        YY_BREAK
 case YY_STATE_EOF(Comment):
 { 
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated character literal");
                        }
        YY_BREAK
 case YY_STATE_EOF(Comment):
-# line 917 "yaccParser/hslexer.flex"
+#line 924 "yaccParser/hslexer.flex"
 { 
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated comment"); 
 { 
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated comment"); 
@@ -2949,21 +3033,21 @@ case YY_STATE_EOF(Comment):
        YY_BREAK
 case YY_STATE_EOF(String):
 case YY_STATE_EOF(StringEsc):
        YY_BREAK
 case YY_STATE_EOF(String):
 case YY_STATE_EOF(StringEsc):
-# line 921 "yaccParser/hslexer.flex"
+#line 928 "yaccParser/hslexer.flex"
 { 
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated string literal"); 
                        }
        YY_BREAK
 case YY_STATE_EOF(GhcPragma):
 { 
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated string literal"); 
                        }
        YY_BREAK
 case YY_STATE_EOF(GhcPragma):
-# line 925 "yaccParser/hslexer.flex"
+#line 932 "yaccParser/hslexer.flex"
 {
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated interface pragma"); 
                        }
        YY_BREAK
 case YY_STATE_EOF(UserPragma):
 {
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated interface pragma"); 
                        }
        YY_BREAK
 case YY_STATE_EOF(UserPragma):
-# line 929 "yaccParser/hslexer.flex"
+#line 936 "yaccParser/hslexer.flex"
 {
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated user-specified pragma"); 
 {
                          hsplineno = hslineno; hspcolno = hscolno;
                          hsperror("unterminated user-specified pragma"); 
@@ -2971,12 +3055,12 @@ case YY_STATE_EOF(UserPragma):
        YY_BREAK
 case YY_STATE_EOF(Code):
 case YY_STATE_EOF(GlaExt):
        YY_BREAK
 case YY_STATE_EOF(Code):
 case YY_STATE_EOF(GlaExt):
-# line 933 "yaccParser/hslexer.flex"
+#line 940 "yaccParser/hslexer.flex"
 { hsplineno = hslineno; hspcolno = hscolno; return(EOF); }
        YY_BREAK
 case 201:
 { hsplineno = hslineno; hspcolno = hscolno; return(EOF); }
        YY_BREAK
 case 201:
-YY_USER_ACTION
-# line 935 "yaccParser/hslexer.flex"
+YY_RULE_SETUP
+#line 942 "yaccParser/hslexer.flex"
 YY_FATAL_ERROR( "flex scanner jammed" );
        YY_BREAK
 case YY_STATE_EOF(INITIAL):
 YY_FATAL_ERROR( "flex scanner jammed" );
        YY_BREAK
 case YY_STATE_EOF(INITIAL):
@@ -2985,7 +3069,7 @@ case YY_STATE_EOF(INITIAL):
        case YY_END_OF_BUFFER:
                {
                /* Amount of text matched not including the EOB char. */
        case YY_END_OF_BUFFER:
                {
                /* Amount of text matched not including the EOB char. */
-               int yy_amount_of_matched_text = yy_cp - yytext_ptr - 1;
+               int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
 
                /* Undo the effects of YY_DO_BEFORE_ACTION. */
                *yy_cp = yy_hold_char;
 
                /* Undo the effects of YY_DO_BEFORE_ACTION. */
                *yy_cp = yy_hold_char;
@@ -3044,7 +3128,7 @@ case YY_STATE_EOF(INITIAL):
 
                        else
                                {
 
                        else
                                {
-                                                       yy_cp = yy_c_buf_p;
+                               yy_cp = yy_c_buf_p;
                                goto yy_find_action;
                                }
                        }
                                goto yy_find_action;
                                }
                        }
@@ -3122,7 +3206,7 @@ case YY_STATE_EOF(INITIAL):
 static int yy_get_next_buffer()
        {
        register char *dest = yy_current_buffer->yy_ch_buf;
 static int yy_get_next_buffer()
        {
        register char *dest = yy_current_buffer->yy_ch_buf;
-       register char *source = yytext_ptr - 1; /* copy prev. char, too */
+       register char *source = yytext_ptr;
        register int number_to_move, i;
        int ret_val;
 
        register int number_to_move, i;
        int ret_val;
 
@@ -3152,7 +3236,7 @@ static int yy_get_next_buffer()
        /* Try to read more data. */
 
        /* First move last chars to start of buffer. */
        /* Try to read more data. */
 
        /* First move last chars to start of buffer. */
-       number_to_move = yy_c_buf_p - yytext_ptr;
+       number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
 
        for ( i = 0; i < number_to_move; ++i )
                *(dest++) = *(source++);
 
        for ( i = 0; i < number_to_move; ++i )
                *(dest++) = *(source++);
@@ -3178,12 +3262,26 @@ static int yy_get_next_buffer()
                        /* just a shorter name for the current buffer */
                        YY_BUFFER_STATE b = yy_current_buffer;
 
                        /* just a shorter name for the current buffer */
                        YY_BUFFER_STATE b = yy_current_buffer;
 
-                       int yy_c_buf_p_offset = yy_c_buf_p - b->yy_ch_buf;
+                       int yy_c_buf_p_offset =
+                               (int) (yy_c_buf_p - b->yy_ch_buf);
+
+                       if ( b->yy_is_our_buffer )
+                               {
+                               int new_size = b->yy_buf_size * 2;
+
+                               if ( new_size <= 0 )
+                                       b->yy_buf_size += b->yy_buf_size / 8;
+                               else
+                                       b->yy_buf_size *= 2;
 
 
-                       b->yy_buf_size *= 2;
-                       b->yy_ch_buf = (char *)
-                               yy_flex_realloc( (void *) b->yy_ch_buf,
-                                                b->yy_buf_size );
+                               b->yy_ch_buf = (char *)
+                                       /* Include room in for 2 EOB chars. */
+                                       yy_flex_realloc( (void *) b->yy_ch_buf,
+                                                        b->yy_buf_size + 2 );
+                               }
+                       else
+                               /* Can't grow it, we don't own it. */
+                               b->yy_ch_buf = 0;
 
                        if ( ! b->yy_ch_buf )
                                YY_FATAL_ERROR(
 
                        if ( ! b->yy_ch_buf )
                                YY_FATAL_ERROR(
@@ -3206,7 +3304,7 @@ static int yy_get_next_buffer()
 
        if ( yy_n_chars == 0 )
                {
 
        if ( yy_n_chars == 0 )
                {
-               if ( number_to_move - YY_MORE_ADJ == 1 )
+               if ( number_to_move == YY_MORE_ADJ )
                        {
                        ret_val = EOB_ACT_END_OF_FILE;
                        yyrestart( yyin );
                        {
                        ret_val = EOB_ACT_END_OF_FILE;
                        yyrestart( yyin );
@@ -3227,13 +3325,7 @@ static int yy_get_next_buffer()
        yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
        yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
 
        yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
        yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
 
-       /* yytext begins at the second character in yy_ch_buf; the first
-        * character is the one which preceded it before reading in the latest
-        * buffer; it needs to be kept around in case it's a newline, so
-        * yy_get_previous_state() will have with '^' rules active.
-        */
-
-       yytext_ptr = &yy_current_buffer->yy_ch_buf[1];
+       yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
 
        return ret_val;
        }
 
        return ret_val;
        }
@@ -3246,11 +3338,8 @@ static yy_state_type yy_get_previous_state()
        register yy_state_type yy_current_state;
        register char *yy_cp;
 
        register yy_state_type yy_current_state;
        register char *yy_cp;
 
-       register char *yy_bp = yytext_ptr;
-
        yy_current_state = yy_start;
        yy_current_state = yy_start;
-       if ( yy_bp[-1] == '\n' )
-               ++yy_current_state;
+       yy_current_state += YY_AT_BOL();
 
        for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
                {
 
        for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
                {
@@ -3263,7 +3352,7 @@ static yy_state_type yy_get_previous_state()
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                        {
                        yy_current_state = (int) yy_def[yy_current_state];
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                        {
                        yy_current_state = (int) yy_def[yy_current_state];
-                       if ( yy_current_state >= 838 )
+                       if ( yy_current_state >= 836 )
                                yy_c = yy_meta[(unsigned int) yy_c];
                        }
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                                yy_c = yy_meta[(unsigned int) yy_c];
                        }
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -3298,16 +3387,17 @@ yy_state_type yy_current_state;
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                {
                yy_current_state = (int) yy_def[yy_current_state];
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                {
                yy_current_state = (int) yy_def[yy_current_state];
-               if ( yy_current_state >= 838 )
+               if ( yy_current_state >= 836 )
                        yy_c = yy_meta[(unsigned int) yy_c];
                }
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                        yy_c = yy_meta[(unsigned int) yy_c];
                }
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
-       yy_is_jam = (yy_current_state == 837);
+       yy_is_jam = (yy_current_state == 835);
 
        return yy_is_jam ? 0 : yy_current_state;
        }
 
 
 
        return yy_is_jam ? 0 : yy_current_state;
        }
 
 
+#ifndef YY_NO_UNPUT
 #ifdef YY_USE_PROTOS
 static void yyunput( int c, register char *yy_bp )
 #else
 #ifdef YY_USE_PROTOS
 static void yyunput( int c, register char *yy_bp )
 #else
@@ -3333,25 +3423,22 @@ register char *yy_bp;
                while ( source > yy_current_buffer->yy_ch_buf )
                        *--dest = *--source;
 
                while ( source > yy_current_buffer->yy_ch_buf )
                        *--dest = *--source;
 
-               yy_cp += dest - source;
-               yy_bp += dest - source;
+               yy_cp += (int) (dest - source);
+               yy_bp += (int) (dest - source);
                yy_n_chars = yy_current_buffer->yy_buf_size;
 
                if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
                        YY_FATAL_ERROR( "flex scanner push-back overflow" );
                }
 
                yy_n_chars = yy_current_buffer->yy_buf_size;
 
                if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
                        YY_FATAL_ERROR( "flex scanner push-back overflow" );
                }
 
-       if ( yy_cp > yy_bp && yy_cp[-1] == '\n' )
-               yy_cp[-2] = '\n';
-
        *--yy_cp = (char) c;
 
 
        *--yy_cp = (char) c;
 
 
-       /* Note: the formal parameter *must* be called "yy_bp" for this
-        * macro to now work correctly.
-        */
-       YY_DO_BEFORE_ACTION; /* set up yytext again */
+       yytext_ptr = yy_bp;
+       yy_hold_char = *yy_cp;
+       yy_c_buf_p = yy_cp;
        }
        }
+#endif /* ifndef YY_NO_UNPUT */
 
 
 #ifdef __cplusplus
 
 
 #ifdef __cplusplus
@@ -3390,7 +3477,8 @@ static int input()
                                                return EOF;
                                                }
 
                                                return EOF;
                                                }
 
-                                       YY_NEW_FILE;
+                                       if ( ! yy_did_buffer_switch_on_eof )
+                                               YY_NEW_FILE;
 #ifdef __cplusplus
                                        return yyinput();
 #else
 #ifdef __cplusplus
                                        return yyinput();
 #else
@@ -3418,6 +3506,8 @@ static int input()
        *yy_c_buf_p = '\0';     /* preserve yytext */
        yy_hold_char = *++yy_c_buf_p;
 
        *yy_c_buf_p = '\0';     /* preserve yytext */
        yy_hold_char = *++yy_c_buf_p;
 
+       yy_current_buffer->yy_at_bol = (c == '\n');
+
        return c;
        }
 
        return c;
        }
 
@@ -3491,7 +3581,6 @@ int size;
        YY_BUFFER_STATE b;
 
        b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
        YY_BUFFER_STATE b;
 
        b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
-
        if ( ! b )
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
        if ( ! b )
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
@@ -3501,10 +3590,11 @@ int size;
         * we need to put in 2 end-of-buffer characters.
         */
        b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
         * we need to put in 2 end-of-buffer characters.
         */
        b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
-
        if ( ! b->yy_ch_buf )
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
        if ( ! b->yy_ch_buf )
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
+       b->yy_is_our_buffer = 1;
+
        yy_init_buffer( b, file );
 
        return b;
        yy_init_buffer( b, file );
 
        return b;
@@ -3518,14 +3608,25 @@ void yy_delete_buffer( b )
 YY_BUFFER_STATE b;
 #endif
        {
 YY_BUFFER_STATE b;
 #endif
        {
+       if ( ! b )
+               return;
+
        if ( b == yy_current_buffer )
                yy_current_buffer = (YY_BUFFER_STATE) 0;
 
        if ( b == yy_current_buffer )
                yy_current_buffer = (YY_BUFFER_STATE) 0;
 
-       yy_flex_free( (void *) b->yy_ch_buf );
+       if ( b->yy_is_our_buffer )
+               yy_flex_free( (void *) b->yy_ch_buf );
+
        yy_flex_free( (void *) b );
        }
 
 
        yy_flex_free( (void *) b );
        }
 
 
+#ifndef YY_ALWAYS_INTERACTIVE
+#ifndef YY_NEVER_INTERACTIVE
+extern int isatty YY_PROTO(( int ));
+#endif
+#endif
+
 #ifdef YY_USE_PROTOS
 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
 #else
 #ifdef YY_USE_PROTOS
 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
 #else
@@ -3533,33 +3634,148 @@ void yy_init_buffer( b, file )
 YY_BUFFER_STATE b;
 FILE *file;
 #endif
 YY_BUFFER_STATE b;
 FILE *file;
 #endif
+
+
        {
        {
+       yy_flush_buffer( b );
+
        b->yy_input_file = file;
        b->yy_input_file = file;
+       b->yy_fill_buffer = 1;
 
 
-       /* We put in the '\n' and start reading from [1] so that an
-        * initial match-at-newline will be true.
-        */
+#if YY_ALWAYS_INTERACTIVE
+       b->yy_is_interactive = 1;
+#else
+#if YY_NEVER_INTERACTIVE
+       b->yy_is_interactive = 0;
+#else
+       b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
+#endif
+#endif
+       }
 
 
-       b->yy_ch_buf[0] = '\n';
-       b->yy_n_chars = 1;
+
+#ifdef YY_USE_PROTOS
+void yy_flush_buffer( YY_BUFFER_STATE b )
+#else
+void yy_flush_buffer( b )
+YY_BUFFER_STATE b;
+#endif
+
+       {
+       b->yy_n_chars = 0;
 
        /* We always need two end-of-buffer characters.  The first causes
         * a transition to the end-of-buffer state.  The second causes
         * a jam in that state.
         */
 
        /* We always need two end-of-buffer characters.  The first causes
         * a transition to the end-of-buffer state.  The second causes
         * a jam in that state.
         */
+       b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
        b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
        b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
-       b->yy_ch_buf[2] = YY_END_OF_BUFFER_CHAR;
 
 
-       b->yy_buf_pos = &b->yy_ch_buf[1];
+       b->yy_buf_pos = &b->yy_ch_buf[0];
+
+       b->yy_at_bol = 1;
+       b->yy_buffer_status = YY_BUFFER_NEW;
 
 
-       b->yy_is_interactive = file ? isatty( fileno(file) ) : 0;
+       if ( b == yy_current_buffer )
+               yy_load_buffer_state();
+       }
 
 
-       b->yy_fill_buffer = 1;
 
 
+#ifndef YY_NO_SCAN_BUFFER
+#ifdef YY_USE_PROTOS
+YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
+#else
+YY_BUFFER_STATE yy_scan_buffer( base, size )
+char *base;
+yy_size_t size;
+#endif
+       {
+       YY_BUFFER_STATE b;
+
+       if ( size < 2 ||
+            base[size-2] != YY_END_OF_BUFFER_CHAR ||
+            base[size-1] != YY_END_OF_BUFFER_CHAR )
+               /* They forgot to leave room for the EOB's. */
+               return 0;
+
+       b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
+       if ( ! b )
+               YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
+
+       b->yy_buf_size = size - 2;      /* "- 2" to take care of EOB's */
+       b->yy_buf_pos = b->yy_ch_buf = base;
+       b->yy_is_our_buffer = 0;
+       b->yy_input_file = 0;
+       b->yy_n_chars = b->yy_buf_size;
+       b->yy_is_interactive = 0;
+       b->yy_at_bol = 1;
+       b->yy_fill_buffer = 0;
        b->yy_buffer_status = YY_BUFFER_NEW;
        b->yy_buffer_status = YY_BUFFER_NEW;
+
+       yy_switch_to_buffer( b );
+
+       return b;
        }
        }
+#endif
+
+
+#ifndef YY_NO_SCAN_STRING
+#ifdef YY_USE_PROTOS
+YY_BUFFER_STATE yy_scan_string( yyconst char *str )
+#else
+YY_BUFFER_STATE yy_scan_string( str )
+yyconst char *str;
+#endif
+       {
+       int len;
+       for ( len = 0; str[len]; ++len )
+               ;
+
+       return yy_scan_bytes( str, len );
+       }
+#endif
 
 
 
 
+#ifndef YY_NO_SCAN_BYTES
+#ifdef YY_USE_PROTOS
+YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
+#else
+YY_BUFFER_STATE yy_scan_bytes( bytes, len )
+yyconst char *bytes;
+int len;
+#endif
+       {
+       YY_BUFFER_STATE b;
+       char *buf;
+       yy_size_t n;
+       int i;
+
+       /* Get memory for full buffer, including space for trailing EOB's. */
+       n = len + 2;
+       buf = (char *) yy_flex_alloc( n );
+       if ( ! buf )
+               YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
+
+       for ( i = 0; i < len; ++i )
+               buf[i] = bytes[i];
+
+       buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
+
+       b = yy_scan_buffer( buf, n );
+       if ( ! b )
+               YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
+
+       /* It's okay to grow etc. this buffer, and we should throw it
+        * away when we're done.
+        */
+       b->yy_is_our_buffer = 1;
+
+       return b;
+       }
+#endif
+
+
+#ifndef YY_NO_PUSH_STATE
 #ifdef YY_USE_PROTOS
 static void yy_push_state( int new_state )
 #else
 #ifdef YY_USE_PROTOS
 static void yy_push_state( int new_state )
 #else
@@ -3569,7 +3785,7 @@ int new_state;
        {
        if ( yy_start_stack_ptr >= yy_start_stack_depth )
                {
        {
        if ( yy_start_stack_ptr >= yy_start_stack_depth )
                {
-               int new_size;
+               yy_size_t new_size;
 
                yy_start_stack_depth += YY_START_STACK_INCR;
                new_size = yy_start_stack_depth * sizeof( int );
 
                yy_start_stack_depth += YY_START_STACK_INCR;
                new_size = yy_start_stack_depth * sizeof( int );
@@ -3590,8 +3806,10 @@ int new_state;
 
        BEGIN(new_state);
        }
 
        BEGIN(new_state);
        }
+#endif
 
 
 
 
+#ifndef YY_NO_POP_STATE
 static void yy_pop_state()
        {
        if ( --yy_start_stack_ptr < 0 )
 static void yy_pop_state()
        {
        if ( --yy_start_stack_ptr < 0 )
@@ -3599,23 +3817,29 @@ static void yy_pop_state()
 
        BEGIN(yy_start_stack[yy_start_stack_ptr]);
        }
 
        BEGIN(yy_start_stack[yy_start_stack_ptr]);
        }
+#endif
 
 
 
 
+#ifndef YY_NO_TOP_STATE
 static int yy_top_state()
        {
        return yy_start_stack[yy_start_stack_ptr - 1];
        }
 static int yy_top_state()
        {
        return yy_start_stack[yy_start_stack_ptr - 1];
        }
+#endif
 
 
+#ifndef YY_EXIT_FAILURE
+#define YY_EXIT_FAILURE 2
+#endif
 
 #ifdef YY_USE_PROTOS
 
 #ifdef YY_USE_PROTOS
-static void yy_fatal_error( const char msg[] )
+static void yy_fatal_error( yyconst char msg[] )
 #else
 static void yy_fatal_error( msg )
 char msg[];
 #endif
        {
        (void) fprintf( stderr, "%s\n", msg );
 #else
 static void yy_fatal_error( msg )
 char msg[];
 #endif
        {
        (void) fprintf( stderr, "%s\n", msg );
-       exit( 1 );
+       exit( YY_EXIT_FAILURE );
        }
 
 
        }
 
 
@@ -3640,11 +3864,11 @@ char msg[];
 
 #ifndef yytext_ptr
 #ifdef YY_USE_PROTOS
 
 #ifndef yytext_ptr
 #ifdef YY_USE_PROTOS
-static void yy_flex_strncpy( char *s1, const char *s2, int n )
+static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
 #else
 static void yy_flex_strncpy( s1, s2, n )
 char *s1;
 #else
 static void yy_flex_strncpy( s1, s2, n )
 char *s1;
-const char *s2;
+yyconst char *s2;
 int n;
 #endif
        {
 int n;
 #endif
        {
@@ -3656,24 +3880,31 @@ int n;
 
 
 #ifdef YY_USE_PROTOS
 
 
 #ifdef YY_USE_PROTOS
-static void *yy_flex_alloc( unsigned int size )
+static void *yy_flex_alloc( yy_size_t size )
 #else
 static void *yy_flex_alloc( size )
 #else
 static void *yy_flex_alloc( size )
-unsigned int size;
+yy_size_t size;
 #endif
        {
        return (void *) malloc( size );
        }
 
 #ifdef YY_USE_PROTOS
 #endif
        {
        return (void *) malloc( size );
        }
 
 #ifdef YY_USE_PROTOS
-static void *yy_flex_realloc( void *ptr, unsigned int size )
+static void *yy_flex_realloc( void *ptr, yy_size_t size )
 #else
 static void *yy_flex_realloc( ptr, size )
 void *ptr;
 #else
 static void *yy_flex_realloc( ptr, size )
 void *ptr;
-unsigned int size;
+yy_size_t size;
 #endif
        {
 #endif
        {
-       return (void *) realloc( ptr, size );
+       /* The cast to (char *) in the following accommodates both
+        * implementations that use char* generic pointers, and those
+        * that use void* generic pointers.  It works with the latter
+        * because both ANSI C and C++ allow castless assignment from
+        * any pointer type to void*, and deal with argument conversions
+        * as though doing an assignment.
+        */
+       return (void *) realloc( (char *) ptr, size );
        }
 
 #ifdef YY_USE_PROTOS
        }
 
 #ifdef YY_USE_PROTOS
@@ -3685,7 +3916,15 @@ void *ptr;
        {
        free( ptr );
        }
        {
        free( ptr );
        }
-# line 935 "yaccParser/hslexer.flex"
+
+#if YY_MAIN
+int main()
+       {
+       yylex();
+       return 0;
+       }
+#endif
+#line 942 "yaccParser/hslexer.flex"
 
 
 /**********************************************************************
 
 
 /**********************************************************************
@@ -3701,11 +3940,11 @@ void *ptr;
    This allows unnamed sources to be piped into the parser.
 */
 
    This allows unnamed sources to be piped into the parser.
 */
 
+extern BOOLEAN acceptPrim;
+
 void
 void
-yyinit()
+yyinit(void)
 {
 {
-    extern BOOLEAN acceptPrim;
-
     input_filename = xstrdup("<stdin>");
 
     /* We must initialize the input buffer _now_, because we call
     input_filename = xstrdup("<stdin>");
 
     /* We must initialize the input buffer _now_, because we call
@@ -3718,9 +3957,8 @@ yyinit()
        PUSH_STATE(Code);
 }
 
        PUSH_STATE(Code);
 }
 
-void
-new_filename(f) /* This looks pretty dodgy to me (WDP) */
-  char *f;
+static void
+new_filename(char *f) /* This looks pretty dodgy to me (WDP) */
 {
     if (input_filename != NULL)
        free(input_filename);
 {
     if (input_filename != NULL)
        free(input_filename);
@@ -3740,8 +3978,8 @@ new_filename(f) /* This looks pretty dodgy to me (WDP) */
        forcing insertion of ; or } as appropriate
 */
 
        forcing insertion of ; or } as appropriate
 */
 
-BOOLEAN
-hsshouldindent()
+static BOOLEAN
+hsshouldindent(void)
 {
     return (!forgetindent && INDENTON);
 }
 {
     return (!forgetindent && INDENTON);
 }
@@ -3749,7 +3987,7 @@ hsshouldindent()
 
 /* Enter new context and set new indentation level */
 void
 
 /* Enter new context and set new indentation level */
 void
-hssetindent()
+hssetindent(void)
 {
 #ifdef HSP_DEBUG
     fprintf(stderr, "hssetindent:hscolno=%d,hspcolno=%d,INDENTPT[%d]=%d\n", hscolno, hspcolno, icontexts, INDENTPT);
 {
 #ifdef HSP_DEBUG
     fprintf(stderr, "hssetindent:hscolno=%d,hspcolno=%d,INDENTPT[%d]=%d\n", hscolno, hspcolno, icontexts, INDENTPT);
@@ -3778,7 +4016,7 @@ hssetindent()
 
 /* Enter a new context without changing the indentation level */
 void
 
 /* Enter a new context without changing the indentation level */
 void
-hsincindent()
+hsincindent(void)
 {
 #ifdef HSP_DEBUG
     fprintf(stderr, "hsincindent:hscolno=%d,hspcolno=%d,INDENTPT[%d]=%d\n", hscolno, hspcolno, icontexts, INDENTPT);
 {
 #ifdef HSP_DEBUG
     fprintf(stderr, "hsincindent:hscolno=%d,hspcolno=%d,INDENTPT[%d]=%d\n", hscolno, hspcolno, icontexts, INDENTPT);
@@ -3789,16 +4027,15 @@ hsincindent()
 
 /* Turn off indentation processing, usually because an explicit "{" has been seen */
 void
 
 /* Turn off indentation processing, usually because an explicit "{" has been seen */
 void
-hsindentoff()
+hsindentoff(void)
 {
     forgetindent = TRUE;
 }
 
 
 /* Enter a new layout context. */
 {
     forgetindent = TRUE;
 }
 
 
 /* Enter a new layout context. */
-void
-hsentercontext(indent)
-  int indent;
+static void
+hsentercontext(int indent)
 {
     /* Enter new context and set indentation as specified */
     if (++icontexts >= MAX_CONTEXTS) {
 {
     /* Enter new context and set indentation as specified */
     if (++icontexts >= MAX_CONTEXTS) {
@@ -3817,7 +4054,7 @@ hsentercontext(indent)
 
 /* Exit a layout context */
 void
 
 /* Exit a layout context */
 void
-hsendindent()
+hsendindent(void)
 {
     --icontexts;
 #ifdef HSP_DEBUG
 {
     --icontexts;
 #ifdef HSP_DEBUG
@@ -3829,9 +4066,8 @@ hsendindent()
  *     Return checks the indentation level and returns ;, } or the specified token.
  */
 
  *     Return checks the indentation level and returns ;, } or the specified token.
  */
 
-int
-Return(tok)
-  int tok;
+static int
+Return(int tok)
 {
 #ifdef HSP_DEBUG
     extern int yyleng;
 {
 #ifdef HSP_DEBUG
     extern int yyleng;
@@ -3928,12 +4164,11 @@ yylex()
 **********************************************************************/
 
 /* setyyin(file)       open file as new lex input buffer */
 **********************************************************************/
 
 /* setyyin(file)       open file as new lex input buffer */
+extern FILE *yyin;
+
 void
 void
-setyyin(file)
-  char *file;
+setyyin(char *file)
 {
 {
-    extern FILE *yyin;
-
     hsbuf_save = YY_CURRENT_BUFFER;
     if ((yyin = fopen(file, "r")) == NULL) {
        char errbuf[ERR_BUF_SIZE];
     hsbuf_save = YY_CURRENT_BUFFER;
     if ((yyin = fopen(file, "r")) == NULL) {
        char errbuf[ERR_BUF_SIZE];
@@ -3964,10 +4199,8 @@ setyyin(file)
 #endif
 }
 
 #endif
 }
 
-static VOID
-layout_input(text, len)
-char *text;
-int len;
+static void
+layout_input(char *text, int len)
 {
 #ifdef HSP_DEBUG
     fprintf(stderr, "Scanning \"%s\"\n", text);
 {
 #ifdef HSP_DEBUG
     fprintf(stderr, "Scanning \"%s\"\n", text);
@@ -3997,7 +4230,7 @@ int len;
 }
 
 void
 }
 
 void
-setstartlineno()
+setstartlineno(void)
 {
     startlineno = hsplineno;
 #if 1/*etags*/
 {
     startlineno = hsplineno;
 #if 1/*etags*/
@@ -4023,8 +4256,8 @@ static struct {
     char *text;
 } textcache = { 0, 0, NULL };
 
     char *text;
 } textcache = { 0, 0, NULL };
 
-static VOID
-cleartext()
+static void
+cleartext(void)
 {
 /*  fprintf(stderr, "cleartext\n"); */
     textcache.next = 0;
 {
 /*  fprintf(stderr, "cleartext\n"); */
     textcache.next = 0;
@@ -4034,10 +4267,8 @@ cleartext()
     }
 }
 
     }
 }
 
-static VOID
-addtext(text, length)
-char *text;
-unsigned length;
+static void
+addtext(char *text, unsigned length)
 {
 /*  fprintf(stderr, "addtext: %d %s\n", length, text); */
 
 {
 /*  fprintf(stderr, "addtext: %d %s\n", length, text); */
 
@@ -4052,13 +4283,8 @@ unsigned length;
     textcache.next += length;
 }
 
     textcache.next += length;
 }
 
-static VOID
-#ifdef __STDC__
+static void
 addchar(char c)
 addchar(char c)
-#else
-addchar(c)
-  char c;
-#endif
 {
 /*  fprintf(stderr, "addchar: %c\n", c); */
 
 {
 /*  fprintf(stderr, "addchar: %c\n", c); */
 
@@ -4070,8 +4296,7 @@ addchar(c)
 }
 
 static char *
 }
 
 static char *
-fetchtext(length)
-unsigned *length;
+fetchtext(unsigned *length)
 {
 /*  fprintf(stderr, "fetchtext: %d\n", textcache.next); */
 
 {
 /*  fprintf(stderr, "fetchtext: %d\n", textcache.next); */
 
@@ -4092,10 +4317,8 @@ unsigned *length;
        hsnewid         Enters an id of length n into the symbol table.
 */
 
        hsnewid         Enters an id of length n into the symbol table.
 */
 
-static VOID
-hsnewid(name, length)
-char *name;
-int length;
+static void
+hsnewid(char *name, int length)
 {
     char save = name[length];
 
 {
     char save = name[length];
 
@@ -4105,8 +4328,7 @@ int length;
 }
 
 BOOLEAN 
 }
 
 BOOLEAN 
-isconstr(s) /* walks past leading underscores before using the macro */
-  char *s;
+isconstr(char *s) /* walks past leading underscores before using the macro */
 {
     char *temp = s;
 
 {
     char *temp = s;
 
index 7b0fec0..1fbc148 100644 (file)
@@ -1,5 +1,5 @@
 
 
-/*  A Bison parser, made from yaccParser/hsparser.y with Bison version GNU Bison version 1.21
+/*  A Bison parser, made from yaccParser/hsparser.y with Bison version GNU Bison version 1.24
   */
 
 #define YYBISON 1  /* Identify Bison output.  */
   */
 
 #define YYBISON 1  /* Identify Bison output.  */
 *                                                                     *
 **********************************************************************/
 
 *                                                                     *
 **********************************************************************/
 
-BOOLEAN expect_ccurly = FALSE; /* Used to signal that a CCURLY could be inserted here */
+static BOOLEAN expect_ccurly = FALSE; /* Used to signal that a CCURLY could be inserted here */
 
 extern BOOLEAN nonstandardFlag;
 extern BOOLEAN etags;
 
 extern BOOLEAN nonstandardFlag;
 extern BOOLEAN etags;
@@ -185,7 +185,7 @@ extern int startlineno;
 *                                                                     *
 **********************************************************************/
 
 *                                                                     *
 **********************************************************************/
 
-list fixlist;
+/* OLD 95/08: list fixlist; */
 static int Fixity = 0, Precedence = 0;
 struct infix;
 
 static int Fixity = 0, Precedence = 0;
 struct infix;
 
@@ -583,74 +583,74 @@ static const short yyrline[] = { 0,
   1364,  1368,  1394,  1408,  1411,  1412,  1415,  1416,  1419,  1421,
   1422,  1425,  1429,  1430,  1439,  1440,  1441,  1450,  1451,  1461,
   1462,  1469,  1477,  1480,  1486,  1487,  1490,  1493,  1494,  1497,
   1364,  1368,  1394,  1408,  1411,  1412,  1415,  1416,  1419,  1421,
   1422,  1425,  1429,  1430,  1439,  1440,  1441,  1450,  1451,  1461,
   1462,  1469,  1477,  1480,  1486,  1487,  1490,  1493,  1494,  1497,
-  1498,  1499,  1500,  1501,  1502,  1503,  1504,  1507,  1521,  1526,
-  1527,  1530,  1531,  1541,  1542,  1543,  1544,  1545,  1546,  1549,
-  1550,  1551,  1552,  1555,  1556,  1557,  1590,  1591,  1605,  1606,
-  1626,  1627,  1631,  1632,  1635,  1636,  1640,  1641,  1644,  1645,
-  1646,  1647,  1648,  1649,  1650,  1654,  1655,  1656,  1657,  1658,
-  1661,  1662,  1663,  1664,  1665,  1666,  1667,  1671,  1672,  1673,
-  1674,  1675,  1685,  1691,  1695,  1696,  1706,  1707,  1710,  1712,
-  1727,  1728,  1731,  1734,  1735,  1738,  1738,  1739,  1757,  1758,
-  1761,  1762,  1765,  1768,  1771,  1774,  1775,  1778,  1779,  1782,
-  1783,  1786,  1787,  1791,  1792,  1795,  1796,  1797,  1798,  1801,
-  1802,  1805,  1806,  1809,  1810,  1811,  1812,  1813,  1814,  1818,
-  1819,  1820,  1821,  1822,  1825,  1827,  1828,  1829,  1830,  1831,
-  1832,  1833,  1834,  1835,  1836,  1837,  1838,  1839,  1845,  1848,
-  1858,  1868,  1879,  1882,  1892,  1895,  1905,  1908,  1911,  1917,
-  1918,  1921,  1922,  1925,  1926,  1930,  1931,  1932,  1935,  1936,
-  1939,  1940,  1941,  1944,  1947,  1950,  1951,  1954,  1955,  1959,
-  1960,  1963,  1964,  1967,  1968,  1972,  1973,  1977,  1978,  1981,
-  1984,  1990,  1993,  1997,  1999,  2002,  2005,  2013,  2013,  2016,
-  2022
+  1498,  1499,  1500,  1501,  1502,  1503,  1504,  1507,  1518,  1523,
+  1524,  1527,  1528,  1538,  1539,  1540,  1541,  1542,  1543,  1546,
+  1547,  1548,  1549,  1552,  1553,  1554,  1567,  1568,  1582,  1583,
+  1603,  1604,  1608,  1609,  1612,  1613,  1617,  1618,  1621,  1622,
+  1623,  1624,  1625,  1626,  1627,  1631,  1632,  1633,  1634,  1635,
+  1638,  1639,  1640,  1641,  1642,  1643,  1644,  1648,  1649,  1650,
+  1651,  1652,  1656,  1662,  1671,  1672,  1682,  1683,  1686,  1688,
+  1703,  1704,  1707,  1710,  1711,  1714,  1714,  1715,  1735,  1736,
+  1739,  1740,  1743,  1746,  1749,  1752,  1753,  1756,  1757,  1760,
+  1761,  1764,  1765,  1769,  1770,  1773,  1774,  1775,  1776,  1779,
+  1780,  1783,  1784,  1787,  1788,  1789,  1790,  1791,  1792,  1796,
+  1797,  1798,  1799,  1800,  1803,  1805,  1806,  1807,  1808,  1809,
+  1810,  1811,  1812,  1813,  1814,  1815,  1816,  1817,  1823,  1826,
+  1836,  1846,  1857,  1860,  1870,  1873,  1883,  1886,  1889,  1895,
+  1896,  1899,  1900,  1903,  1904,  1908,  1909,  1910,  1913,  1914,
+  1917,  1918,  1919,  1922,  1925,  1928,  1929,  1932,  1933,  1937,
+  1938,  1941,  1942,  1945,  1946,  1950,  1951,  1955,  1956,  1959,
+  1962,  1968,  1971,  1975,  1977,  1980,  1983,  1991,  1991,  1994,
+  2000
 };
 
 };
 
-static const char * const yytname[] = {   "$","error","$illegal.","VARID","CONID",
-"VARSYM","CONSYM","MINUS","INTEGER","FLOAT","CHAR","STRING","CHARPRIM","STRINGPRIM",
-"INTPRIM","FLOATPRIM","DOUBLEPRIM","CLITLIT","OCURLY","CCURLY","VCCURLY","SEMI",
-"OBRACK","CBRACK","OPAREN","CPAREN","COMMA","BQUOTE","RARROW","VBAR","EQUAL",
-"DARROW","DOTDOT","DCOLON","LARROW","WILDCARD","AT","LAZY","LAMBDA","LET","IN",
-"WHERE","CASE","OF","TYPE","DATA","CLASS","INSTANCE","DEFAULT","INFIX","INFIXL",
-"INFIXR","MODULE","IMPORT","INTERFACE","HIDING","CCALL","CCALL_GC","CASM","CASM_GC",
-"SCC","IF","THEN","ELSE","RENAMING","DERIVING","TO","LEOF","GHC_PRAGMA","END_PRAGMA",
-"NO_PRAGMA","NOINFO_PRAGMA","ABSTRACT_PRAGMA","SPECIALISE_PRAGMA","MODNAME_PRAGMA",
-"ARITY_PRAGMA","UPDATE_PRAGMA","STRICTNESS_PRAGMA","KIND_PRAGMA","UNFOLDING_PRAGMA",
-"MAGIC_UNFOLDING_PRAGMA","DEFOREST_PRAGMA","SPECIALISE_UPRAGMA","INLINE_UPRAGMA",
-"MAGIC_UNFOLDING_UPRAGMA","ABSTRACT_UPRAGMA","DEFOREST_UPRAGMA","END_UPRAGMA",
-"TYLAMBDA","COCON","COPRIM","COAPP","COTYAPP","FORALL","TYVAR_TEMPLATE_ID","CO_ALG_ALTS",
-"CO_PRIM_ALTS","CO_NO_DEFAULT","CO_LETREC","CO_SDSEL_ID","CO_METH_ID","CO_DEFM_ID",
-"CO_DFUN_ID","CO_CONSTM_ID","CO_SPEC_ID","CO_WRKR_ID","CO_ORIG_NM","UNFOLD_ALWAYS",
-"UNFOLD_IF_ARGS","NOREP_INTEGER","NOREP_RATIONAL","NOREP_STRING","CO_PRELUDE_DICTS_CC",
-"CO_ALL_DICTS_CC","CO_USER_CC","CO_AUTO_CC","CO_DICT_CC","CO_CAF_CC","CO_DUPD_CC",
-"PLUS","pmodule","module","@1","@2","body","maybeexports","export_list","export",
-"impspec","maybeimpspec","import_list","import","idata_pragma","idata_pragma_specs",
-"idata_pragma_specslist","idata_pragma_spectypes","itype_pragma","iclas_pragma",
-"iclasop_pragma","iinst_pragma","modname_pragma","restof_iinst_spec","ival_pragma",
-"gen_pragma","arity_pragma","update_pragma","deforest_pragma","strictness_pragma",
-"worker_info","unfolding_pragma","unfolding_guidance","gen_pragma_list","type_pragma_pairs_maybe",
-"type_pragma_pairs","type_pragma_pair","type_instpragma_pairs","type_instpragma_pair",
-"type_maybes","type_maybe","maybe_name_pragma_pairs","name_pragma_pairs","name_pragma_pair",
-"core_expr","core_case_alts","core_alg_alts","core_alg_alt","core_prim_alts",
-"core_prim_alt","core_default","corec_binds","corec_bind","co_scc","co_caf",
-"co_dupd","core_id","co_primop","core_binders","core_binder","core_atoms","core_atom_list",
-"core_atom","core_tyvars","core_tv_templates","core_types","core_type_list",
-"core_type","core_type_maybes","core_type_maybe","readpreludecore","@3","readprelude",
-"@4","maybeimpdecls","impdecls","impdecl","@5","impdecl_rest","readinterface",
-"renamings","renaming_list","renaming","maybeiimports","iimports","iimport",
-"interface","@6","ibody","maybefixes","fixes","fix","@7","@8","@9","@10","@11",
-"@12","ops","topdecls","topdecl","typed","datad","classd","cbody","instd","rinst",
-"inst","defaultd","dtypes","decls","decl","howto_inline_maybe","types_and_maybe_ids",
-"type_and_maybe_id","itopdecls","itopdecl","ivarsd","ityped","idatad","iclassd",
-"iinstd","class","types","type","btype","atypes","ttype","atype","ntatype","simple",
-"simple_long","constrs","constr","tyclses","tycls_list","context","context_list",
-"instdefs","instdef","vars","varsrest","cons","valdef","@13","valrhs","valrhs1",
-"gdrhs","maybe_where","gd","lampats","exp","oexp","dexp","kexp","@14","@15",
-"fexp","cexp","aexp","opatk","opat","dpat","fpat","dpatk","fpatk","aapat","aapatk",
-"tuple","texps","list","list_exps","sequence","comprehension","quals","qual",
-"@16","@17","qualrest","alts","alt","@18","altrest","gdpat","upto","pats","pat",
-"bpat","conpat","apat","apatc","lit_constant","importkey","datakey","typekey",
-"instkey","defaultkey","classkey","minuskey","modulekey","oparenkey","obrackkey",
-"lazykey","op1","op","varop","varop1","conop","varsym","minus","plus","var",
-"vark","con","conk","ccallid","atype_list","tyvars","tyvar","tycls","tycon",
+static const char * const yytname[] = {   "$","error","$undefined.","VARID",
+"CONID","VARSYM","CONSYM","MINUS","INTEGER","FLOAT","CHAR","STRING","CHARPRIM",
+"STRINGPRIM","INTPRIM","FLOATPRIM","DOUBLEPRIM","CLITLIT","OCURLY","CCURLY",
+"VCCURLY","SEMI","OBRACK","CBRACK","OPAREN","CPAREN","COMMA","BQUOTE","RARROW",
+"VBAR","EQUAL","DARROW","DOTDOT","DCOLON","LARROW","WILDCARD","AT","LAZY","LAMBDA",
+"LET","IN","WHERE","CASE","OF","TYPE","DATA","CLASS","INSTANCE","DEFAULT","INFIX",
+"INFIXL","INFIXR","MODULE","IMPORT","INTERFACE","HIDING","CCALL","CCALL_GC",
+"CASM","CASM_GC","SCC","IF","THEN","ELSE","RENAMING","DERIVING","TO","LEOF",
+"GHC_PRAGMA","END_PRAGMA","NO_PRAGMA","NOINFO_PRAGMA","ABSTRACT_PRAGMA","SPECIALISE_PRAGMA",
+"MODNAME_PRAGMA","ARITY_PRAGMA","UPDATE_PRAGMA","STRICTNESS_PRAGMA","KIND_PRAGMA",
+"UNFOLDING_PRAGMA","MAGIC_UNFOLDING_PRAGMA","DEFOREST_PRAGMA","SPECIALISE_UPRAGMA",
+"INLINE_UPRAGMA","MAGIC_UNFOLDING_UPRAGMA","ABSTRACT_UPRAGMA","DEFOREST_UPRAGMA",
+"END_UPRAGMA","TYLAMBDA","COCON","COPRIM","COAPP","COTYAPP","FORALL","TYVAR_TEMPLATE_ID",
+"CO_ALG_ALTS","CO_PRIM_ALTS","CO_NO_DEFAULT","CO_LETREC","CO_SDSEL_ID","CO_METH_ID",
+"CO_DEFM_ID","CO_DFUN_ID","CO_CONSTM_ID","CO_SPEC_ID","CO_WRKR_ID","CO_ORIG_NM",
+"UNFOLD_ALWAYS","UNFOLD_IF_ARGS","NOREP_INTEGER","NOREP_RATIONAL","NOREP_STRING",
+"CO_PRELUDE_DICTS_CC","CO_ALL_DICTS_CC","CO_USER_CC","CO_AUTO_CC","CO_DICT_CC",
+"CO_CAF_CC","CO_DUPD_CC","PLUS","pmodule","module","@1","@2","body","maybeexports",
+"export_list","export","impspec","maybeimpspec","import_list","import","idata_pragma",
+"idata_pragma_specs","idata_pragma_specslist","idata_pragma_spectypes","itype_pragma",
+"iclas_pragma","iclasop_pragma","iinst_pragma","modname_pragma","restof_iinst_spec",
+"ival_pragma","gen_pragma","arity_pragma","update_pragma","deforest_pragma",
+"strictness_pragma","worker_info","unfolding_pragma","unfolding_guidance","gen_pragma_list",
+"type_pragma_pairs_maybe","type_pragma_pairs","type_pragma_pair","type_instpragma_pairs",
+"type_instpragma_pair","type_maybes","type_maybe","maybe_name_pragma_pairs",
+"name_pragma_pairs","name_pragma_pair","core_expr","core_case_alts","core_alg_alts",
+"core_alg_alt","core_prim_alts","core_prim_alt","core_default","corec_binds",
+"corec_bind","co_scc","co_caf","co_dupd","core_id","co_primop","core_binders",
+"core_binder","core_atoms","core_atom_list","core_atom","core_tyvars","core_tv_templates",
+"core_types","core_type_list","core_type","core_type_maybes","core_type_maybe",
+"readpreludecore","@3","readprelude","@4","maybeimpdecls","impdecls","impdecl",
+"@5","impdecl_rest","readinterface","renamings","renaming_list","renaming","maybeiimports",
+"iimports","iimport","interface","@6","ibody","maybefixes","fixes","fix","@7",
+"@8","@9","@10","@11","@12","ops","topdecls","topdecl","typed","datad","classd",
+"cbody","instd","rinst","inst","defaultd","dtypes","decls","decl","howto_inline_maybe",
+"types_and_maybe_ids","type_and_maybe_id","itopdecls","itopdecl","ivarsd","ityped",
+"idatad","iclassd","iinstd","class","types","type","btype","atypes","ttype",
+"atype","ntatype","simple","simple_long","constrs","constr","tyclses","tycls_list",
+"context","context_list","instdefs","instdef","vars","varsrest","cons","valdef",
+"@13","valrhs","valrhs1","gdrhs","maybe_where","gd","lampats","exp","oexp","dexp",
+"kexp","@14","@15","fexp","cexp","aexp","opatk","opat","dpat","fpat","dpatk",
+"fpatk","aapat","aapatk","tuple","texps","list","list_exps","sequence","comprehension",
+"quals","qual","@16","@17","qualrest","alts","alt","@18","altrest","gdpat","upto",
+"pats","pat","bpat","conpat","apat","apatc","lit_constant","importkey","datakey",
+"typekey","instkey","defaultkey","classkey","minuskey","modulekey","oparenkey",
+"obrackkey","lazykey","op1","op","varop","varop1","conop","varsym","minus","plus",
+"var","vark","con","conk","ccallid","atype_list","tyvars","tyvar","tycls","tycon",
 "modid","ocurly","vocurly","layout","ccurly","vccurly","@19","vccurly1",""
 };
 #endif
 "modid","ocurly","vocurly","layout","ccurly","vccurly","@19","vccurly1",""
 };
 #endif
@@ -1601,14 +1601,14 @@ static const short yycheck[] = {    29,
     -1,    -1,   109,   110,   111
 };
 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
     -1,    -1,   109,   110,   111
 };
 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
-#line 3 "/usr/local/gnu/lib/bison.simple"
+#line 3 "/usr/local/gnu/share/bison.simple"
 
 /* Skeleton output parser for bison,
 
 /* Skeleton output parser for bison,
-   Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman
+   Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
+   the Free Software Foundation; either version 2, or (at your option)
    any later version.
 
    This program is distributed in the hope that it will be useful,
    any later version.
 
    This program is distributed in the hope that it will be useful,
@@ -1620,6 +1620,10 @@ static const short yycheck[] = {    29,
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
+/* As a special exception, when this file is copied by Bison into a
+   Bison output file, you may use that output file without restriction.
+   This special exception was added by the Free Software Foundation
+   in version 1.24 of Bison.  */
 
 #ifndef alloca
 #ifdef __GNUC__
 
 #ifndef alloca
 #ifdef __GNUC__
@@ -1641,7 +1645,7 @@ extern "C" {
 void *alloca (unsigned int);
 };
 #else /* not __cplusplus */
 void *alloca (unsigned int);
 };
 #else /* not __cplusplus */
-void *alloca (unsigned int);
+void *alloca ();
 #endif /* not __cplusplus */
 #endif /* __hpux */
 #endif /* not _AIX */
 #endif /* not __cplusplus */
 #endif /* __hpux */
 #endif /* not _AIX */
@@ -1693,10 +1697,18 @@ while (0)
 
 #ifdef YYPURE
 #ifdef YYLSP_NEEDED
 
 #ifdef YYPURE
 #ifdef YYLSP_NEEDED
+#ifdef YYLEX_PARAM
+#define YYLEX          yylex(&yylval, &yylloc, YYLEX_PARAM)
+#else
 #define YYLEX          yylex(&yylval, &yylloc)
 #define YYLEX          yylex(&yylval, &yylloc)
+#endif
+#else /* not YYLSP_NEEDED */
+#ifdef YYLEX_PARAM
+#define YYLEX          yylex(&yylval, YYLEX_PARAM)
 #else
 #define YYLEX          yylex(&yylval)
 #endif
 #else
 #define YYLEX          yylex(&yylval)
 #endif
+#endif /* not YYLSP_NEEDED */
 #endif
 
 /* If nonreentrant, generate the variables here */
 #endif
 
 /* If nonreentrant, generate the variables here */
@@ -1744,14 +1756,14 @@ int yyparse (void);
 #endif
 \f
 #if __GNUC__ > 1               /* GNU C and GNU C++ define this.  */
 #endif
 \f
 #if __GNUC__ > 1               /* GNU C and GNU C++ define this.  */
-#define __yy_bcopy(FROM,TO,COUNT)      __builtin_memcpy(TO,FROM,COUNT)
+#define __yy_memcpy(FROM,TO,COUNT)     __builtin_memcpy(TO,FROM,COUNT)
 #else                          /* not GNU C or C++ */
 #ifndef __cplusplus
 
 /* This is the most reliable way to avoid incompatibilities
    in available built-in functions on various systems.  */
 static void
 #else                          /* not GNU C or C++ */
 #ifndef __cplusplus
 
 /* This is the most reliable way to avoid incompatibilities
    in available built-in functions on various systems.  */
 static void
-__yy_bcopy (from, to, count)
+__yy_memcpy (from, to, count)
      char *from;
      char *to;
      int count;
      char *from;
      char *to;
      int count;
@@ -1769,7 +1781,7 @@ __yy_bcopy (from, to, count)
 /* This is the most reliable way to avoid incompatibilities
    in available built-in functions on various systems.  */
 static void
 /* This is the most reliable way to avoid incompatibilities
    in available built-in functions on various systems.  */
 static void
-__yy_bcopy (char *from, char *to, int count)
+__yy_memcpy (char *from, char *to, int count)
 {
   register char *f = from;
   register char *t = to;
 {
   register char *f = from;
   register char *t = to;
@@ -1782,16 +1794,31 @@ __yy_bcopy (char *from, char *to, int count)
 #endif
 #endif
 \f
 #endif
 #endif
 \f
-#line 184 "/usr/local/gnu/lib/bison.simple"
+#line 192 "/usr/local/gnu/share/bison.simple"
+
+/* The user can define YYPARSE_PARAM as the name of an argument to be passed
+   into yyparse.  The argument should have type void *.
+   It should actually point to an object.
+   Grammar actions can access the variable by casting it
+   to the proper pointer type.  */
+
+#ifdef YYPARSE_PARAM
+#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
+#else
+#define YYPARSE_PARAM
+#define YYPARSE_PARAM_DECL
+#endif
+
 int
 int
-yyparse()
+yyparse(YYPARSE_PARAM)
+     YYPARSE_PARAM_DECL
 {
   register int yystate;
   register int yyn;
   register short *yyssp;
   register YYSTYPE *yyvsp;
   int yyerrstatus;     /*  number of tokens to shift before error messages enabled */
 {
   register int yystate;
   register int yyn;
   register short *yyssp;
   register YYSTYPE *yyvsp;
   int yyerrstatus;     /*  number of tokens to shift before error messages enabled */
-  int yychar1;         /*  lookahead token as an internal (translated) token number */
+  int yychar1 = 0;             /*  lookahead token as an internal (translated) token number */
 
   short        yyssa[YYINITDEPTH];     /*  the state stack                     */
   YYSTYPE yyvsa[YYINITDEPTH];  /*  the semantic value stack            */
 
   short        yyssa[YYINITDEPTH];     /*  the state stack                     */
   YYSTYPE yyvsa[YYINITDEPTH];  /*  the semantic value stack            */
@@ -1870,13 +1897,20 @@ yynewstate:
 #ifdef yyoverflow
       /* Each stack pointer address is followed by the size of
         the data in use in that stack, in bytes.  */
 #ifdef yyoverflow
       /* Each stack pointer address is followed by the size of
         the data in use in that stack, in bytes.  */
+#ifdef YYLSP_NEEDED
+      /* This used to be a conditional around just the two extra args,
+        but that might be undefined if yyoverflow is a macro.  */
       yyoverflow("parser stack overflow",
                 &yyss1, size * sizeof (*yyssp),
                 &yyvs1, size * sizeof (*yyvsp),
       yyoverflow("parser stack overflow",
                 &yyss1, size * sizeof (*yyssp),
                 &yyvs1, size * sizeof (*yyvsp),
-#ifdef YYLSP_NEEDED
                 &yyls1, size * sizeof (*yylsp),
                 &yyls1, size * sizeof (*yylsp),
-#endif
                 &yystacksize);
                 &yystacksize);
+#else
+      yyoverflow("parser stack overflow",
+                &yyss1, size * sizeof (*yyssp),
+                &yyvs1, size * sizeof (*yyvsp),
+                &yystacksize);
+#endif
 
       yyss = yyss1; yyvs = yyvs1;
 #ifdef YYLSP_NEEDED
 
       yyss = yyss1; yyvs = yyvs1;
 #ifdef YYLSP_NEEDED
@@ -1893,12 +1927,12 @@ yynewstate:
       if (yystacksize > YYMAXDEPTH)
        yystacksize = YYMAXDEPTH;
       yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
       if (yystacksize > YYMAXDEPTH)
        yystacksize = YYMAXDEPTH;
       yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
-      __yy_bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
+      __yy_memcpy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
       yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
       yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
-      __yy_bcopy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp));
+      __yy_memcpy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp));
 #ifdef YYLSP_NEEDED
       yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
 #ifdef YYLSP_NEEDED
       yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
-      __yy_bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
+      __yy_memcpy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
 #endif
 #endif /* no yyoverflow */
 
 #endif
 #endif /* no yyoverflow */
 
@@ -2037,7 +2071,8 @@ yydefault:
 /* Do a reduction.  yyn is the number of a rule to reduce with.  */
 yyreduce:
   yylen = yyr2[yyn];
 /* Do a reduction.  yyn is the number of a rule to reduce with.  */
 yyreduce:
   yylen = yyr2[yyn];
-  yyval = yyvsp[1-yylen]; /* implement default value of the action */
+  if (yylen > 0)
+    yyval = yyvsp[1-yylen]; /* implement default value of the action */
 
 #if YYDEBUG != 0
   if (yydebug)
 
 #if YYDEBUG != 0
   if (yydebug)
@@ -2900,7 +2935,7 @@ case 192:
     break;}
 case 193:
 #line 930 "yaccParser/hsparser.y"
     break;}
 case 193:
 #line 930 "yaccParser/hsparser.y"
-{ fixlist = Lnil;
+{ /* OLD 95/08: fixlist = Lnil; */
                  strcpy(iface_name, id_to_string(yyvsp[0].uid));
                ;
     break;}
                  strcpy(iface_name, id_to_string(yyvsp[0].uid));
                ;
     break;}
@@ -3689,10 +3724,7 @@ case 377:
     break;}
 case 378:
 #line 1508 "yaccParser/hsparser.y"
     break;}
 case 378:
 #line 1508 "yaccParser/hsparser.y"
-{ extern BOOLEAN ignoreSCC;
-                 extern BOOLEAN warnSCC;
-
-                 if (ignoreSCC) {
+{ if (ignoreSCC) {
                    if (warnSCC)
                        fprintf(stderr,
                                "\"%s\", line %d: _scc_ (`set [profiling] cost centre') ignored\n",
                    if (warnSCC)
                        fprintf(stderr,
                                "\"%s\", line %d: _scc_ (`set [profiling] cost centre') ignored\n",
@@ -3704,67 +3736,67 @@ case 378:
                ;
     break;}
 case 380:
                ;
     break;}
 case 380:
-#line 1526 "yaccParser/hsparser.y"
+#line 1523 "yaccParser/hsparser.y"
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 382:
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 382:
-#line 1530 "yaccParser/hsparser.y"
+#line 1527 "yaccParser/hsparser.y"
 { yyval.ulist = lapp(yyvsp[-1].ulist,yyvsp[0].utree); ;
     break;}
 case 383:
 { yyval.ulist = lapp(yyvsp[-1].ulist,yyvsp[0].utree); ;
     break;}
 case 383:
-#line 1531 "yaccParser/hsparser.y"
+#line 1528 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 384:
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 384:
-#line 1541 "yaccParser/hsparser.y"
+#line 1538 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 385:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 385:
-#line 1542 "yaccParser/hsparser.y"
+#line 1539 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 386:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 386:
-#line 1543 "yaccParser/hsparser.y"
+#line 1540 "yaccParser/hsparser.y"
 { yyval.utree = mklit(yyvsp[0].uliteral); ;
     break;}
 case 387:
 { yyval.utree = mklit(yyvsp[0].uliteral); ;
     break;}
 case 387:
-#line 1544 "yaccParser/hsparser.y"
+#line 1541 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 388:
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 388:
-#line 1545 "yaccParser/hsparser.y"
+#line 1542 "yaccParser/hsparser.y"
 { checkprec(yyvsp[-2].utree,yyvsp[-1].uid,FALSE); yyval.utree = mklsection(yyvsp[-2].utree,yyvsp[-1].uid); ;
     break;}
 case 389:
 { checkprec(yyvsp[-2].utree,yyvsp[-1].uid,FALSE); yyval.utree = mklsection(yyvsp[-2].utree,yyvsp[-1].uid); ;
     break;}
 case 389:
-#line 1546 "yaccParser/hsparser.y"
+#line 1543 "yaccParser/hsparser.y"
 { checkprec(yyvsp[-1].utree,yyvsp[-2].uid,TRUE);  yyval.utree = mkrsection(yyvsp[-2].uid,yyvsp[-1].utree); ;
     break;}
 case 391:
 { checkprec(yyvsp[-1].utree,yyvsp[-2].uid,TRUE);  yyval.utree = mkrsection(yyvsp[-2].uid,yyvsp[-1].utree); ;
     break;}
 case 391:
-#line 1550 "yaccParser/hsparser.y"
+#line 1547 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 392:
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 392:
-#line 1551 "yaccParser/hsparser.y"
+#line 1548 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 393:
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 393:
-#line 1552 "yaccParser/hsparser.y"
+#line 1549 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 394:
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 394:
-#line 1555 "yaccParser/hsparser.y"
+#line 1552 "yaccParser/hsparser.y"
 { checkinpat();  yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 395:
 { checkinpat();  yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 395:
-#line 1556 "yaccParser/hsparser.y"
+#line 1553 "yaccParser/hsparser.y"
 { checkinpat();  yyval.utree = mkwildp();   ;
     break;}
 case 396:
 { checkinpat();  yyval.utree = mkwildp();   ;
     break;}
 case 396:
-#line 1557 "yaccParser/hsparser.y"
+#line 1554 "yaccParser/hsparser.y"
 { checkinpat();  yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 398:
 { checkinpat();  yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 398:
-#line 1592 "yaccParser/hsparser.y"
+#line 1569 "yaccParser/hsparser.y"
 {
                  yyval.utree = mkinfixop(yyvsp[-1].uid,yyvsp[-2].utree,yyvsp[0].utree);
 
 {
                  yyval.utree = mkinfixop(yyvsp[-1].uid,yyvsp[-2].utree,yyvsp[0].utree);
 
@@ -3778,7 +3810,7 @@ case 398:
                ;
     break;}
 case 400:
                ;
     break;}
 case 400:
-#line 1607 "yaccParser/hsparser.y"
+#line 1584 "yaccParser/hsparser.y"
 {
                  yyval.utree = mkinfixop(yyvsp[-1].uid,yyvsp[-2].utree,yyvsp[0].utree);
 
 {
                  yyval.utree = mkinfixop(yyvsp[-1].uid,yyvsp[-2].utree,yyvsp[0].utree);
 
@@ -3792,119 +3824,119 @@ case 400:
                ;
     break;}
 case 401:
                ;
     break;}
 case 401:
-#line 1626 "yaccParser/hsparser.y"
+#line 1603 "yaccParser/hsparser.y"
 { yyval.utree = mknegate(yyvsp[0].utree); ;
     break;}
 case 403:
 { yyval.utree = mknegate(yyvsp[0].utree); ;
     break;}
 case 403:
-#line 1631 "yaccParser/hsparser.y"
+#line 1608 "yaccParser/hsparser.y"
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 405:
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 405:
-#line 1635 "yaccParser/hsparser.y"
+#line 1612 "yaccParser/hsparser.y"
 { yyval.utree = mknegate(yyvsp[0].utree); ;
     break;}
 case 407:
 { yyval.utree = mknegate(yyvsp[0].utree); ;
     break;}
 case 407:
-#line 1640 "yaccParser/hsparser.y"
+#line 1617 "yaccParser/hsparser.y"
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 409:
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 409:
-#line 1644 "yaccParser/hsparser.y"
+#line 1621 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 410:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 410:
-#line 1645 "yaccParser/hsparser.y"
+#line 1622 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 411:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 411:
-#line 1646 "yaccParser/hsparser.y"
+#line 1623 "yaccParser/hsparser.y"
 { yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 412:
 { yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 412:
-#line 1647 "yaccParser/hsparser.y"
+#line 1624 "yaccParser/hsparser.y"
 { yyval.utree = mklit(yyvsp[0].uliteral); ;
     break;}
 case 413:
 { yyval.utree = mklit(yyvsp[0].uliteral); ;
     break;}
 case 413:
-#line 1648 "yaccParser/hsparser.y"
+#line 1625 "yaccParser/hsparser.y"
 { yyval.utree = mkwildp(); ;
     break;}
 case 414:
 { yyval.utree = mkwildp(); ;
     break;}
 case 414:
-#line 1649 "yaccParser/hsparser.y"
+#line 1626 "yaccParser/hsparser.y"
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 415:
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 415:
-#line 1650 "yaccParser/hsparser.y"
+#line 1627 "yaccParser/hsparser.y"
 { yyval.utree = mkplusp(mkident(yyvsp[-3].uid),mkinteger(yyvsp[-1].ustring)); ;
     break;}
 case 416:
 { yyval.utree = mkplusp(mkident(yyvsp[-3].uid),mkinteger(yyvsp[-1].ustring)); ;
     break;}
 case 416:
-#line 1654 "yaccParser/hsparser.y"
+#line 1631 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 417:
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 417:
-#line 1655 "yaccParser/hsparser.y"
+#line 1632 "yaccParser/hsparser.y"
 { yyval.utree = mktuple(mklcons(yyvsp[-3].utree,yyvsp[-1].ulist)); ;
     break;}
 case 418:
 { yyval.utree = mktuple(mklcons(yyvsp[-3].utree,yyvsp[-1].ulist)); ;
     break;}
 case 418:
-#line 1656 "yaccParser/hsparser.y"
+#line 1633 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 419:
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 419:
-#line 1657 "yaccParser/hsparser.y"
+#line 1634 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 420:
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 420:
-#line 1658 "yaccParser/hsparser.y"
+#line 1635 "yaccParser/hsparser.y"
 { yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 421:
 { yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 421:
-#line 1661 "yaccParser/hsparser.y"
+#line 1638 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 422:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 422:
-#line 1662 "yaccParser/hsparser.y"
+#line 1639 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 423:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 423:
-#line 1663 "yaccParser/hsparser.y"
+#line 1640 "yaccParser/hsparser.y"
 { yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 424:
 { yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 424:
-#line 1664 "yaccParser/hsparser.y"
+#line 1641 "yaccParser/hsparser.y"
 { yyval.utree = mklit(yyvsp[0].uliteral); setstartlineno(); ;
     break;}
 case 425:
 { yyval.utree = mklit(yyvsp[0].uliteral); setstartlineno(); ;
     break;}
 case 425:
-#line 1665 "yaccParser/hsparser.y"
+#line 1642 "yaccParser/hsparser.y"
 { yyval.utree = mkwildp(); setstartlineno(); ;
     break;}
 case 426:
 { yyval.utree = mkwildp(); setstartlineno(); ;
     break;}
 case 426:
-#line 1666 "yaccParser/hsparser.y"
+#line 1643 "yaccParser/hsparser.y"
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 427:
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 427:
-#line 1667 "yaccParser/hsparser.y"
+#line 1644 "yaccParser/hsparser.y"
 { yyval.utree = mkplusp(mkident(yyvsp[-3].uid),mkinteger(yyvsp[-1].ustring)); ;
     break;}
 case 428:
 { yyval.utree = mkplusp(mkident(yyvsp[-3].uid),mkinteger(yyvsp[-1].ustring)); ;
     break;}
 case 428:
-#line 1671 "yaccParser/hsparser.y"
+#line 1648 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 429:
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 429:
-#line 1672 "yaccParser/hsparser.y"
+#line 1649 "yaccParser/hsparser.y"
 { yyval.utree = mktuple(mklcons(yyvsp[-3].utree,yyvsp[-1].ulist)); ;
     break;}
 case 430:
 { yyval.utree = mktuple(mklcons(yyvsp[-3].utree,yyvsp[-1].ulist)); ;
     break;}
 case 430:
-#line 1673 "yaccParser/hsparser.y"
+#line 1650 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 431:
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 431:
-#line 1674 "yaccParser/hsparser.y"
+#line 1651 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 432:
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 432:
-#line 1675 "yaccParser/hsparser.y"
+#line 1652 "yaccParser/hsparser.y"
 { yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 433:
 { yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 433:
-#line 1686 "yaccParser/hsparser.y"
+#line 1657 "yaccParser/hsparser.y"
 { if (ttree(yyvsp[-1].utree) == tuple)
                    yyval.utree = mktuple(mklcons(yyvsp[-3].utree, gtuplelist((struct Stuple *) yyvsp[-1].utree)));
                else
 { if (ttree(yyvsp[-1].utree) == tuple)
                    yyval.utree = mktuple(mklcons(yyvsp[-3].utree, gtuplelist((struct Stuple *) yyvsp[-1].utree)));
                else
@@ -3912,15 +3944,15 @@ case 433:
                ;
     break;}
 case 434:
                ;
     break;}
 case 434:
-#line 1692 "yaccParser/hsparser.y"
+#line 1663 "yaccParser/hsparser.y"
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 435:
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 435:
-#line 1695 "yaccParser/hsparser.y"
+#line 1671 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 436:
 { yyval.utree = mkpar(yyvsp[0].utree); ;
     break;}
 case 436:
-#line 1697 "yaccParser/hsparser.y"
+#line 1673 "yaccParser/hsparser.y"
 { if (ttree(yyvsp[0].utree) == tuple)
                    yyval.utree = mktuple(mklcons(yyvsp[-2].utree, gtuplelist((struct Stuple *) yyvsp[0].utree)));
                else
 { if (ttree(yyvsp[0].utree) == tuple)
                    yyval.utree = mktuple(mklcons(yyvsp[-2].utree, gtuplelist((struct Stuple *) yyvsp[0].utree)));
                else
@@ -3928,260 +3960,262 @@ case 436:
                ;
     break;}
 case 437:
                ;
     break;}
 case 437:
-#line 1706 "yaccParser/hsparser.y"
+#line 1682 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 438:
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 438:
-#line 1707 "yaccParser/hsparser.y"
+#line 1683 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 439:
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 439:
-#line 1711 "yaccParser/hsparser.y"
+#line 1687 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 440:
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 440:
-#line 1712 "yaccParser/hsparser.y"
+#line 1688 "yaccParser/hsparser.y"
 { yyval.ulist = mklcons(yyvsp[-2].utree, yyvsp[0].ulist); ;
     break;}
 case 441:
 { yyval.ulist = mklcons(yyvsp[-2].utree, yyvsp[0].ulist); ;
     break;}
 case 441:
-#line 1727 "yaccParser/hsparser.y"
+#line 1703 "yaccParser/hsparser.y"
 {yyval.utree = mkeenum(yyvsp[-5].utree,lsing(yyvsp[-3].utree),yyvsp[-1].ulist);;
     break;}
 case 442:
 {yyval.utree = mkeenum(yyvsp[-5].utree,lsing(yyvsp[-3].utree),yyvsp[-1].ulist);;
     break;}
 case 442:
-#line 1728 "yaccParser/hsparser.y"
+#line 1704 "yaccParser/hsparser.y"
 { yyval.utree = mkeenum(yyvsp[-3].utree,Lnil,yyvsp[-1].ulist); ;
     break;}
 case 443:
 { yyval.utree = mkeenum(yyvsp[-3].utree,Lnil,yyvsp[-1].ulist); ;
     break;}
 case 443:
-#line 1731 "yaccParser/hsparser.y"
+#line 1707 "yaccParser/hsparser.y"
 { yyval.utree = mkcomprh(yyvsp[-3].utree,yyvsp[-1].ulist); ;
     break;}
 case 444:
 { yyval.utree = mkcomprh(yyvsp[-3].utree,yyvsp[-1].ulist); ;
     break;}
 case 444:
-#line 1734 "yaccParser/hsparser.y"
+#line 1710 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 445:
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 445:
-#line 1735 "yaccParser/hsparser.y"
+#line 1711 "yaccParser/hsparser.y"
 { yyval.ulist = lapp(yyvsp[-2].ulist,yyvsp[0].utree); ;
     break;}
 case 446:
 { yyval.ulist = lapp(yyvsp[-2].ulist,yyvsp[0].utree); ;
     break;}
 case 446:
-#line 1738 "yaccParser/hsparser.y"
+#line 1714 "yaccParser/hsparser.y"
 { inpat = TRUE; ;
     break;}
 case 447:
 { inpat = TRUE; ;
     break;}
 case 447:
-#line 1738 "yaccParser/hsparser.y"
+#line 1714 "yaccParser/hsparser.y"
 { inpat = FALSE; ;
     break;}
 case 448:
 { inpat = FALSE; ;
     break;}
 case 448:
-#line 1739 "yaccParser/hsparser.y"
-{ if (yyvsp[0].utree == NULL)
+#line 1715 "yaccParser/hsparser.y"
+{ if (yyvsp[0].utree == NULL) {
+                   patternOrExpr(/*wanted:*/ LEGIT_EXPR,yyvsp[-2].utree);
                    yyval.utree = mkguard(yyvsp[-2].utree);
                    yyval.utree = mkguard(yyvsp[-2].utree);
-                 else
-                   {
-                     checkpatt(yyvsp[-2].utree);
-                     if(ttree(yyvsp[0].utree)==def)
+                 } else {
+                   patternOrExpr(/*wanted:*/ LEGIT_PATT,yyvsp[-2].utree);
+                   yyval.utree = mkqual(yyvsp[-2].utree,yyvsp[0].utree);
+/* OLD: WDP 95/08
+                     if(ttree($4)==def)
                        {
                          tree prevpatt_save = PREVPATT;
                        {
                          tree prevpatt_save = PREVPATT;
-                         PREVPATT = yyvsp[-2].utree;
-                         yyval.utree = mkdef((tree) mkpbind(lsing(createpat(lsing(mktruecase(ggdef((struct Sdef *) yyvsp[0].utree))),mknullbind())),hsplineno));
+                         PREVPATT = $2;
+                         $$ = mkdef((tree) mkpbind(lsing(createpat(lsing(mktruecase(ggdef((struct Sdef *) $4))),mknullbind())),hsplineno));
                          PREVPATT = prevpatt_save;
                        }
                      else
                          PREVPATT = prevpatt_save;
                        }
                      else
-                       yyval.utree = mkqual(yyvsp[-2].utree,yyvsp[0].utree);
-                   }
+*/
+                 }
                ;
     break;}
 case 449:
                ;
     break;}
 case 449:
-#line 1757 "yaccParser/hsparser.y"
+#line 1735 "yaccParser/hsparser.y"
 { yyval.utree = yyvsp[0].utree; ;
     break;}
 case 450:
 { yyval.utree = yyvsp[0].utree; ;
     break;}
 case 450:
-#line 1758 "yaccParser/hsparser.y"
+#line 1736 "yaccParser/hsparser.y"
 { yyval.utree = NULL; ;
     break;}
 case 451:
 { yyval.utree = NULL; ;
     break;}
 case 451:
-#line 1761 "yaccParser/hsparser.y"
+#line 1739 "yaccParser/hsparser.y"
 { yyval.ulist = yyvsp[0].ulist; ;
     break;}
 case 452:
 { yyval.ulist = yyvsp[0].ulist; ;
     break;}
 case 452:
-#line 1762 "yaccParser/hsparser.y"
+#line 1740 "yaccParser/hsparser.y"
 { yyval.ulist = lconc(yyvsp[-2].ulist,yyvsp[0].ulist); ;
     break;}
 case 453:
 { yyval.ulist = lconc(yyvsp[-2].ulist,yyvsp[0].ulist); ;
     break;}
 case 453:
-#line 1766 "yaccParser/hsparser.y"
+#line 1744 "yaccParser/hsparser.y"
 { PREVPATT = yyvsp[0].utree; ;
     break;}
 case 454:
 { PREVPATT = yyvsp[0].utree; ;
     break;}
 case 454:
-#line 1768 "yaccParser/hsparser.y"
+#line 1746 "yaccParser/hsparser.y"
 { yyval.ulist = yyvsp[0].ulist;
                  PREVPATT = NULL;
                ;
     break;}
 case 455:
 { yyval.ulist = yyvsp[0].ulist;
                  PREVPATT = NULL;
                ;
     break;}
 case 455:
-#line 1771 "yaccParser/hsparser.y"
+#line 1749 "yaccParser/hsparser.y"
 { yyval.ulist = Lnil; ;
     break;}
 case 456:
 { yyval.ulist = Lnil; ;
     break;}
 case 456:
-#line 1774 "yaccParser/hsparser.y"
+#line 1752 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(createpat(yyvsp[-1].ulist, yyvsp[0].ubinding)); ;
     break;}
 case 457:
 { yyval.ulist = lsing(createpat(yyvsp[-1].ulist, yyvsp[0].ubinding)); ;
     break;}
 case 457:
-#line 1775 "yaccParser/hsparser.y"
+#line 1753 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(createpat(lsing(mktruecase(yyvsp[-1].utree)), yyvsp[0].ubinding)); ;
     break;}
 case 458:
 { yyval.ulist = lsing(createpat(lsing(mktruecase(yyvsp[-1].utree)), yyvsp[0].ubinding)); ;
     break;}
 case 458:
-#line 1778 "yaccParser/hsparser.y"
+#line 1756 "yaccParser/hsparser.y"
 { yyval.ulist = mklcons(ldub(yyvsp[-3].utree,yyvsp[-1].utree),yyvsp[0].ulist);  ;
     break;}
 case 459:
 { yyval.ulist = mklcons(ldub(yyvsp[-3].utree,yyvsp[-1].utree),yyvsp[0].ulist);  ;
     break;}
 case 459:
-#line 1779 "yaccParser/hsparser.y"
+#line 1757 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(ldub(yyvsp[-2].utree,yyvsp[0].utree)); ;
     break;}
 case 460:
 { yyval.ulist = lsing(ldub(yyvsp[-2].utree,yyvsp[0].utree)); ;
     break;}
 case 460:
-#line 1782 "yaccParser/hsparser.y"
+#line 1760 "yaccParser/hsparser.y"
 { yyval.ulist = Lnil; ;
     break;}
 case 461:
 { yyval.ulist = Lnil; ;
     break;}
 case 461:
-#line 1783 "yaccParser/hsparser.y"
+#line 1761 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 462:
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 462:
-#line 1786 "yaccParser/hsparser.y"
+#line 1764 "yaccParser/hsparser.y"
 { yyval.ulist = mklcons(yyvsp[-2].utree, yyvsp[0].ulist); ;
     break;}
 case 463:
 { yyval.ulist = mklcons(yyvsp[-2].utree, yyvsp[0].ulist); ;
     break;}
 case 463:
-#line 1787 "yaccParser/hsparser.y"
+#line 1765 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 465:
 { yyval.ulist = lsing(yyvsp[0].utree); ;
     break;}
 case 465:
-#line 1792 "yaccParser/hsparser.y"
+#line 1770 "yaccParser/hsparser.y"
 { yyval.utree = mkinfixop(yyvsp[-1].uid,yyvsp[-2].utree,yyvsp[0].utree); precparse(yyval.utree); ;
     break;}
 case 468:
 { yyval.utree = mkinfixop(yyvsp[-1].uid,yyvsp[-2].utree,yyvsp[0].utree); precparse(yyval.utree); ;
     break;}
 case 468:
-#line 1797 "yaccParser/hsparser.y"
+#line 1775 "yaccParser/hsparser.y"
 { yyval.utree = mklit(mkinteger(ineg(yyvsp[0].ustring))); ;
     break;}
 case 469:
 { yyval.utree = mklit(mkinteger(ineg(yyvsp[0].ustring))); ;
     break;}
 case 469:
-#line 1798 "yaccParser/hsparser.y"
+#line 1776 "yaccParser/hsparser.y"
 { yyval.utree = mklit(mkfloatr(ineg(yyvsp[0].ustring))); ;
     break;}
 case 470:
 { yyval.utree = mklit(mkfloatr(ineg(yyvsp[0].ustring))); ;
     break;}
 case 470:
-#line 1801 "yaccParser/hsparser.y"
+#line 1779 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 471:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 471:
-#line 1802 "yaccParser/hsparser.y"
+#line 1780 "yaccParser/hsparser.y"
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 472:
 { yyval.utree = mkap(yyvsp[-1].utree,yyvsp[0].utree); ;
     break;}
 case 472:
-#line 1805 "yaccParser/hsparser.y"
+#line 1783 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 474:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 474:
-#line 1809 "yaccParser/hsparser.y"
+#line 1787 "yaccParser/hsparser.y"
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 475:
 { yyval.utree = mkident(yyvsp[0].uid); ;
     break;}
 case 475:
-#line 1810 "yaccParser/hsparser.y"
+#line 1788 "yaccParser/hsparser.y"
 { yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 476:
 { yyval.utree = mkas(yyvsp[-2].uid,yyvsp[0].utree); ;
     break;}
 case 476:
-#line 1811 "yaccParser/hsparser.y"
+#line 1789 "yaccParser/hsparser.y"
 { yyval.utree = mklit(yyvsp[0].uliteral); ;
     break;}
 case 477:
 { yyval.utree = mklit(yyvsp[0].uliteral); ;
     break;}
 case 477:
-#line 1812 "yaccParser/hsparser.y"
+#line 1790 "yaccParser/hsparser.y"
 { yyval.utree = mkwildp(); ;
     break;}
 case 478:
 { yyval.utree = mkwildp(); ;
     break;}
 case 478:
-#line 1813 "yaccParser/hsparser.y"
+#line 1791 "yaccParser/hsparser.y"
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 479:
 { yyval.utree = mktuple(Lnil); ;
     break;}
 case 479:
-#line 1814 "yaccParser/hsparser.y"
+#line 1792 "yaccParser/hsparser.y"
 { yyval.utree = mkplusp(mkident(yyvsp[-3].uid),mkinteger(yyvsp[-1].ustring)); ;
     break;}
 case 480:
 { yyval.utree = mkplusp(mkident(yyvsp[-3].uid),mkinteger(yyvsp[-1].ustring)); ;
     break;}
 case 480:
-#line 1818 "yaccParser/hsparser.y"
+#line 1796 "yaccParser/hsparser.y"
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 481:
 { yyval.utree = mkpar(yyvsp[-1].utree); ;
     break;}
 case 481:
-#line 1819 "yaccParser/hsparser.y"
+#line 1797 "yaccParser/hsparser.y"
 { yyval.utree = mktuple(mklcons(yyvsp[-3].utree,yyvsp[-1].ulist)); ;
     break;}
 case 482:
 { yyval.utree = mktuple(mklcons(yyvsp[-3].utree,yyvsp[-1].ulist)); ;
     break;}
 case 482:
-#line 1820 "yaccParser/hsparser.y"
+#line 1798 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 483:
 { yyval.utree = mkllist(yyvsp[-1].ulist); ;
     break;}
 case 483:
-#line 1821 "yaccParser/hsparser.y"
+#line 1799 "yaccParser/hsparser.y"
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 484:
 { yyval.utree = mkllist(Lnil); ;
     break;}
 case 484:
-#line 1822 "yaccParser/hsparser.y"
+#line 1800 "yaccParser/hsparser.y"
 { yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 485:
 { yyval.utree = mklazyp(yyvsp[0].utree); ;
     break;}
 case 485:
-#line 1826 "yaccParser/hsparser.y"
+#line 1804 "yaccParser/hsparser.y"
 { yyval.uliteral = mkinteger(yyvsp[0].ustring); ;
     break;}
 case 486:
 { yyval.uliteral = mkinteger(yyvsp[0].ustring); ;
     break;}
 case 486:
-#line 1827 "yaccParser/hsparser.y"
+#line 1805 "yaccParser/hsparser.y"
 { yyval.uliteral = mkfloatr(yyvsp[0].ustring); ;
     break;}
 case 487:
 { yyval.uliteral = mkfloatr(yyvsp[0].ustring); ;
     break;}
 case 487:
-#line 1828 "yaccParser/hsparser.y"
+#line 1806 "yaccParser/hsparser.y"
 { yyval.uliteral = mkcharr(yyvsp[0].uhstring); ;
     break;}
 case 488:
 { yyval.uliteral = mkcharr(yyvsp[0].uhstring); ;
     break;}
 case 488:
-#line 1829 "yaccParser/hsparser.y"
+#line 1807 "yaccParser/hsparser.y"
 { yyval.uliteral = mkstring(yyvsp[0].uhstring); ;
     break;}
 case 489:
 { yyval.uliteral = mkstring(yyvsp[0].uhstring); ;
     break;}
 case 489:
-#line 1830 "yaccParser/hsparser.y"
+#line 1808 "yaccParser/hsparser.y"
 { yyval.uliteral = mkcharprim(yyvsp[0].uhstring); ;
     break;}
 case 490:
 { yyval.uliteral = mkcharprim(yyvsp[0].uhstring); ;
     break;}
 case 490:
-#line 1831 "yaccParser/hsparser.y"
+#line 1809 "yaccParser/hsparser.y"
 { yyval.uliteral = mkstringprim(yyvsp[0].uhstring); ;
     break;}
 case 491:
 { yyval.uliteral = mkstringprim(yyvsp[0].uhstring); ;
     break;}
 case 491:
-#line 1832 "yaccParser/hsparser.y"
+#line 1810 "yaccParser/hsparser.y"
 { yyval.uliteral = mkintprim(yyvsp[0].ustring); ;
     break;}
 case 492:
 { yyval.uliteral = mkintprim(yyvsp[0].ustring); ;
     break;}
 case 492:
-#line 1833 "yaccParser/hsparser.y"
+#line 1811 "yaccParser/hsparser.y"
 { yyval.uliteral = mkfloatprim(yyvsp[0].ustring); ;
     break;}
 case 493:
 { yyval.uliteral = mkfloatprim(yyvsp[0].ustring); ;
     break;}
 case 493:
-#line 1834 "yaccParser/hsparser.y"
+#line 1812 "yaccParser/hsparser.y"
 { yyval.uliteral = mkdoubleprim(yyvsp[0].ustring); ;
     break;}
 case 494:
 { yyval.uliteral = mkdoubleprim(yyvsp[0].ustring); ;
     break;}
 case 494:
-#line 1835 "yaccParser/hsparser.y"
+#line 1813 "yaccParser/hsparser.y"
 { yyval.uliteral = mkclitlit(yyvsp[0].ustring, ""); ;
     break;}
 case 495:
 { yyval.uliteral = mkclitlit(yyvsp[0].ustring, ""); ;
     break;}
 case 495:
-#line 1836 "yaccParser/hsparser.y"
+#line 1814 "yaccParser/hsparser.y"
 { yyval.uliteral = mkclitlit(yyvsp[-2].ustring, yyvsp[0].uid); ;
     break;}
 case 496:
 { yyval.uliteral = mkclitlit(yyvsp[-2].ustring, yyvsp[0].uid); ;
     break;}
 case 496:
-#line 1837 "yaccParser/hsparser.y"
+#line 1815 "yaccParser/hsparser.y"
 { yyval.uliteral = mknorepi(yyvsp[0].ustring); ;
     break;}
 case 497:
 { yyval.uliteral = mknorepi(yyvsp[0].ustring); ;
     break;}
 case 497:
-#line 1838 "yaccParser/hsparser.y"
+#line 1816 "yaccParser/hsparser.y"
 { yyval.uliteral = mknorepr(yyvsp[-1].ustring, yyvsp[0].ustring); ;
     break;}
 case 498:
 { yyval.uliteral = mknorepr(yyvsp[-1].ustring, yyvsp[0].ustring); ;
     break;}
 case 498:
-#line 1839 "yaccParser/hsparser.y"
+#line 1817 "yaccParser/hsparser.y"
 { yyval.uliteral = mknoreps(yyvsp[0].uhstring); ;
     break;}
 case 499:
 { yyval.uliteral = mknoreps(yyvsp[0].uhstring); ;
     break;}
 case 499:
-#line 1845 "yaccParser/hsparser.y"
+#line 1823 "yaccParser/hsparser.y"
 { setstartlineno(); ;
     break;}
 case 500:
 { setstartlineno(); ;
     break;}
 case 500:
-#line 1848 "yaccParser/hsparser.y"
+#line 1826 "yaccParser/hsparser.y"
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
@@ -4192,7 +4226,7 @@ case 500:
                        ;
     break;}
 case 501:
                        ;
     break;}
 case 501:
-#line 1858 "yaccParser/hsparser.y"
+#line 1836 "yaccParser/hsparser.y"
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
@@ -4203,7 +4237,7 @@ case 501:
                        ;
     break;}
 case 502:
                        ;
     break;}
 case 502:
-#line 1868 "yaccParser/hsparser.y"
+#line 1846 "yaccParser/hsparser.y"
 { setstartlineno();
 #if 1/*etags*/
 /* OUT:                          if(etags)
 { setstartlineno();
 #if 1/*etags*/
 /* OUT:                          if(etags)
@@ -4215,11 +4249,11 @@ case 502:
                        ;
     break;}
 case 503:
                        ;
     break;}
 case 503:
-#line 1879 "yaccParser/hsparser.y"
+#line 1857 "yaccParser/hsparser.y"
 { setstartlineno(); ;
     break;}
 case 504:
 { setstartlineno(); ;
     break;}
 case 504:
-#line 1882 "yaccParser/hsparser.y"
+#line 1860 "yaccParser/hsparser.y"
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
@@ -4230,11 +4264,11 @@ case 504:
                        ;
     break;}
 case 505:
                        ;
     break;}
 case 505:
-#line 1892 "yaccParser/hsparser.y"
+#line 1870 "yaccParser/hsparser.y"
 { setstartlineno(); ;
     break;}
 case 506:
 { setstartlineno(); ;
     break;}
 case 506:
-#line 1895 "yaccParser/hsparser.y"
+#line 1873 "yaccParser/hsparser.y"
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
 { setstartlineno();
                          if(etags)
 #if 1/*etags*/
@@ -4245,117 +4279,117 @@ case 506:
                        ;
     break;}
 case 507:
                        ;
     break;}
 case 507:
-#line 1905 "yaccParser/hsparser.y"
+#line 1883 "yaccParser/hsparser.y"
 { setstartlineno(); ;
     break;}
 case 508:
 { setstartlineno(); ;
     break;}
 case 508:
-#line 1908 "yaccParser/hsparser.y"
+#line 1886 "yaccParser/hsparser.y"
 { setstartlineno(); ;
     break;}
 case 509:
 { setstartlineno(); ;
     break;}
 case 509:
-#line 1911 "yaccParser/hsparser.y"
+#line 1889 "yaccParser/hsparser.y"
 { setstartlineno(); ;
     break;}
 case 515:
 { setstartlineno(); ;
     break;}
 case 515:
-#line 1926 "yaccParser/hsparser.y"
+#line 1904 "yaccParser/hsparser.y"
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 518:
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 518:
-#line 1932 "yaccParser/hsparser.y"
+#line 1910 "yaccParser/hsparser.y"
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 520:
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 520:
-#line 1936 "yaccParser/hsparser.y"
+#line 1914 "yaccParser/hsparser.y"
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 524:
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 524:
-#line 1944 "yaccParser/hsparser.y"
+#line 1922 "yaccParser/hsparser.y"
 { yyval.uid = install_literal("-"); ;
     break;}
 case 525:
 { yyval.uid = install_literal("-"); ;
     break;}
 case 525:
-#line 1947 "yaccParser/hsparser.y"
+#line 1925 "yaccParser/hsparser.y"
 { yyval.uid = install_literal("+"); ;
     break;}
 case 527:
 { yyval.uid = install_literal("+"); ;
     break;}
 case 527:
-#line 1951 "yaccParser/hsparser.y"
+#line 1929 "yaccParser/hsparser.y"
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 528:
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 528:
-#line 1954 "yaccParser/hsparser.y"
+#line 1932 "yaccParser/hsparser.y"
 { setstartlineno(); yyval.uid = yyvsp[0].uid; ;
     break;}
 case 529:
 { setstartlineno(); yyval.uid = yyvsp[0].uid; ;
     break;}
 case 529:
-#line 1955 "yaccParser/hsparser.y"
+#line 1933 "yaccParser/hsparser.y"
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 531:
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 531:
-#line 1960 "yaccParser/hsparser.y"
+#line 1938 "yaccParser/hsparser.y"
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 532:
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 532:
-#line 1963 "yaccParser/hsparser.y"
+#line 1941 "yaccParser/hsparser.y"
 { setstartlineno(); yyval.uid = yyvsp[0].uid; ;
     break;}
 case 533:
 { setstartlineno(); yyval.uid = yyvsp[0].uid; ;
     break;}
 case 533:
-#line 1964 "yaccParser/hsparser.y"
+#line 1942 "yaccParser/hsparser.y"
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 536:
 { yyval.uid = yyvsp[-1].uid; ;
     break;}
 case 536:
-#line 1972 "yaccParser/hsparser.y"
+#line 1950 "yaccParser/hsparser.y"
 { yyval.ulist = mklcons(yyvsp[-2].uttype,lsing(yyvsp[0].uttype)); ;
     break;}
 case 537:
 { yyval.ulist = mklcons(yyvsp[-2].uttype,lsing(yyvsp[0].uttype)); ;
     break;}
 case 537:
-#line 1973 "yaccParser/hsparser.y"
+#line 1951 "yaccParser/hsparser.y"
 { yyval.ulist = mklcons(yyvsp[-2].uttype,yyvsp[0].ulist); ;
     break;}
 case 538:
 { yyval.ulist = mklcons(yyvsp[-2].uttype,yyvsp[0].ulist); ;
     break;}
 case 538:
-#line 1977 "yaccParser/hsparser.y"
+#line 1955 "yaccParser/hsparser.y"
 { yyval.ulist = lsing(yyvsp[0].uttype); ;
     break;}
 case 539:
 { yyval.ulist = lsing(yyvsp[0].uttype); ;
     break;}
 case 539:
-#line 1978 "yaccParser/hsparser.y"
+#line 1956 "yaccParser/hsparser.y"
 { yyval.ulist = lapp(yyvsp[-1].ulist, yyvsp[0].uttype); ;
     break;}
 case 540:
 { yyval.ulist = lapp(yyvsp[-1].ulist, yyvsp[0].uttype); ;
     break;}
 case 540:
-#line 1981 "yaccParser/hsparser.y"
+#line 1959 "yaccParser/hsparser.y"
 { yyval.uttype = mknamedtvar(yyvsp[0].uid); ;
     break;}
 case 544:
 { yyval.uttype = mknamedtvar(yyvsp[0].uid); ;
     break;}
 case 544:
-#line 1997 "yaccParser/hsparser.y"
+#line 1975 "yaccParser/hsparser.y"
 { hsincindent(); ;
     break;}
 case 545:
 { hsincindent(); ;
     break;}
 case 545:
-#line 1999 "yaccParser/hsparser.y"
+#line 1977 "yaccParser/hsparser.y"
 { hssetindent(); ;
     break;}
 case 546:
 { hssetindent(); ;
     break;}
 case 546:
-#line 2002 "yaccParser/hsparser.y"
+#line 1980 "yaccParser/hsparser.y"
 { hsindentoff(); ;
     break;}
 case 547:
 { hsindentoff(); ;
     break;}
 case 547:
-#line 2007 "yaccParser/hsparser.y"
+#line 1985 "yaccParser/hsparser.y"
 {
                  FN = NULL; SAMEFN = 0; PREVPATT = NULL;
                  hsendindent();
                ;
     break;}
 case 548:
 {
                  FN = NULL; SAMEFN = 0; PREVPATT = NULL;
                  hsendindent();
                ;
     break;}
 case 548:
-#line 2013 "yaccParser/hsparser.y"
+#line 1991 "yaccParser/hsparser.y"
 { expect_ccurly = 1; ;
     break;}
 case 549:
 { expect_ccurly = 1; ;
     break;}
 case 549:
-#line 2013 "yaccParser/hsparser.y"
+#line 1991 "yaccParser/hsparser.y"
 { expect_ccurly = 0; ;
     break;}
 case 550:
 { expect_ccurly = 0; ;
     break;}
 case 550:
-#line 2018 "yaccParser/hsparser.y"
+#line 1996 "yaccParser/hsparser.y"
 {
                  FN = NULL; SAMEFN = 0; PREVPATT = NULL;
                  hsendindent();
                ;
     break;}
 case 551:
 {
                  FN = NULL; SAMEFN = 0; PREVPATT = NULL;
                  hsendindent();
                ;
     break;}
 case 551:
-#line 2023 "yaccParser/hsparser.y"
+#line 2001 "yaccParser/hsparser.y"
 {
                  yyerrok;
                  FN = NULL; SAMEFN = 0; PREVPATT = NULL;
 {
                  yyerrok;
                  FN = NULL; SAMEFN = 0; PREVPATT = NULL;
@@ -4364,7 +4398,7 @@ case 551:
     break;}
 }
    /* the action file gets copied in in place of this dollarsign */
     break;}
 }
    /* the action file gets copied in in place of this dollarsign */
-#line 457 "/usr/local/gnu/lib/bison.simple"
+#line 487 "/usr/local/gnu/share/bison.simple"
 \f
   yyvsp -= yylen;
   yyssp -= yylen;
 \f
   yyvsp -= yylen;
   yyssp -= yylen;
@@ -4560,7 +4594,7 @@ yyerrhandle:
   yystate = yyn;
   goto yynewstate;
 }
   yystate = yyn;
   goto yynewstate;
 }
-#line 2030 "yaccParser/hsparser.y"
+#line 2008 "yaccParser/hsparser.y"
 
 
 /**********************************************************************
 
 
 /**********************************************************************
@@ -4596,13 +4630,13 @@ hsperror(s)
     yyerror(s);
 }
 
     yyerror(s);
 }
 
+extern char *yytext;
+extern int yyleng;
+
 void
 yyerror(s)
   char *s;
 {
 void
 yyerror(s)
   char *s;
 {
-    extern char *yytext;
-    extern int yyleng;
-
     /* We want to be able to distinguish 'error'-raised yyerrors
        from yyerrors explicitly coded by the parser hacker.
     */
     /* We want to be able to distinguish 'error'-raised yyerrors
        from yyerrors explicitly coded by the parser hacker.
     */
index 73ce725..9a3c8cb 100644 (file)
@@ -46,7 +46,7 @@ list *Rltl(t)
 
 /************** lnil ******************/
 
 
 /************** lnil ******************/
 
-list mklnil()
+list mklnil(void)
 {
        register struct Slnil *pp =
                (struct Slnil *) malloc(sizeof(struct Slnil));
 {
        register struct Slnil *pp =
                (struct Slnil *) malloc(sizeof(struct Slnil));
index 2eefe33..cbd9014 100644 (file)
@@ -19,6 +19,7 @@ typedef enum {
 typedef struct { Tlist tag; } *list;
 
 #ifdef __GNUC__
 typedef struct { Tlist tag; } *list;
 
 #ifdef __GNUC__
+Tlist tlist(list t);
 extern __inline__ Tlist tlist(list t)
 {
        return(t -> tag);
 extern __inline__ Tlist tlist(list t)
 {
        return(t -> tag);
@@ -40,6 +41,8 @@ struct Slnil {
 extern list mklcons PROTO((VOID_STAR, list));
 #ifdef __GNUC__
 
 extern list mklcons PROTO((VOID_STAR, list));
 #ifdef __GNUC__
 
+VOID_STAR *Rlhd PROTO((struct Slcons *));
+
 extern __inline__ VOID_STAR *Rlhd(struct Slcons *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ VOID_STAR *Rlhd(struct Slcons *t)
 {
 #ifdef UGEN_DEBUG
@@ -55,6 +58,8 @@ extern VOID_STAR *Rlhd PROTO((struct Slcons *));
 #define lhd(xyzxyz) (*Rlhd((struct Slcons *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define lhd(xyzxyz) (*Rlhd((struct Slcons *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rltl PROTO((struct Slcons *));
+
 extern __inline__ list *Rltl(struct Slcons *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rltl(struct Slcons *t)
 {
 #ifdef UGEN_DEBUG
@@ -69,6 +74,6 @@ extern list *Rltl PROTO((struct Slcons *));
 
 #define ltl(xyzxyz) (*Rltl((struct Slcons *) (xyzxyz)))
 
 
 #define ltl(xyzxyz) (*Rltl((struct Slcons *) (xyzxyz)))
 
-extern list mklnil PROTO(());
+extern list mklnil PROTO((void));
 
 #endif
 
 #endif
index b46d7f5..bf3599f 100644 (file)
@@ -30,6 +30,7 @@ typedef enum {
 typedef struct { Tliteral tag; } *literal;
 
 #ifdef __GNUC__
 typedef struct { Tliteral tag; } *literal;
 
 #ifdef __GNUC__
+Tliteral tliteral(literal t);
 extern __inline__ Tliteral tliteral(literal t)
 {
        return(t -> tag);
 extern __inline__ Tliteral tliteral(literal t)
 {
        return(t -> tag);
@@ -108,6 +109,8 @@ struct Snoreps {
 extern literal mkinteger PROTO((stringId));
 #ifdef __GNUC__
 
 extern literal mkinteger PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rginteger PROTO((struct Sinteger *));
+
 extern __inline__ stringId *Rginteger(struct Sinteger *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rginteger(struct Sinteger *t)
 {
 #ifdef UGEN_DEBUG
@@ -125,6 +128,8 @@ extern stringId *Rginteger PROTO((struct Sinteger *));
 extern literal mkintprim PROTO((stringId));
 #ifdef __GNUC__
 
 extern literal mkintprim PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgintprim PROTO((struct Sintprim *));
+
 extern __inline__ stringId *Rgintprim(struct Sintprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgintprim(struct Sintprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -142,6 +147,8 @@ extern stringId *Rgintprim PROTO((struct Sintprim *));
 extern literal mkfloatr PROTO((stringId));
 #ifdef __GNUC__
 
 extern literal mkfloatr PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgfloatr PROTO((struct Sfloatr *));
+
 extern __inline__ stringId *Rgfloatr(struct Sfloatr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgfloatr(struct Sfloatr *t)
 {
 #ifdef UGEN_DEBUG
@@ -159,6 +166,8 @@ extern stringId *Rgfloatr PROTO((struct Sfloatr *));
 extern literal mkdoubleprim PROTO((stringId));
 #ifdef __GNUC__
 
 extern literal mkdoubleprim PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgdoubleprim PROTO((struct Sdoubleprim *));
+
 extern __inline__ stringId *Rgdoubleprim(struct Sdoubleprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgdoubleprim(struct Sdoubleprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -176,6 +185,8 @@ extern stringId *Rgdoubleprim PROTO((struct Sdoubleprim *));
 extern literal mkfloatprim PROTO((stringId));
 #ifdef __GNUC__
 
 extern literal mkfloatprim PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgfloatprim PROTO((struct Sfloatprim *));
+
 extern __inline__ stringId *Rgfloatprim(struct Sfloatprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgfloatprim(struct Sfloatprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -193,6 +204,8 @@ extern stringId *Rgfloatprim PROTO((struct Sfloatprim *));
 extern literal mkcharr PROTO((hstring));
 #ifdef __GNUC__
 
 extern literal mkcharr PROTO((hstring));
 #ifdef __GNUC__
 
+hstring *Rgchar PROTO((struct Scharr *));
+
 extern __inline__ hstring *Rgchar(struct Scharr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgchar(struct Scharr *t)
 {
 #ifdef UGEN_DEBUG
@@ -210,6 +223,8 @@ extern hstring *Rgchar PROTO((struct Scharr *));
 extern literal mkcharprim PROTO((hstring));
 #ifdef __GNUC__
 
 extern literal mkcharprim PROTO((hstring));
 #ifdef __GNUC__
 
+hstring *Rgcharprim PROTO((struct Scharprim *));
+
 extern __inline__ hstring *Rgcharprim(struct Scharprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgcharprim(struct Scharprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -227,6 +242,8 @@ extern hstring *Rgcharprim PROTO((struct Scharprim *));
 extern literal mkstring PROTO((hstring));
 #ifdef __GNUC__
 
 extern literal mkstring PROTO((hstring));
 #ifdef __GNUC__
 
+hstring *Rgstring PROTO((struct Sstring *));
+
 extern __inline__ hstring *Rgstring(struct Sstring *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgstring(struct Sstring *t)
 {
 #ifdef UGEN_DEBUG
@@ -244,6 +261,8 @@ extern hstring *Rgstring PROTO((struct Sstring *));
 extern literal mkstringprim PROTO((hstring));
 #ifdef __GNUC__
 
 extern literal mkstringprim PROTO((hstring));
 #ifdef __GNUC__
 
+hstring *Rgstringprim PROTO((struct Sstringprim *));
+
 extern __inline__ hstring *Rgstringprim(struct Sstringprim *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgstringprim(struct Sstringprim *t)
 {
 #ifdef UGEN_DEBUG
@@ -261,6 +280,8 @@ extern hstring *Rgstringprim PROTO((struct Sstringprim *));
 extern literal mkclitlit PROTO((stringId, stringId));
 #ifdef __GNUC__
 
 extern literal mkclitlit PROTO((stringId, stringId));
 #ifdef __GNUC__
 
+stringId *Rgclitlit PROTO((struct Sclitlit *));
+
 extern __inline__ stringId *Rgclitlit(struct Sclitlit *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgclitlit(struct Sclitlit *t)
 {
 #ifdef UGEN_DEBUG
@@ -276,6 +297,8 @@ extern stringId *Rgclitlit PROTO((struct Sclitlit *));
 #define gclitlit(xyzxyz) (*Rgclitlit((struct Sclitlit *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gclitlit(xyzxyz) (*Rgclitlit((struct Sclitlit *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgclitlit_kind PROTO((struct Sclitlit *));
+
 extern __inline__ stringId *Rgclitlit_kind(struct Sclitlit *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgclitlit_kind(struct Sclitlit *t)
 {
 #ifdef UGEN_DEBUG
@@ -293,6 +316,8 @@ extern stringId *Rgclitlit_kind PROTO((struct Sclitlit *));
 extern literal mknorepi PROTO((stringId));
 #ifdef __GNUC__
 
 extern literal mknorepi PROTO((stringId));
 #ifdef __GNUC__
 
+stringId *Rgnorepi PROTO((struct Snorepi *));
+
 extern __inline__ stringId *Rgnorepi(struct Snorepi *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgnorepi(struct Snorepi *t)
 {
 #ifdef UGEN_DEBUG
@@ -310,6 +335,8 @@ extern stringId *Rgnorepi PROTO((struct Snorepi *));
 extern literal mknorepr PROTO((stringId, stringId));
 #ifdef __GNUC__
 
 extern literal mknorepr PROTO((stringId, stringId));
 #ifdef __GNUC__
 
+stringId *Rgnorepr_n PROTO((struct Snorepr *));
+
 extern __inline__ stringId *Rgnorepr_n(struct Snorepr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgnorepr_n(struct Snorepr *t)
 {
 #ifdef UGEN_DEBUG
@@ -325,6 +352,8 @@ extern stringId *Rgnorepr_n PROTO((struct Snorepr *));
 #define gnorepr_n(xyzxyz) (*Rgnorepr_n((struct Snorepr *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gnorepr_n(xyzxyz) (*Rgnorepr_n((struct Snorepr *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgnorepr_d PROTO((struct Snorepr *));
+
 extern __inline__ stringId *Rgnorepr_d(struct Snorepr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgnorepr_d(struct Snorepr *t)
 {
 #ifdef UGEN_DEBUG
@@ -342,6 +371,8 @@ extern stringId *Rgnorepr_d PROTO((struct Snorepr *));
 extern literal mknoreps PROTO((hstring));
 #ifdef __GNUC__
 
 extern literal mknoreps PROTO((hstring));
 #ifdef __GNUC__
 
+hstring *Rgnoreps PROTO((struct Snoreps *));
+
 extern __inline__ hstring *Rgnoreps(struct Snoreps *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgnoreps(struct Snoreps *t)
 {
 #ifdef UGEN_DEBUG
index 55f14ae..204979c 100644 (file)
@@ -18,6 +18,7 @@ typedef enum {
 typedef struct { Tpbinding tag; } *pbinding;
 
 #ifdef __GNUC__
 typedef struct { Tpbinding tag; } *pbinding;
 
 #ifdef __GNUC__
+Tpbinding tpbinding(pbinding t);
 extern __inline__ Tpbinding tpbinding(pbinding t)
 {
        return(t -> tag);
 extern __inline__ Tpbinding tpbinding(pbinding t)
 {
        return(t -> tag);
@@ -38,6 +39,8 @@ struct Spgrhs {
 extern pbinding mkpgrhs PROTO((tree, list, binding, stringId, long));
 #ifdef __GNUC__
 
 extern pbinding mkpgrhs PROTO((tree, list, binding, stringId, long));
 #ifdef __GNUC__
 
+tree *Rggpat PROTO((struct Spgrhs *));
+
 extern __inline__ tree *Rggpat(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rggpat(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
@@ -53,6 +56,8 @@ extern tree *Rggpat PROTO((struct Spgrhs *));
 #define ggpat(xyzxyz) (*Rggpat((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ggpat(xyzxyz) (*Rggpat((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rggdexprs PROTO((struct Spgrhs *));
+
 extern __inline__ list *Rggdexprs(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rggdexprs(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
@@ -68,6 +73,8 @@ extern list *Rggdexprs PROTO((struct Spgrhs *));
 #define ggdexprs(xyzxyz) (*Rggdexprs((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ggdexprs(xyzxyz) (*Rggdexprs((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
+binding *Rggbind PROTO((struct Spgrhs *));
+
 extern __inline__ binding *Rggbind(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rggbind(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
@@ -83,6 +90,8 @@ extern binding *Rggbind PROTO((struct Spgrhs *));
 #define ggbind(xyzxyz) (*Rggbind((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ggbind(xyzxyz) (*Rggbind((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rggfuncname PROTO((struct Spgrhs *));
+
 extern __inline__ stringId *Rggfuncname(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rggfuncname(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
@@ -98,6 +107,8 @@ extern stringId *Rggfuncname PROTO((struct Spgrhs *));
 #define ggfuncname(xyzxyz) (*Rggfuncname((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ggfuncname(xyzxyz) (*Rggfuncname((struct Spgrhs *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rggline PROTO((struct Spgrhs *));
+
 extern __inline__ long *Rggline(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rggline(struct Spgrhs *t)
 {
 #ifdef UGEN_DEBUG
index 1fa6533..43d0167 100644 (file)
@@ -454,7 +454,7 @@ literal *Rgplusi(t)
 
 /************** wildp ******************/
 
 
 /************** wildp ******************/
 
-tree mkwildp()
+tree mkwildp(void)
 {
        register struct Swildp *pp =
                (struct Swildp *) malloc(sizeof(struct Swildp));
 {
        register struct Swildp *pp =
                (struct Swildp *) malloc(sizeof(struct Swildp));
index d0c93c8..0f715d7 100644 (file)
@@ -44,6 +44,7 @@ typedef enum {
 typedef struct { Ttree tag; } *tree;
 
 #ifdef __GNUC__
 typedef struct { Ttree tag; } *tree;
 
 #ifdef __GNUC__
+Ttree ttree(tree t);
 extern __inline__ Ttree ttree(tree t)
 {
        return(t -> tag);
 extern __inline__ Ttree ttree(tree t)
 {
        return(t -> tag);
@@ -212,6 +213,8 @@ struct Snegate {
 extern tree mkhmodule PROTO((stringId, list, list, binding, long));
 #ifdef __GNUC__
 
 extern tree mkhmodule PROTO((stringId, list, list, binding, long));
 #ifdef __GNUC__
 
+stringId *Rghname PROTO((struct Shmodule *));
+
 extern __inline__ stringId *Rghname(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rghname(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
@@ -227,6 +230,8 @@ extern stringId *Rghname PROTO((struct Shmodule *));
 #define ghname(xyzxyz) (*Rghname((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ghname(xyzxyz) (*Rghname((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rghimplist PROTO((struct Shmodule *));
+
 extern __inline__ list *Rghimplist(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rghimplist(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
@@ -242,6 +247,8 @@ extern list *Rghimplist PROTO((struct Shmodule *));
 #define ghimplist(xyzxyz) (*Rghimplist((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ghimplist(xyzxyz) (*Rghimplist((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rghexplist PROTO((struct Shmodule *));
+
 extern __inline__ list *Rghexplist(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rghexplist(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
@@ -257,6 +264,8 @@ extern list *Rghexplist PROTO((struct Shmodule *));
 #define ghexplist(xyzxyz) (*Rghexplist((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ghexplist(xyzxyz) (*Rghexplist((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
+binding *Rghmodlist PROTO((struct Shmodule *));
+
 extern __inline__ binding *Rghmodlist(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rghmodlist(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
@@ -272,6 +281,8 @@ extern binding *Rghmodlist PROTO((struct Shmodule *));
 #define ghmodlist(xyzxyz) (*Rghmodlist((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define ghmodlist(xyzxyz) (*Rghmodlist((struct Shmodule *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rghmodline PROTO((struct Shmodule *));
+
 extern __inline__ long *Rghmodline(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rghmodline(struct Shmodule *t)
 {
 #ifdef UGEN_DEBUG
@@ -289,6 +300,8 @@ extern long *Rghmodline PROTO((struct Shmodule *));
 extern tree mkident PROTO((unkId));
 #ifdef __GNUC__
 
 extern tree mkident PROTO((unkId));
 #ifdef __GNUC__
 
+unkId *Rgident PROTO((struct Sident *));
+
 extern __inline__ unkId *Rgident(struct Sident *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgident(struct Sident *t)
 {
 #ifdef UGEN_DEBUG
@@ -306,6 +319,8 @@ extern unkId *Rgident PROTO((struct Sident *));
 extern tree mklit PROTO((literal));
 #ifdef __GNUC__
 
 extern tree mklit PROTO((literal));
 #ifdef __GNUC__
 
+literal *Rglit PROTO((struct Slit *));
+
 extern __inline__ literal *Rglit(struct Slit *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ literal *Rglit(struct Slit *t)
 {
 #ifdef UGEN_DEBUG
@@ -323,6 +338,8 @@ extern literal *Rglit PROTO((struct Slit *));
 extern tree mktuple PROTO((list));
 #ifdef __GNUC__
 
 extern tree mktuple PROTO((list));
 #ifdef __GNUC__
 
+list *Rgtuplelist PROTO((struct Stuple *));
+
 extern __inline__ list *Rgtuplelist(struct Stuple *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgtuplelist(struct Stuple *t)
 {
 #ifdef UGEN_DEBUG
@@ -340,6 +357,8 @@ extern list *Rgtuplelist PROTO((struct Stuple *));
 extern tree mkap PROTO((tree, tree));
 #ifdef __GNUC__
 
 extern tree mkap PROTO((tree, tree));
 #ifdef __GNUC__
 
+tree *Rgfun PROTO((struct Sap *));
+
 extern __inline__ tree *Rgfun(struct Sap *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgfun(struct Sap *t)
 {
 #ifdef UGEN_DEBUG
@@ -355,6 +374,8 @@ extern tree *Rgfun PROTO((struct Sap *));
 #define gfun(xyzxyz) (*Rgfun((struct Sap *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gfun(xyzxyz) (*Rgfun((struct Sap *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgarg PROTO((struct Sap *));
+
 extern __inline__ tree *Rgarg(struct Sap *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgarg(struct Sap *t)
 {
 #ifdef UGEN_DEBUG
@@ -372,6 +393,8 @@ extern tree *Rgarg PROTO((struct Sap *));
 extern tree mklambda PROTO((list, tree, long));
 #ifdef __GNUC__
 
 extern tree mklambda PROTO((list, tree, long));
 #ifdef __GNUC__
 
+list *Rglampats PROTO((struct Slambda *));
+
 extern __inline__ list *Rglampats(struct Slambda *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rglampats(struct Slambda *t)
 {
 #ifdef UGEN_DEBUG
@@ -387,6 +410,8 @@ extern list *Rglampats PROTO((struct Slambda *));
 #define glampats(xyzxyz) (*Rglampats((struct Slambda *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define glampats(xyzxyz) (*Rglampats((struct Slambda *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rglamexpr PROTO((struct Slambda *));
+
 extern __inline__ tree *Rglamexpr(struct Slambda *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rglamexpr(struct Slambda *t)
 {
 #ifdef UGEN_DEBUG
@@ -402,6 +427,8 @@ extern tree *Rglamexpr PROTO((struct Slambda *));
 #define glamexpr(xyzxyz) (*Rglamexpr((struct Slambda *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define glamexpr(xyzxyz) (*Rglamexpr((struct Slambda *) (xyzxyz)))
 #ifdef __GNUC__
 
+long *Rglamline PROTO((struct Slambda *));
+
 extern __inline__ long *Rglamline(struct Slambda *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ long *Rglamline(struct Slambda *t)
 {
 #ifdef UGEN_DEBUG
@@ -419,6 +446,8 @@ extern long *Rglamline PROTO((struct Slambda *));
 extern tree mklet PROTO((binding, tree));
 #ifdef __GNUC__
 
 extern tree mklet PROTO((binding, tree));
 #ifdef __GNUC__
 
+binding *Rgletvdeflist PROTO((struct Slet *));
+
 extern __inline__ binding *Rgletvdeflist(struct Slet *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ binding *Rgletvdeflist(struct Slet *t)
 {
 #ifdef UGEN_DEBUG
@@ -434,6 +463,8 @@ extern binding *Rgletvdeflist PROTO((struct Slet *));
 #define gletvdeflist(xyzxyz) (*Rgletvdeflist((struct Slet *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gletvdeflist(xyzxyz) (*Rgletvdeflist((struct Slet *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgletvexpr PROTO((struct Slet *));
+
 extern __inline__ tree *Rgletvexpr(struct Slet *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgletvexpr(struct Slet *t)
 {
 #ifdef UGEN_DEBUG
@@ -451,6 +482,8 @@ extern tree *Rgletvexpr PROTO((struct Slet *));
 extern tree mkcasee PROTO((tree, list));
 #ifdef __GNUC__
 
 extern tree mkcasee PROTO((tree, list));
 #ifdef __GNUC__
 
+tree *Rgcaseexpr PROTO((struct Scasee *));
+
 extern __inline__ tree *Rgcaseexpr(struct Scasee *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgcaseexpr(struct Scasee *t)
 {
 #ifdef UGEN_DEBUG
@@ -466,6 +499,8 @@ extern tree *Rgcaseexpr PROTO((struct Scasee *));
 #define gcaseexpr(xyzxyz) (*Rgcaseexpr((struct Scasee *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcaseexpr(xyzxyz) (*Rgcaseexpr((struct Scasee *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcasebody PROTO((struct Scasee *));
+
 extern __inline__ list *Rgcasebody(struct Scasee *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcasebody(struct Scasee *t)
 {
 #ifdef UGEN_DEBUG
@@ -483,6 +518,8 @@ extern list *Rgcasebody PROTO((struct Scasee *));
 extern tree mkife PROTO((tree, tree, tree));
 #ifdef __GNUC__
 
 extern tree mkife PROTO((tree, tree, tree));
 #ifdef __GNUC__
 
+tree *Rgifpred PROTO((struct Sife *));
+
 extern __inline__ tree *Rgifpred(struct Sife *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgifpred(struct Sife *t)
 {
 #ifdef UGEN_DEBUG
@@ -498,6 +535,8 @@ extern tree *Rgifpred PROTO((struct Sife *));
 #define gifpred(xyzxyz) (*Rgifpred((struct Sife *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gifpred(xyzxyz) (*Rgifpred((struct Sife *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgifthen PROTO((struct Sife *));
+
 extern __inline__ tree *Rgifthen(struct Sife *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgifthen(struct Sife *t)
 {
 #ifdef UGEN_DEBUG
@@ -513,6 +552,8 @@ extern tree *Rgifthen PROTO((struct Sife *));
 #define gifthen(xyzxyz) (*Rgifthen((struct Sife *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gifthen(xyzxyz) (*Rgifthen((struct Sife *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgifelse PROTO((struct Sife *));
+
 extern __inline__ tree *Rgifelse(struct Sife *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgifelse(struct Sife *t)
 {
 #ifdef UGEN_DEBUG
@@ -530,6 +571,8 @@ extern tree *Rgifelse PROTO((struct Sife *));
 extern tree mkpar PROTO((tree));
 #ifdef __GNUC__
 
 extern tree mkpar PROTO((tree));
 #ifdef __GNUC__
 
+tree *Rgpare PROTO((struct Spar *));
+
 extern __inline__ tree *Rgpare(struct Spar *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgpare(struct Spar *t)
 {
 #ifdef UGEN_DEBUG
@@ -547,6 +590,8 @@ extern tree *Rgpare PROTO((struct Spar *));
 extern tree mkas PROTO((unkId, tree));
 #ifdef __GNUC__
 
 extern tree mkas PROTO((unkId, tree));
 #ifdef __GNUC__
 
+unkId *Rgasid PROTO((struct Sas *));
+
 extern __inline__ unkId *Rgasid(struct Sas *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgasid(struct Sas *t)
 {
 #ifdef UGEN_DEBUG
@@ -562,6 +607,8 @@ extern unkId *Rgasid PROTO((struct Sas *));
 #define gasid(xyzxyz) (*Rgasid((struct Sas *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gasid(xyzxyz) (*Rgasid((struct Sas *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgase PROTO((struct Sas *));
+
 extern __inline__ tree *Rgase(struct Sas *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgase(struct Sas *t)
 {
 #ifdef UGEN_DEBUG
@@ -579,6 +626,8 @@ extern tree *Rgase PROTO((struct Sas *));
 extern tree mklazyp PROTO((tree));
 #ifdef __GNUC__
 
 extern tree mklazyp PROTO((tree));
 #ifdef __GNUC__
 
+tree *Rglazyp PROTO((struct Slazyp *));
+
 extern __inline__ tree *Rglazyp(struct Slazyp *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rglazyp(struct Slazyp *t)
 {
 #ifdef UGEN_DEBUG
@@ -596,6 +645,8 @@ extern tree *Rglazyp PROTO((struct Slazyp *));
 extern tree mkplusp PROTO((tree, literal));
 #ifdef __GNUC__
 
 extern tree mkplusp PROTO((tree, literal));
 #ifdef __GNUC__
 
+tree *Rgplusp PROTO((struct Splusp *));
+
 extern __inline__ tree *Rgplusp(struct Splusp *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgplusp(struct Splusp *t)
 {
 #ifdef UGEN_DEBUG
@@ -611,6 +662,8 @@ extern tree *Rgplusp PROTO((struct Splusp *));
 #define gplusp(xyzxyz) (*Rgplusp((struct Splusp *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gplusp(xyzxyz) (*Rgplusp((struct Splusp *) (xyzxyz)))
 #ifdef __GNUC__
 
+literal *Rgplusi PROTO((struct Splusp *));
+
 extern __inline__ literal *Rgplusi(struct Splusp *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ literal *Rgplusi(struct Splusp *t)
 {
 #ifdef UGEN_DEBUG
@@ -625,11 +678,13 @@ extern literal *Rgplusi PROTO((struct Splusp *));
 
 #define gplusi(xyzxyz) (*Rgplusi((struct Splusp *) (xyzxyz)))
 
 
 #define gplusi(xyzxyz) (*Rgplusi((struct Splusp *) (xyzxyz)))
 
-extern tree mkwildp PROTO(());
+extern tree mkwildp PROTO((void));
 
 extern tree mkrestr PROTO((tree, ttype));
 #ifdef __GNUC__
 
 
 extern tree mkrestr PROTO((tree, ttype));
 #ifdef __GNUC__
 
+tree *Rgrestre PROTO((struct Srestr *));
+
 extern __inline__ tree *Rgrestre(struct Srestr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgrestre(struct Srestr *t)
 {
 #ifdef UGEN_DEBUG
@@ -645,6 +700,8 @@ extern tree *Rgrestre PROTO((struct Srestr *));
 #define grestre(xyzxyz) (*Rgrestre((struct Srestr *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define grestre(xyzxyz) (*Rgrestre((struct Srestr *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgrestrt PROTO((struct Srestr *));
+
 extern __inline__ ttype *Rgrestrt(struct Srestr *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgrestrt(struct Srestr *t)
 {
 #ifdef UGEN_DEBUG
@@ -662,6 +719,8 @@ extern ttype *Rgrestrt PROTO((struct Srestr *));
 extern tree mkcomprh PROTO((tree, list));
 #ifdef __GNUC__
 
 extern tree mkcomprh PROTO((tree, list));
 #ifdef __GNUC__
 
+tree *Rgcexp PROTO((struct Scomprh *));
+
 extern __inline__ tree *Rgcexp(struct Scomprh *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgcexp(struct Scomprh *t)
 {
 #ifdef UGEN_DEBUG
@@ -677,6 +736,8 @@ extern tree *Rgcexp PROTO((struct Scomprh *));
 #define gcexp(xyzxyz) (*Rgcexp((struct Scomprh *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gcexp(xyzxyz) (*Rgcexp((struct Scomprh *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgcquals PROTO((struct Scomprh *));
+
 extern __inline__ list *Rgcquals(struct Scomprh *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgcquals(struct Scomprh *t)
 {
 #ifdef UGEN_DEBUG
@@ -694,6 +755,8 @@ extern list *Rgcquals PROTO((struct Scomprh *));
 extern tree mkqual PROTO((tree, tree));
 #ifdef __GNUC__
 
 extern tree mkqual PROTO((tree, tree));
 #ifdef __GNUC__
 
+tree *Rgqpat PROTO((struct Squal *));
+
 extern __inline__ tree *Rgqpat(struct Squal *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgqpat(struct Squal *t)
 {
 #ifdef UGEN_DEBUG
@@ -709,6 +772,8 @@ extern tree *Rgqpat PROTO((struct Squal *));
 #define gqpat(xyzxyz) (*Rgqpat((struct Squal *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gqpat(xyzxyz) (*Rgqpat((struct Squal *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgqexp PROTO((struct Squal *));
+
 extern __inline__ tree *Rgqexp(struct Squal *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgqexp(struct Squal *t)
 {
 #ifdef UGEN_DEBUG
@@ -726,6 +791,8 @@ extern tree *Rgqexp PROTO((struct Squal *));
 extern tree mkguard PROTO((tree));
 #ifdef __GNUC__
 
 extern tree mkguard PROTO((tree));
 #ifdef __GNUC__
 
+tree *Rggexp PROTO((struct Sguard *));
+
 extern __inline__ tree *Rggexp(struct Sguard *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rggexp(struct Sguard *t)
 {
 #ifdef UGEN_DEBUG
@@ -743,6 +810,8 @@ extern tree *Rggexp PROTO((struct Sguard *));
 extern tree mkdef PROTO((tree));
 #ifdef __GNUC__
 
 extern tree mkdef PROTO((tree));
 #ifdef __GNUC__
 
+tree *Rggdef PROTO((struct Sdef *));
+
 extern __inline__ tree *Rggdef(struct Sdef *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rggdef(struct Sdef *t)
 {
 #ifdef UGEN_DEBUG
@@ -760,6 +829,8 @@ extern tree *Rggdef PROTO((struct Sdef *));
 extern tree mktinfixop PROTO((infixTree));
 #ifdef __GNUC__
 
 extern tree mktinfixop PROTO((infixTree));
 #ifdef __GNUC__
 
+infixTree *Rgdummy PROTO((struct Stinfixop *));
+
 extern __inline__ infixTree *Rgdummy(struct Stinfixop *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ infixTree *Rgdummy(struct Stinfixop *t)
 {
 #ifdef UGEN_DEBUG
@@ -777,6 +848,8 @@ extern infixTree *Rgdummy PROTO((struct Stinfixop *));
 extern tree mklsection PROTO((tree, unkId));
 #ifdef __GNUC__
 
 extern tree mklsection PROTO((tree, unkId));
 #ifdef __GNUC__
 
+tree *Rglsexp PROTO((struct Slsection *));
+
 extern __inline__ tree *Rglsexp(struct Slsection *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rglsexp(struct Slsection *t)
 {
 #ifdef UGEN_DEBUG
@@ -792,6 +865,8 @@ extern tree *Rglsexp PROTO((struct Slsection *));
 #define glsexp(xyzxyz) (*Rglsexp((struct Slsection *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define glsexp(xyzxyz) (*Rglsexp((struct Slsection *) (xyzxyz)))
 #ifdef __GNUC__
 
+unkId *Rglsop PROTO((struct Slsection *));
+
 extern __inline__ unkId *Rglsop(struct Slsection *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rglsop(struct Slsection *t)
 {
 #ifdef UGEN_DEBUG
@@ -809,6 +884,8 @@ extern unkId *Rglsop PROTO((struct Slsection *));
 extern tree mkrsection PROTO((unkId, tree));
 #ifdef __GNUC__
 
 extern tree mkrsection PROTO((unkId, tree));
 #ifdef __GNUC__
 
+unkId *Rgrsop PROTO((struct Srsection *));
+
 extern __inline__ unkId *Rgrsop(struct Srsection *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgrsop(struct Srsection *t)
 {
 #ifdef UGEN_DEBUG
@@ -824,6 +901,8 @@ extern unkId *Rgrsop PROTO((struct Srsection *));
 #define grsop(xyzxyz) (*Rgrsop((struct Srsection *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define grsop(xyzxyz) (*Rgrsop((struct Srsection *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgrsexp PROTO((struct Srsection *));
+
 extern __inline__ tree *Rgrsexp(struct Srsection *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgrsexp(struct Srsection *t)
 {
 #ifdef UGEN_DEBUG
@@ -841,6 +920,8 @@ extern tree *Rgrsexp PROTO((struct Srsection *));
 extern tree mkeenum PROTO((tree, list, list));
 #ifdef __GNUC__
 
 extern tree mkeenum PROTO((tree, list, list));
 #ifdef __GNUC__
 
+tree *Rgefrom PROTO((struct Seenum *));
+
 extern __inline__ tree *Rgefrom(struct Seenum *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgefrom(struct Seenum *t)
 {
 #ifdef UGEN_DEBUG
@@ -856,6 +937,8 @@ extern tree *Rgefrom PROTO((struct Seenum *));
 #define gefrom(xyzxyz) (*Rgefrom((struct Seenum *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gefrom(xyzxyz) (*Rgefrom((struct Seenum *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgestep PROTO((struct Seenum *));
+
 extern __inline__ list *Rgestep(struct Seenum *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgestep(struct Seenum *t)
 {
 #ifdef UGEN_DEBUG
@@ -871,6 +954,8 @@ extern list *Rgestep PROTO((struct Seenum *));
 #define gestep(xyzxyz) (*Rgestep((struct Seenum *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gestep(xyzxyz) (*Rgestep((struct Seenum *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgeto PROTO((struct Seenum *));
+
 extern __inline__ list *Rgeto(struct Seenum *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgeto(struct Seenum *t)
 {
 #ifdef UGEN_DEBUG
@@ -888,6 +973,8 @@ extern list *Rgeto PROTO((struct Seenum *));
 extern tree mkllist PROTO((list));
 #ifdef __GNUC__
 
 extern tree mkllist PROTO((list));
 #ifdef __GNUC__
 
+list *Rgllist PROTO((struct Sllist *));
+
 extern __inline__ list *Rgllist(struct Sllist *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgllist(struct Sllist *t)
 {
 #ifdef UGEN_DEBUG
@@ -905,6 +992,8 @@ extern list *Rgllist PROTO((struct Sllist *));
 extern tree mkccall PROTO((stringId, stringId, list));
 #ifdef __GNUC__
 
 extern tree mkccall PROTO((stringId, stringId, list));
 #ifdef __GNUC__
 
+stringId *Rgccid PROTO((struct Sccall *));
+
 extern __inline__ stringId *Rgccid(struct Sccall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgccid(struct Sccall *t)
 {
 #ifdef UGEN_DEBUG
@@ -920,6 +1009,8 @@ extern stringId *Rgccid PROTO((struct Sccall *));
 #define gccid(xyzxyz) (*Rgccid((struct Sccall *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gccid(xyzxyz) (*Rgccid((struct Sccall *) (xyzxyz)))
 #ifdef __GNUC__
 
+stringId *Rgccinfo PROTO((struct Sccall *));
+
 extern __inline__ stringId *Rgccinfo(struct Sccall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ stringId *Rgccinfo(struct Sccall *t)
 {
 #ifdef UGEN_DEBUG
@@ -935,6 +1026,8 @@ extern stringId *Rgccinfo PROTO((struct Sccall *));
 #define gccinfo(xyzxyz) (*Rgccinfo((struct Sccall *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gccinfo(xyzxyz) (*Rgccinfo((struct Sccall *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgccargs PROTO((struct Sccall *));
+
 extern __inline__ list *Rgccargs(struct Sccall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgccargs(struct Sccall *t)
 {
 #ifdef UGEN_DEBUG
@@ -952,6 +1045,8 @@ extern list *Rgccargs PROTO((struct Sccall *));
 extern tree mkscc PROTO((hstring, tree));
 #ifdef __GNUC__
 
 extern tree mkscc PROTO((hstring, tree));
 #ifdef __GNUC__
 
+hstring *Rgsccid PROTO((struct Sscc *));
+
 extern __inline__ hstring *Rgsccid(struct Sscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ hstring *Rgsccid(struct Sscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -967,6 +1062,8 @@ extern hstring *Rgsccid PROTO((struct Sscc *));
 #define gsccid(xyzxyz) (*Rgsccid((struct Sscc *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gsccid(xyzxyz) (*Rgsccid((struct Sscc *) (xyzxyz)))
 #ifdef __GNUC__
 
+tree *Rgsccexp PROTO((struct Sscc *));
+
 extern __inline__ tree *Rgsccexp(struct Sscc *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgsccexp(struct Sscc *t)
 {
 #ifdef UGEN_DEBUG
@@ -984,6 +1081,8 @@ extern tree *Rgsccexp PROTO((struct Sscc *));
 extern tree mknegate PROTO((tree));
 #ifdef __GNUC__
 
 extern tree mknegate PROTO((tree));
 #ifdef __GNUC__
 
+tree *Rgnexp PROTO((struct Snegate *));
+
 extern __inline__ tree *Rgnexp(struct Snegate *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ tree *Rgnexp(struct Snegate *t)
 {
 #ifdef UGEN_DEBUG
index caf561b..e31a744 100644 (file)
@@ -270,7 +270,7 @@ ttype *Rguniforall_ty(t)
 
 /************** ty_maybe_nothing ******************/
 
 
 /************** ty_maybe_nothing ******************/
 
-ttype mkty_maybe_nothing()
+ttype mkty_maybe_nothing(void)
 {
        register struct Sty_maybe_nothing *pp =
                (struct Sty_maybe_nothing *) malloc(sizeof(struct Sty_maybe_nothing));
 {
        register struct Sty_maybe_nothing *pp =
                (struct Sty_maybe_nothing *) malloc(sizeof(struct Sty_maybe_nothing));
index ced12b6..900c23e 100644 (file)
@@ -28,6 +28,7 @@ typedef enum {
 typedef struct { Tttype tag; } *ttype;
 
 #ifdef __GNUC__
 typedef struct { Tttype tag; } *ttype;
 
 #ifdef __GNUC__
+Tttype tttype(ttype t);
 extern __inline__ Tttype tttype(ttype t)
 {
        return(t -> tag);
 extern __inline__ Tttype tttype(ttype t)
 {
        return(t -> tag);
@@ -98,6 +99,8 @@ struct Sty_maybe_just {
 extern ttype mktname PROTO((unkId, list));
 #ifdef __GNUC__
 
 extern ttype mktname PROTO((unkId, list));
 #ifdef __GNUC__
 
+unkId *Rgtypeid PROTO((struct Stname *));
+
 extern __inline__ unkId *Rgtypeid(struct Stname *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgtypeid(struct Stname *t)
 {
 #ifdef UGEN_DEBUG
@@ -113,6 +116,8 @@ extern unkId *Rgtypeid PROTO((struct Stname *));
 #define gtypeid(xyzxyz) (*Rgtypeid((struct Stname *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtypeid(xyzxyz) (*Rgtypeid((struct Stname *) (xyzxyz)))
 #ifdef __GNUC__
 
+list *Rgtypel PROTO((struct Stname *));
+
 extern __inline__ list *Rgtypel(struct Stname *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgtypel(struct Stname *t)
 {
 #ifdef UGEN_DEBUG
@@ -130,6 +135,8 @@ extern list *Rgtypel PROTO((struct Stname *));
 extern ttype mknamedtvar PROTO((unkId));
 #ifdef __GNUC__
 
 extern ttype mknamedtvar PROTO((unkId));
 #ifdef __GNUC__
 
+unkId *Rgnamedtvar PROTO((struct Snamedtvar *));
+
 extern __inline__ unkId *Rgnamedtvar(struct Snamedtvar *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgnamedtvar(struct Snamedtvar *t)
 {
 #ifdef UGEN_DEBUG
@@ -147,6 +154,8 @@ extern unkId *Rgnamedtvar PROTO((struct Snamedtvar *));
 extern ttype mktllist PROTO((ttype));
 #ifdef __GNUC__
 
 extern ttype mktllist PROTO((ttype));
 #ifdef __GNUC__
 
+ttype *Rgtlist PROTO((struct Stllist *));
+
 extern __inline__ ttype *Rgtlist(struct Stllist *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgtlist(struct Stllist *t)
 {
 #ifdef UGEN_DEBUG
@@ -164,6 +173,8 @@ extern ttype *Rgtlist PROTO((struct Stllist *));
 extern ttype mkttuple PROTO((list));
 #ifdef __GNUC__
 
 extern ttype mkttuple PROTO((list));
 #ifdef __GNUC__
 
+list *Rgttuple PROTO((struct Sttuple *));
+
 extern __inline__ list *Rgttuple(struct Sttuple *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgttuple(struct Sttuple *t)
 {
 #ifdef UGEN_DEBUG
@@ -181,6 +192,8 @@ extern list *Rgttuple PROTO((struct Sttuple *));
 extern ttype mktfun PROTO((ttype, ttype));
 #ifdef __GNUC__
 
 extern ttype mktfun PROTO((ttype, ttype));
 #ifdef __GNUC__
 
+ttype *Rgtfun PROTO((struct Stfun *));
+
 extern __inline__ ttype *Rgtfun(struct Stfun *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgtfun(struct Stfun *t)
 {
 #ifdef UGEN_DEBUG
@@ -196,6 +209,8 @@ extern ttype *Rgtfun PROTO((struct Stfun *));
 #define gtfun(xyzxyz) (*Rgtfun((struct Stfun *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtfun(xyzxyz) (*Rgtfun((struct Stfun *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgtarg PROTO((struct Stfun *));
+
 extern __inline__ ttype *Rgtarg(struct Stfun *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgtarg(struct Stfun *t)
 {
 #ifdef UGEN_DEBUG
@@ -213,6 +228,8 @@ extern ttype *Rgtarg PROTO((struct Stfun *));
 extern ttype mkcontext PROTO((list, ttype));
 #ifdef __GNUC__
 
 extern ttype mkcontext PROTO((list, ttype));
 #ifdef __GNUC__
 
+list *Rgtcontextl PROTO((struct Scontext *));
+
 extern __inline__ list *Rgtcontextl(struct Scontext *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rgtcontextl(struct Scontext *t)
 {
 #ifdef UGEN_DEBUG
@@ -228,6 +245,8 @@ extern list *Rgtcontextl PROTO((struct Scontext *));
 #define gtcontextl(xyzxyz) (*Rgtcontextl((struct Scontext *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gtcontextl(xyzxyz) (*Rgtcontextl((struct Scontext *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgtcontextt PROTO((struct Scontext *));
+
 extern __inline__ ttype *Rgtcontextt(struct Scontext *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgtcontextt(struct Scontext *t)
 {
 #ifdef UGEN_DEBUG
@@ -245,6 +264,8 @@ extern ttype *Rgtcontextt PROTO((struct Scontext *));
 extern ttype mkunidict PROTO((unkId, ttype));
 #ifdef __GNUC__
 
 extern ttype mkunidict PROTO((unkId, ttype));
 #ifdef __GNUC__
 
+unkId *Rgunidict_clas PROTO((struct Sunidict *));
+
 extern __inline__ unkId *Rgunidict_clas(struct Sunidict *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgunidict_clas(struct Sunidict *t)
 {
 #ifdef UGEN_DEBUG
@@ -260,6 +281,8 @@ extern unkId *Rgunidict_clas PROTO((struct Sunidict *));
 #define gunidict_clas(xyzxyz) (*Rgunidict_clas((struct Sunidict *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define gunidict_clas(xyzxyz) (*Rgunidict_clas((struct Sunidict *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rgunidict_ty PROTO((struct Sunidict *));
+
 extern __inline__ ttype *Rgunidict_ty(struct Sunidict *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgunidict_ty(struct Sunidict *t)
 {
 #ifdef UGEN_DEBUG
@@ -277,6 +300,8 @@ extern ttype *Rgunidict_ty PROTO((struct Sunidict *));
 extern ttype mkunityvartemplate PROTO((unkId));
 #ifdef __GNUC__
 
 extern ttype mkunityvartemplate PROTO((unkId));
 #ifdef __GNUC__
 
+unkId *Rgunityvartemplate PROTO((struct Sunityvartemplate *));
+
 extern __inline__ unkId *Rgunityvartemplate(struct Sunityvartemplate *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ unkId *Rgunityvartemplate(struct Sunityvartemplate *t)
 {
 #ifdef UGEN_DEBUG
@@ -294,6 +319,8 @@ extern unkId *Rgunityvartemplate PROTO((struct Sunityvartemplate *));
 extern ttype mkuniforall PROTO((list, ttype));
 #ifdef __GNUC__
 
 extern ttype mkuniforall PROTO((list, ttype));
 #ifdef __GNUC__
 
+list *Rguniforall_tv PROTO((struct Suniforall *));
+
 extern __inline__ list *Rguniforall_tv(struct Suniforall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ list *Rguniforall_tv(struct Suniforall *t)
 {
 #ifdef UGEN_DEBUG
@@ -309,6 +336,8 @@ extern list *Rguniforall_tv PROTO((struct Suniforall *));
 #define guniforall_tv(xyzxyz) (*Rguniforall_tv((struct Suniforall *) (xyzxyz)))
 #ifdef __GNUC__
 
 #define guniforall_tv(xyzxyz) (*Rguniforall_tv((struct Suniforall *) (xyzxyz)))
 #ifdef __GNUC__
 
+ttype *Rguniforall_ty PROTO((struct Suniforall *));
+
 extern __inline__ ttype *Rguniforall_ty(struct Suniforall *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rguniforall_ty(struct Suniforall *t)
 {
 #ifdef UGEN_DEBUG
@@ -323,11 +352,13 @@ extern ttype *Rguniforall_ty PROTO((struct Suniforall *));
 
 #define guniforall_ty(xyzxyz) (*Rguniforall_ty((struct Suniforall *) (xyzxyz)))
 
 
 #define guniforall_ty(xyzxyz) (*Rguniforall_ty((struct Suniforall *) (xyzxyz)))
 
-extern ttype mkty_maybe_nothing PROTO(());
+extern ttype mkty_maybe_nothing PROTO((void));
 
 extern ttype mkty_maybe_just PROTO((ttype));
 #ifdef __GNUC__
 
 
 extern ttype mkty_maybe_just PROTO((ttype));
 #ifdef __GNUC__
 
+ttype *Rgty_maybe PROTO((struct Sty_maybe_just *));
+
 extern __inline__ ttype *Rgty_maybe(struct Sty_maybe_just *t)
 {
 #ifdef UGEN_DEBUG
 extern __inline__ ttype *Rgty_maybe(struct Sty_maybe_just *t)
 {
 #ifdef UGEN_DEBUG
index e795c81..ca4a876 100644 (file)
 
 \section[Driver-support]{Support code for the @ghc@ driver}
 \downsection
 
 \section[Driver-support]{Support code for the @ghc@ driver}
 \downsection
-\input{ghc-asm-alpha.lprl}
-\input{ghc-asm-hppa.lprl}
-\input{ghc-asm-iX86.lprl}
-\input{ghc-asm-m68k.lprl}
-\input{ghc-asm-mips.lprl}
-\input{ghc-asm-solaris.lprl}
-\input{ghc-asm-sparc.lprl}
+\input{ghc-asm.lprl}
 \input{ghc-consist.lprl}
 \input{ghc-split.lprl}
 \upsection
 \input{ghc-consist.lprl}
 \input{ghc-split.lprl}
 \upsection
index d7c1950..f7d0a97 100644 (file)
@@ -69,12 +69,12 @@ Email: glasgow-haskell-\{request,bugs\}\@dcs.glasgow.ac.uk}
 
 %************************************************************************
 %*                                                                     *
 
 %************************************************************************
 %*                                                                     *
-%\section[Reduction-counts]{Definitions for reduction counting}
+%\section[Ticky-counts]{Definitions for ``ticky-ticky'' profiling}
 %*                                                                     *
 %************************************************************************
 
 \downsection
 %*                                                                     *
 %************************************************************************
 
 \downsection
-\input{RednCounts.lh}
+\input{Ticky.lh}
 \upsection
 
 %------------------------------------------------------------------------
 \upsection
 
 %------------------------------------------------------------------------
diff --git a/ghc/includes/sparc-sun-sunos4.h b/ghc/includes/sparc-sun-sunos4.h
deleted file mode 100644 (file)
index aad25c9..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
--- This file is created automatically.  Do not edit by hand.
-
-
--- Base table offsets for the Native Code Generator
-#define OFFSET_Dbl1 0
-#define OFFSET_Dbl2 2
-#define OFFSET_Flt1 4
-#define OFFSET_Flt2 5
-#define OFFSET_Flt3 6
-#define OFFSET_Flt4 7
-#define OFFSET_R1 8
-#define OFFSET_R2 9
-#define OFFSET_R3 10
-#define OFFSET_R4 11
-#define OFFSET_R5 12
-#define OFFSET_R6 13
-#define OFFSET_R7 14
-#define OFFSET_R8 15
-#define OFFSET_SpA 16
-#define OFFSET_SuA 17
-#define OFFSET_SpB 18
-#define OFFSET_SuB 19
-#define OFFSET_Hp 20
-#define OFFSET_HpLim 21
-#define OFFSET_Tag 22
-#define OFFSET_Ret 23
-#define OFFSET_Activity 24
-#define OFFSET_StkO panic "OFFSET_StkO"
-#define OFFSET_Liveness panic "OFFSET_Liveness"
-
--- Storage Manager offsets for the Native Code Generator
-#define SM_HP 0
-#define SM_HPLIM 1
-#define SM_ROOTNO 2
-#define SM_ROOTS 3
-#define SM_CAFLIST 4
-#define SM_OLDMUTABLES 5
-#define SM_OLDLIM 6
-#define SM_MALLOCPTRLIST 7
-#define SM_OLDMALLOCPTRLIST 8
-#define SM_STABLEPOINTERTABLE 9
-
--- FILE size for the Native Code Generator
-#define FILE_SIZE 20
index f4708f3..972b96e 100644 (file)
@@ -14,7 +14,7 @@ StgInt closeFile PROTO((StgAddr));
 StgInt createDirectory PROTO((StgByteArray));
 
 /* env.lc */
 StgInt createDirectory PROTO((StgByteArray));
 
 /* env.lc */
-char * strdup          PROTO((char *));
+char * strDup          PROTO((const char *));
 int    setenviron      PROTO((char **));
 int    copyenv         (STG_NO_ARGS);
 int    setenv          PROTO((char *));
 int    setenviron      PROTO((char **));
 int    copyenv         (STG_NO_ARGS);
 int    setenv          PROTO((char *));
index 7ee20c1..f68b0ef 100644 (file)
@@ -27,9 +27,7 @@ int dirtyEnv = 0;
  */
 
 char *
  */
 
 char *
-strdup(char *src) /* should be "const char *" but then some
-                    bozo OS (e.g., AIX) will come along and disagree.
-                    The alt is to rename this routine (WDP 96/01) */
+strDup(const char *src)
 {
     int len = strlen(src) + 1;
     char *dst;
 {
     int len = strlen(src) + 1;
     char *dst;
@@ -78,7 +76,7 @@ copyenv()
     new[i] = NULL;
 
     while (--i >= 0) {
     new[i] = NULL;
 
     while (--i >= 0) {
-       if ((new[i] = strdup(environ[i])) == NULL) {
+       if ((new[i] = strDup(environ[i])) == NULL) {
            while (new[++i] != NULL)
                free(new[i]);
            free(new);
            while (new[++i] != NULL)
                free(new[i]);
            free(new);
@@ -110,7 +108,7 @@ char *mapping;
     if (!dirtyEnv && copyenv() != 0)
        return -1;
 
     if (!dirtyEnv && copyenv() != 0)
        return -1;
 
-    if ((p = strdup(mapping)) == NULL)
+    if ((p = strDup(mapping)) == NULL)
        return -1;
 
     /* Look for an existing key that matches */
        return -1;
 
     /* Look for an existing key that matches */
index 522df19..456d2a3 100644 (file)
@@ -79,7 +79,7 @@ char **envp;
        }
 #endif
     } else
        }
 #endif
     } else
-       cur = path = strdup(path);
+       cur = path = strDup(path);
 
     if (path == NULL || (bp = buf = malloc(strlen(path)+strlen(name)+2)) == NULL)
        goto done;
 
     if (path == NULL || (bp = buf = malloc(strlen(path)+strlen(name)+2)) == NULL)
        goto done;
index 1fb72e8..ef646b3 100644 (file)
@@ -458,20 +458,18 @@ error = rtsTrue;
                )
              case 'p': /* cost centre profiling (time/alloc) */
                COST_CENTRE_USING_BUILD_ONLY(
                )
              case 'p': /* cost centre profiling (time/alloc) */
                COST_CENTRE_USING_BUILD_ONLY(
-               { char ch;
                RTSflags.CcFlags.doCostCentres++;
 
                RTSflags.CcFlags.doCostCentres++;
 
-               for (ch = 2; rts_argv[arg][ch]; ch++) {
                switch (rts_argv[arg][2]) {
                  case SORTCC_LABEL:
                  case SORTCC_TIME:
                  case SORTCC_ALLOC:
                switch (rts_argv[arg][2]) {
                  case SORTCC_LABEL:
                  case SORTCC_TIME:
                  case SORTCC_ALLOC:
-                       RTSflags.CcFlags.sortBy = rts_argv[arg][ch];
+                       RTSflags.CcFlags.sortBy = rts_argv[arg][2];
                    break;
                  default:
                    fprintf(stderr, "Invalid profiling sort option %s\n", rts_argv[arg]);
                    error = 1;
                    break;
                  default:
                    fprintf(stderr, "Invalid profiling sort option %s\n", rts_argv[arg]);
                    error = 1;
-               }}}
+               }
                ) break;
 
              case 'i': /* serial profiling -- initial timer interval */
                ) break;
 
              case 'i': /* serial profiling -- initial timer interval */
diff --git a/ghc/runtime/storage/SMcompacting.h b/ghc/runtime/storage/SMcompacting.h
deleted file mode 100644 (file)
index e64b8fd..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-# line 4 "storage/SMcompacting.lh"
-extern void LinkRoots PROTO((P_ roots[], I_ rootno));
-extern void LinkAStack PROTO((PP_ stackA, PP_ botA));
-extern void LinkBStack PROTO((P_ stackB, P_ botB));
-extern I_ CountCAFs PROTO((P_ CAFlist));
-
-extern void LinkCAFs PROTO((P_ CAFlist));