From: partain Date: Fri, 12 Jan 1996 11:37:58 +0000 (+0000) Subject: [project @ 1996-01-12 11:35:21 by partain] X-Git-Tag: Approximately_1000_patches_recorded~946 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;ds=sidebyside;h=ed7464364646a28aaf27d1dbc2ceaf7a9d9ce62f;p=ghc-hetmet.git [project @ 1996-01-12 11:35:21 by partain] WDP 0.27 tidying up --- diff --git a/configure.in b/configure.in index cfadc77..c3f058c 100644 --- a/configure.in +++ b/configure.in @@ -1335,9 +1335,9 @@ case $WithGhcHc in ;; 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 @@ -1589,9 +1589,9 @@ case $WithHappyHc in ;; 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 ;; @@ -1664,9 +1664,9 @@ case $WithHaggisHc in ;; 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 ;; @@ -1759,9 +1759,9 @@ case $WithNoFibHc in ;; 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 ;; @@ -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 - echo "Can't find Chalmers HBC to compile with: $WithNoFibHc" + echo "Can't find Chalmers HBC to compile NoFib with: $WithNoFibHc" 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 - 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 ;; diff --git a/ghc/PATCHLEVEL b/ghc/PATCHLEVEL index 9d06a81..936caf5 100644 --- a/ghc/PATCHLEVEL +++ b/ghc/PATCHLEVEL @@ -1 +1 @@ -The Glamorous Glasgow Haskell Compiler, version 0.26, patchlevel 1 +The Glamorous Glasgow Haskell Compiler, version 0.27, patchlevel 0 diff --git a/ghc/compiler/yaccParser/U_binding.hs b/ghc/compiler/yaccParser/U_binding.hs index aafdda1..6ab8211 100644 --- a/ghc/compiler/yaccParser/U_binding.hs +++ b/ghc/compiler/yaccParser/U_binding.hs @@ -9,7 +9,7 @@ import U_hpragma 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 @@ -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) - 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 -> diff --git a/ghc/compiler/yaccParser/U_finfot.hs b/ghc/compiler/yaccParser/U_finfot.hs index c6b7ea0..15055df 100644 --- a/ghc/compiler/yaccParser/U_finfot.hs +++ b/ghc/compiler/yaccParser/U_finfot.hs @@ -3,14 +3,12 @@ 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# _) -> - 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 -> diff --git a/ghc/compiler/yaccParser/atype.h b/ghc/compiler/yaccParser/atype.h index 49ef6bb..0651a70 100644 --- a/ghc/compiler/yaccParser/atype.h +++ b/ghc/compiler/yaccParser/atype.h @@ -18,6 +18,7 @@ typedef enum { typedef struct { Tatype tag; } *atype; #ifdef __GNUC__ +Tatype tatype(atype t); extern __inline__ Tatype tatype(atype t) { return(t -> tag); @@ -36,6 +37,8 @@ struct Satc { extern atype mkatc PROTO((unkId, list, long)); #ifdef __GNUC__ +unkId *Rgatcid PROTO((struct Satc *)); + 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__ +list *Rgatctypel PROTO((struct Satc *)); + 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__ +long *Rgatcline PROTO((struct Satc *)); + extern __inline__ long *Rgatcline(struct Satc *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/binding.c b/ghc/compiler/yaccParser/binding.c index 20a82a3..6aa24ec 100644 --- a/ghc/compiler/yaccParser/binding.c +++ b/ghc/compiler/yaccParser/binding.c @@ -252,132 +252,6 @@ binding *Rgabindsnd(t) 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) @@ -682,7 +556,7 @@ long *Rgmline(t) /************** nullbind ******************/ -binding mknullbind() +binding mknullbind(void) { register struct Snullbind *pp = (struct Snullbind *) malloc(sizeof(struct Snullbind)); diff --git a/ghc/compiler/yaccParser/binding.h b/ghc/compiler/yaccParser/binding.h index add5394..7342d01 100644 --- a/ghc/compiler/yaccParser/binding.h +++ b/ghc/compiler/yaccParser/binding.h @@ -17,9 +17,6 @@ typedef enum { pbind, fbind, abind, - lbind, - ebind, - hbind, ibind, dbind, cbind, @@ -41,6 +38,7 @@ typedef enum { typedef struct { Tbinding tag; } *binding; #ifdef __GNUC__ +Tbinding tbinding(binding t); extern __inline__ Tbinding tbinding(binding t) { return(t -> tag); @@ -85,26 +83,6 @@ struct Sabind { 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; @@ -226,6 +204,8 @@ struct Sdspec_uprag { 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 @@ -241,6 +221,8 @@ extern list *Rgtbindc PROTO((struct Stbind *)); #define gtbindc(xyzxyz) (*Rgtbindc((struct Stbind *) (xyzxyz))) #ifdef __GNUC__ +ttype *Rgtbindid PROTO((struct Stbind *)); + 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__ +list *Rgtbindl PROTO((struct Stbind *)); + 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__ +list *Rgtbindd PROTO((struct Stbind *)); + 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__ +long *Rgtline PROTO((struct Stbind *)); + 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__ +hpragma *Rgtpragma PROTO((struct Stbind *)); + 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__ +ttype *Rgnbindid PROTO((struct Snbind *)); + 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__ +ttype *Rgnbindas PROTO((struct Snbind *)); + 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__ +long *Rgnline PROTO((struct Snbind *)); + 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__ +hpragma *Rgnpragma PROTO((struct Snbind *)); + 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__ +list *Rgpbindl PROTO((struct Spbind *)); + 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__ +long *Rgpline PROTO((struct Spbind *)); + 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__ +list *Rgfbindl PROTO((struct Sfbind *)); + 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__ +long *Rgfline PROTO((struct Sfbind *)); + 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__ +binding *Rgabindfst PROTO((struct Sabind *)); + 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__ +binding *Rgabindsnd PROTO((struct Sabind *)); + 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))) -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__ +list *Rgibindc PROTO((struct Sibind *)); + 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__ +unkId *Rgibindid PROTO((struct Sibind *)); + 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__ +ttype *Rgibindi PROTO((struct Sibind *)); + 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__ +binding *Rgibindw PROTO((struct Sibind *)); + 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__ +long *Rgiline PROTO((struct Sibind *)); + 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__ +hpragma *Rgipragma PROTO((struct Sibind *)); + 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__ +list *Rgdbindts PROTO((struct Sdbind *)); + 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__ +long *Rgdline PROTO((struct Sdbind *)); + 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__ +list *Rgcbindc PROTO((struct Scbind *)); + 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__ +ttype *Rgcbindid PROTO((struct Scbind *)); + 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__ +binding *Rgcbindw PROTO((struct Scbind *)); + 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__ +long *Rgcline PROTO((struct Scbind *)); + 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__ +hpragma *Rgcpragma PROTO((struct Scbind *)); + 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__ +list *Rgsbindids PROTO((struct Ssbind *)); + 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__ +ttype *Rgsbindid PROTO((struct Ssbind *)); + 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__ +long *Rgsline PROTO((struct Ssbind *)); + 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__ +hpragma *Rgspragma PROTO((struct Ssbind *)); + 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__ +stringId *Rgmbindmodn PROTO((struct Smbind *)); + 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__ +list *Rgmbindimp PROTO((struct Smbind *)); + 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__ +list *Rgmbindren PROTO((struct Smbind *)); + 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__ +long *Rgmline PROTO((struct Smbind *)); + 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))) -extern binding mknullbind PROTO(()); +extern binding mknullbind PROTO((void)); 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 @@ -944,6 +872,8 @@ extern stringId *Rgiebindmod PROTO((struct Simport *)); #define giebindmod(xyzxyz) (*Rgiebindmod((struct Simport *) (xyzxyz))) #ifdef __GNUC__ +list *Rgiebindexp PROTO((struct Simport *)); + 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__ +list *Rgiebindren PROTO((struct Simport *)); + 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__ +binding *Rgiebinddef PROTO((struct Simport *)); + 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__ +stringId *Rgiebindfile PROTO((struct Simport *)); + 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__ +long *Rgiebindline PROTO((struct Simport *)); + 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__ +stringId *Rgihbindmod PROTO((struct Shiding *)); + 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__ +list *Rgihbindexp PROTO((struct Shiding *)); + 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__ +list *Rgihbindren PROTO((struct Shiding *)); + 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__ +binding *Rgihbinddef PROTO((struct Shiding *)); + 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__ +stringId *Rgihbindfile PROTO((struct Shiding *)); + 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__ +long *Rgihbindline PROTO((struct Shiding *)); + 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__ +unkId *Rgvspec_id PROTO((struct Svspec_uprag *)); + 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__ +list *Rgvspec_tys PROTO((struct Svspec_uprag *)); + 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__ +long *Rgvspec_line PROTO((struct Svspec_uprag *)); + 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__ +ttype *Rgvspec_ty PROTO((struct Svspec_ty_and_id *)); + 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__ +list *Rgvspec_tyid PROTO((struct Svspec_ty_and_id *)); + 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__ +unkId *Rgispec_clas PROTO((struct Sispec_uprag *)); + 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__ +ttype *Rgispec_ty PROTO((struct Sispec_uprag *)); + 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__ +long *Rgispec_line PROTO((struct Sispec_uprag *)); + 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__ +unkId *Rginline_id PROTO((struct Sinline_uprag *)); + 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__ +list *Rginline_howto PROTO((struct Sinline_uprag *)); + 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__ +long *Rginline_line PROTO((struct Sinline_uprag *)); + 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__ +unkId *Rgdeforest_id PROTO((struct Sdeforest_uprag *)); + 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__ +long *Rgdeforest_line PROTO((struct Sdeforest_uprag *)); + 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__ +unkId *Rgmagicuf_id PROTO((struct Smagicuf_uprag *)); + 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__ +stringId *Rgmagicuf_str PROTO((struct Smagicuf_uprag *)); + 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__ +long *Rgmagicuf_line PROTO((struct Smagicuf_uprag *)); + 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__ +unkId *Rgabstract_id PROTO((struct Sabstract_uprag *)); + 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__ +long *Rgabstract_line PROTO((struct Sabstract_uprag *)); + 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__ +unkId *Rgdspec_id PROTO((struct Sdspec_uprag *)); + 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__ +list *Rgdspec_tys PROTO((struct Sdspec_uprag *)); + 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__ +long *Rgdspec_line PROTO((struct Sdspec_uprag *)); + extern __inline__ long *Rgdspec_line(struct Sdspec_uprag *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/coresyn.c b/ghc/compiler/yaccParser/coresyn.c index 34318db..2f17580 100644 --- a/ghc/compiler/yaccParser/coresyn.c +++ b/ghc/compiler/yaccParser/coresyn.c @@ -702,7 +702,7 @@ coresyn *Rgcoprim_rhs(t) /************** conodeflt ******************/ -coresyn mkconodeflt() +coresyn mkconodeflt(void) { register struct Sconodeflt *pp = (struct Sconodeflt *) malloc(sizeof(struct Sconodeflt)); @@ -1162,7 +1162,7 @@ coresyn *Rgco_dictcc_cafd(t) /************** 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)); @@ -1172,7 +1172,7 @@ coresyn mkco_scc_noncaf() /************** 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)); @@ -1182,7 +1182,7 @@ coresyn mkco_scc_caf() /************** 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)); @@ -1192,7 +1192,7 @@ coresyn mkco_scc_nondupd() /************** 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)); diff --git a/ghc/compiler/yaccParser/coresyn.h b/ghc/compiler/yaccParser/coresyn.h index 6786e3e..37ef02c 100644 --- a/ghc/compiler/yaccParser/coresyn.h +++ b/ghc/compiler/yaccParser/coresyn.h @@ -61,6 +61,7 @@ typedef enum { typedef struct { Tcoresyn tag; } *coresyn; #ifdef __GNUC__ +Tcoresyn tcoresyn(coresyn t); extern __inline__ Tcoresyn tcoresyn(coresyn t) { return(t -> tag); @@ -335,6 +336,8 @@ struct Sco_wrkrid { 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 @@ -350,6 +353,8 @@ extern unkId *Rgcobinder_v PROTO((struct Scobinder *)); #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 @@ -367,6 +372,8 @@ extern ttype *Rgcobinder_ty PROTO((struct Scobinder *)); extern coresyn mkcolit PROTO((literal)); #ifdef __GNUC__ +literal *Rgcolit PROTO((struct Scolit *)); + 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__ +coresyn *Rgcolocal_v PROTO((struct Scolocal *)); + 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__ +coresyn *Rgcononrec_b PROTO((struct Scononrec *)); + 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__ +coresyn *Rgcononrec_rhs PROTO((struct Scononrec *)); + 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__ +list *Rgcorec PROTO((struct Scorec *)); + 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__ +coresyn *Rgcorec_b PROTO((struct Scorec_pair *)); + 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__ +coresyn *Rgcorec_rhs PROTO((struct Scorec_pair *)); + 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__ +coresyn *Rgcovar PROTO((struct Scovar *)); + 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__ +literal *Rgcoliteral PROTO((struct Scoliteral *)); + 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__ +coresyn *Rgcocon_con PROTO((struct Scocon *)); + 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__ +list *Rgcocon_tys PROTO((struct Scocon *)); + 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__ +list *Rgcocon_args PROTO((struct Scocon *)); + 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__ +coresyn *Rgcoprim_op PROTO((struct Scoprim *)); + 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__ +list *Rgcoprim_tys PROTO((struct Scoprim *)); + 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__ +list *Rgcoprim_args PROTO((struct Scoprim *)); + 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__ +list *Rgcolam_vars PROTO((struct Scolam *)); + 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__ +coresyn *Rgcolam_body PROTO((struct Scolam *)); + 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__ +list *Rgcotylam_tvs PROTO((struct Scotylam *)); + 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__ +coresyn *Rgcotylam_body PROTO((struct Scotylam *)); + 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__ +coresyn *Rgcoapp_fun PROTO((struct Scoapp *)); + 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__ +list *Rgcoapp_args PROTO((struct Scoapp *)); + 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__ +coresyn *Rgcotyapp_e PROTO((struct Scotyapp *)); + 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__ +ttype *Rgcotyapp_t PROTO((struct Scotyapp *)); + 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__ +coresyn *Rgcocase_s PROTO((struct Scocase *)); + 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__ +coresyn *Rgcocase_alts PROTO((struct Scocase *)); + 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__ +coresyn *Rgcolet_bind PROTO((struct Scolet *)); + 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__ +coresyn *Rgcolet_body PROTO((struct Scolet *)); + 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__ +coresyn *Rgcoscc_scc PROTO((struct Scoscc *)); + 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__ +coresyn *Rgcoscc_body PROTO((struct Scoscc *)); + 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__ +list *Rgcoalg_alts PROTO((struct Scoalg_alts *)); + 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__ +coresyn *Rgcoalg_deflt PROTO((struct Scoalg_alts *)); + 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__ +coresyn *Rgcoalg_con PROTO((struct Scoalg_alt *)); + 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__ +list *Rgcoalg_bs PROTO((struct Scoalg_alt *)); + 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__ +coresyn *Rgcoalg_rhs PROTO((struct Scoalg_alt *)); + 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__ +list *Rgcoprim_alts PROTO((struct Scoprim_alts *)); + 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__ +coresyn *Rgcoprim_deflt PROTO((struct Scoprim_alts *)); + 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__ +literal *Rgcoprim_lit PROTO((struct Scoprim_alt *)); + 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__ +coresyn *Rgcoprim_rhs PROTO((struct Scoprim_alt *)); + 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))) -extern coresyn mkconodeflt PROTO(()); +extern coresyn mkconodeflt PROTO((void)); 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 @@ -994,6 +1077,8 @@ extern coresyn *Rgcobinddeflt_v PROTO((struct Scobinddeflt *)); #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 @@ -1011,6 +1096,8 @@ extern coresyn *Rgcobinddeflt_rhs PROTO((struct Scobinddeflt *)); 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 @@ -1028,6 +1115,8 @@ extern stringId *Rgco_primop PROTO((struct Sco_primop *)); 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 @@ -1043,6 +1132,8 @@ extern stringId *Rgco_ccall PROTO((struct Sco_ccall *)); #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 @@ -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__ +list *Rgco_ccall_arg_tys PROTO((struct Sco_ccall *)); + 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__ +ttype *Rgco_ccall_res_ty PROTO((struct Sco_ccall *)); + 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__ +literal *Rgco_casm PROTO((struct Sco_casm *)); + 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__ +long *Rgco_casm_may_gc PROTO((struct Sco_casm *)); + 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__ +list *Rgco_casm_arg_tys PROTO((struct Sco_casm *)); + 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__ +ttype *Rgco_casm_res_ty PROTO((struct Sco_casm *)); + 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__ +coresyn *Rgco_preludedictscc_dupd PROTO((struct Sco_preludedictscc *)); + 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__ +hstring *Rgco_alldictscc_m PROTO((struct Sco_alldictscc *)); + 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__ +hstring *Rgco_alldictscc_g PROTO((struct Sco_alldictscc *)); + 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__ +coresyn *Rgco_alldictscc_dupd PROTO((struct Sco_alldictscc *)); + 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__ +hstring *Rgco_usercc_n PROTO((struct Sco_usercc *)); + 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__ +hstring *Rgco_usercc_m PROTO((struct Sco_usercc *)); + 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__ +hstring *Rgco_usercc_g PROTO((struct Sco_usercc *)); + 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__ +coresyn *Rgco_usercc_dupd PROTO((struct Sco_usercc *)); + 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__ +coresyn *Rgco_usercc_cafd PROTO((struct Sco_usercc *)); + 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__ +coresyn *Rgco_autocc_i PROTO((struct Sco_autocc *)); + 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__ +hstring *Rgco_autocc_m PROTO((struct Sco_autocc *)); + 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__ +hstring *Rgco_autocc_g PROTO((struct Sco_autocc *)); + 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__ +coresyn *Rgco_autocc_dupd PROTO((struct Sco_autocc *)); + 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__ +coresyn *Rgco_autocc_cafd PROTO((struct Sco_autocc *)); + 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__ +coresyn *Rgco_dictcc_i PROTO((struct Sco_dictcc *)); + 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__ +hstring *Rgco_dictcc_m PROTO((struct Sco_dictcc *)); + 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__ +hstring *Rgco_dictcc_g PROTO((struct Sco_dictcc *)); + 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__ +coresyn *Rgco_dictcc_dupd PROTO((struct Sco_dictcc *)); + 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__ +coresyn *Rgco_dictcc_cafd PROTO((struct Sco_dictcc *)); + 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))) -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__ +stringId *Rgco_id PROTO((struct Sco_id *)); + 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__ +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 @@ -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__ +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 @@ -1504,6 +1651,8 @@ extern stringId *Rgco_orig_id_n PROTO((struct Sco_orig_id *)); 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 @@ -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__ +unkId *Rgco_sdselid_sc PROTO((struct Sco_sdselid *)); + 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__ +unkId *Rgco_classopid_c PROTO((struct Sco_classopid *)); + 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__ +unkId *Rgco_classopid_o PROTO((struct Sco_classopid *)); + 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__ +unkId *Rgco_defmid_c PROTO((struct Sco_defmid *)); + 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__ +unkId *Rgco_defmid_op PROTO((struct Sco_defmid *)); + 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__ +unkId *Rgco_dfunid_c PROTO((struct Sco_dfunid *)); + 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__ +ttype *Rgco_dfunid_ty PROTO((struct Sco_dfunid *)); + 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__ +unkId *Rgco_constmid_c PROTO((struct Sco_constmid *)); + 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__ +unkId *Rgco_constmid_op PROTO((struct Sco_constmid *)); + 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__ +ttype *Rgco_constmid_ty PROTO((struct Sco_constmid *)); + 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__ +coresyn *Rgco_specid_un PROTO((struct Sco_specid *)); + 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__ +list *Rgco_specid_tys PROTO((struct Sco_specid *)); + 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__ +coresyn *Rgco_wrkrid_un PROTO((struct Sco_wrkrid *)); + extern __inline__ coresyn *Rgco_wrkrid_un(struct Sco_wrkrid *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/entidt.h b/ghc/compiler/yaccParser/entidt.h index e376a72..d2c356c 100644 --- a/ghc/compiler/yaccParser/entidt.h +++ b/ghc/compiler/yaccParser/entidt.h @@ -23,6 +23,7 @@ typedef enum { typedef struct { Tentidt tag; } *entidt; #ifdef __GNUC__ +Tentidt tentidt(entidt t); extern __inline__ Tentidt tentidt(entidt t) { return(t -> tag); @@ -66,6 +67,8 @@ struct Sentmod { extern entidt mkentid PROTO((stringId)); #ifdef __GNUC__ +stringId *Rgentid PROTO((struct Sentid *)); + 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__ +stringId *Rgitentid PROTO((struct Senttype *)); + 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__ +stringId *Rgatentid PROTO((struct Senttypeall *)); + 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__ +stringId *Rgctentid PROTO((struct Senttypecons *)); + 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__ +list *Rgctentcons PROTO((struct Senttypecons *)); + 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__ +stringId *Rgcentid PROTO((struct Sentclass *)); + 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__ +list *Rgcentops PROTO((struct Sentclass *)); + 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__ +stringId *Rgmentid PROTO((struct Sentmod *)); + extern __inline__ stringId *Rgmentid(struct Sentmod *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/finfot.c b/ghc/compiler/yaccParser/finfot.c index d155b2b..504d5c9 100644 --- a/ghc/compiler/yaccParser/finfot.c +++ b/ghc/compiler/yaccParser/finfot.c @@ -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) diff --git a/ghc/compiler/yaccParser/finfot.h b/ghc/compiler/yaccParser/finfot.h index 52e8af0..98c7d31 100644 --- a/ghc/compiler/yaccParser/finfot.h +++ b/ghc/compiler/yaccParser/finfot.h @@ -12,13 +12,13 @@ #endif typedef enum { - nofinfo, finfo } Tfinfot; typedef struct { Tfinfot tag; } *finfot; #ifdef __GNUC__ +Tfinfot tfinfot(finfot t); 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__ */ -struct Snofinfo { - Tfinfot tag; -}; - struct Sfinfo { Tfinfot tag; stringId Xfi1; stringId Xfi2; }; -extern finfot mknofinfo PROTO(()); - extern finfot mkfinfo PROTO((stringId, stringId)); #ifdef __GNUC__ +stringId *Rfi1 PROTO((struct Sfinfo *)); + 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__ +stringId *Rfi2 PROTO((struct Sfinfo *)); + extern __inline__ stringId *Rfi2(struct Sfinfo *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/hpragma.c b/ghc/compiler/yaccParser/hpragma.c index 11a1115..65613c8 100644 --- a/ghc/compiler/yaccParser/hpragma.c +++ b/ghc/compiler/yaccParser/hpragma.c @@ -12,7 +12,7 @@ Thpragma thpragma(t) /************** no_pragma ******************/ -hpragma mkno_pragma() +hpragma mkno_pragma(void) { register struct Sno_pragma *pp = (struct Sno_pragma *) malloc(sizeof(struct Sno_pragma)); @@ -56,7 +56,7 @@ list *Rgprag_data_specs(t) /************** itype_pragma ******************/ -hpragma mkitype_pragma() +hpragma mkitype_pragma(void) { register struct Sitype_pragma *pp = (struct Sitype_pragma *) malloc(sizeof(struct Sitype_pragma)); @@ -374,7 +374,7 @@ stringId *Rgprag_update_val(t) /************** ideforest_pragma ******************/ -hpragma mkideforest_pragma() +hpragma mkideforest_pragma(void) { register struct Sideforest_pragma *pp = (struct Sideforest_pragma *) malloc(sizeof(struct Sideforest_pragma)); @@ -474,7 +474,7 @@ coresyn *Rgprag_unfold_core(t) /************** iunfold_always ******************/ -hpragma mkiunfold_always() +hpragma mkiunfold_always(void) { register struct Siunfold_always *pp = (struct Siunfold_always *) malloc(sizeof(struct Siunfold_always)); diff --git a/ghc/compiler/yaccParser/hpragma.h b/ghc/compiler/yaccParser/hpragma.h index 8ba2ed5..068c3e6 100644 --- a/ghc/compiler/yaccParser/hpragma.h +++ b/ghc/compiler/yaccParser/hpragma.h @@ -38,6 +38,7 @@ typedef enum { typedef struct { Thpragma tag; } *hpragma; #ifdef __GNUC__ +Thpragma thpragma(hpragma t); extern __inline__ Thpragma thpragma(hpragma t) { return(t -> tag); @@ -170,11 +171,13 @@ struct Sidata_pragma_4s { list Xgprag_data_spec; }; -extern hpragma mkno_pragma PROTO(()); +extern hpragma mkno_pragma PROTO((void)); 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 @@ -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__ +list *Rgprag_data_specs PROTO((struct Sidata_pragma *)); + 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))) -extern hpragma mkitype_pragma PROTO(()); +extern hpragma mkitype_pragma PROTO((void)); 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 @@ -226,6 +233,8 @@ extern list *Rgprag_clas PROTO((struct Siclas_pragma *)); 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 @@ -241,6 +250,8 @@ extern hpragma *Rgprag_dsel PROTO((struct Siclasop_pragma *)); #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 @@ -258,6 +269,8 @@ extern hpragma *Rgprag_defm PROTO((struct Siclasop_pragma *)); 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 @@ -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__ +hpragma *Rgprag_dfun_simpl PROTO((struct Siinst_simpl_pragma *)); + 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__ +stringId *Rgprag_imod_const PROTO((struct Siinst_const_pragma *)); + 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__ +hpragma *Rgprag_dfun_const PROTO((struct Siinst_const_pragma *)); + 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__ +list *Rgprag_constms PROTO((struct Siinst_const_pragma *)); + 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__ +stringId *Rgprag_imod_spec PROTO((struct Siinst_spec_pragma *)); + 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__ +hpragma *Rgprag_dfun_spec PROTO((struct Siinst_spec_pragma *)); + 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__ +list *Rgprag_inst_specs PROTO((struct Siinst_spec_pragma *)); + 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__ +hpragma *Rgprag_arity PROTO((struct Sigen_pragma *)); + 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__ +hpragma *Rgprag_update PROTO((struct Sigen_pragma *)); + 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__ +hpragma *Rgprag_deforest PROTO((struct Sigen_pragma *)); + 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__ +hpragma *Rgprag_strictness PROTO((struct Sigen_pragma *)); + 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__ +hpragma *Rgprag_unfolding PROTO((struct Sigen_pragma *)); + 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__ +list *Rgprag_specs PROTO((struct Sigen_pragma *)); + 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__ +numId *Rgprag_arity_val PROTO((struct Siarity_pragma *)); + 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__ +stringId *Rgprag_update_val PROTO((struct Siupdate_pragma *)); + 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))) -extern hpragma mkideforest_pragma PROTO(()); +extern hpragma mkideforest_pragma PROTO((void)); 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 @@ -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__ +hpragma *Rgprag_strict_wrkr PROTO((struct Sistrictness_pragma *)); + 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__ +stringId *Rgprag_magic_str PROTO((struct Simagic_unfolding_pragma *)); + 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__ +hpragma *Rgprag_unfold_guide PROTO((struct Siunfolding_pragma *)); + 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__ +coresyn *Rgprag_unfold_core PROTO((struct Siunfolding_pragma *)); + 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))) -extern hpragma mkiunfold_always PROTO(()); +extern hpragma mkiunfold_always PROTO((void)); 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 @@ -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__ +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 @@ -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__ +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 @@ -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__ +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 @@ -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__ +unkId *Rgprag_name_pr1 PROTO((struct Siname_pragma_pr *)); + 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__ +hpragma *Rgprag_name_pr2 PROTO((struct Siname_pragma_pr *)); + 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__ +list *Rgprag_type_pr1 PROTO((struct Sitype_pragma_pr *)); + 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__ +numId *Rgprag_type_pr2 PROTO((struct Sitype_pragma_pr *)); + 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__ +hpragma *Rgprag_type_pr3 PROTO((struct Sitype_pragma_pr *)); + 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__ +list *Rgprag_inst_pt1 PROTO((struct Siinst_pragma_3s *)); + 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__ +numId *Rgprag_inst_pt2 PROTO((struct Siinst_pragma_3s *)); + 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__ +hpragma *Rgprag_inst_pt3 PROTO((struct Siinst_pragma_3s *)); + 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__ +list *Rgprag_inst_pt4 PROTO((struct Siinst_pragma_3s *)); + 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__ +list *Rgprag_data_spec PROTO((struct Sidata_pragma_4s *)); + extern __inline__ list *Rgprag_data_spec(struct Sidata_pragma_4s *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/hslexer.c b/ghc/compiler/yaccParser/hslexer.c index 20c54d3..768b8a2 100644 --- a/ghc/compiler/yaccParser/hslexer.c +++ b/ghc/compiler/yaccParser/hslexer.c @@ -1,10 +1,12 @@ /* 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 YY_FLEX_MAJOR_VERSION 2 +#define YY_FLEX_MINOR_VERSION 5 #include @@ -30,7 +32,7 @@ #else /* ! __cplusplus */ -#ifdef __STDC__ +#if __STDC__ #define YY_USE_PROTOS #define YY_USE_CONST @@ -38,16 +40,19 @@ #endif /* __STDC__ */ #endif /* ! __cplusplus */ - #ifdef __TURBOC__ + #pragma warn -rch + #pragma warn -use +#include +#include #define YY_USE_CONST +#define YY_USE_PROTOS #endif - -#ifndef YY_USE_CONST -#ifndef const -#define const -#endif +#ifdef YY_USE_CONST +#define yyconst const +#else +#define yyconst #endif @@ -74,16 +79,16 @@ #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 YYSTATE YY_START /* 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 @@ -96,14 +101,6 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE; 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 @@ -136,6 +133,12 @@ extern "C" { #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 { @@ -147,13 +150,19 @@ struct yy_buffer_state /* 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; + /* 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 @@ -161,6 +170,12 @@ struct yy_buffer_state */ 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. */ @@ -209,70 +224,66 @@ static int yy_start = 0; /* start state number */ */ 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 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 -#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 int yy_state_type; FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; +typedef int yy_state_type; 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 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; \ - 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; +#define YY_NUM_RULES 201 #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, @@ -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, - 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, @@ -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, - 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, 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, @@ -400,7 +411,7 @@ static const int yy_ec[256] = 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, @@ -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, 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, - 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, - 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, - 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, - 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, - 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, @@ -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, - 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, - 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, @@ -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, - 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, - 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, - 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, @@ -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, - 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, - 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, 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, 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, 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, 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, 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, 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, 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, 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, @@ -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, - 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, - 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, - 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, @@ -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, - 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, - 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, - 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, 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, @@ -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, - 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, - 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, - 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, - 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, - 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, - 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, 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, 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, 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, + 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; @@ -1139,8 +1146,9 @@ static char *yy_last_accepting_cpos; #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 */ -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, @@ -1257,12 +1265,12 @@ char *input_filename = NULL; /* Always points to a dynamically allocated string * 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 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 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 */ @@ -1284,12 +1292,15 @@ static int nested_comments; /* For counting comment nesting depth */ /* 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 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 */ @@ -1392,11 +1403,65 @@ static int StateDepth = -1; 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. */ +#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 @@ -1433,9 +1498,15 @@ YY_MALLOC_DECL #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 ) ) \ @@ -1479,13 +1550,19 @@ YY_MALLOC_DECL #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; -# line 274 "yaccParser/hslexer.flex" +#line 277 "yaccParser/hslexer.flex" @@ -1498,6 +1575,8 @@ YY_DECL if ( yy_init ) { + yy_init = 0; + #ifdef YY_USER_INIT YY_USER_INIT; #endif @@ -1511,15 +1590,11 @@ YY_DECL 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_init = 0; } while ( 1 ) /* loops until end-of-file is reached */ @@ -1535,8 +1610,7 @@ YY_DECL 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 { @@ -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]; - 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; } - while ( yy_base[yy_current_state] != 2201 ); + while ( yy_base[yy_current_state] != 2197 ); 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; @@ -1576,8 +1656,8 @@ do_action: /* This label is used only to access EOF actions. */ 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); @@ -1586,8 +1666,8 @@ YY_USER_ACTION } 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); @@ -1596,8 +1676,8 @@ YY_USER_ACTION } 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]; @@ -1607,15 +1687,15 @@ YY_USER_ACTION } 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: -YY_USER_ACTION -# line 307 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 310 "yaccParser/hslexer.flex" { if ( ignorePragmas || thisIfacePragmaVersion < minAcceptablePragmaVersion || @@ -1629,253 +1709,253 @@ YY_USER_ACTION } 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: -YY_USER_ACTION -# line 319 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 322 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 321 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 324 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 323 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 326 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 325 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 328 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 327 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 330 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 329 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 332 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 332 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 335 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 334 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 337 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 336 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 339 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 338 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 341 "yaccParser/hslexer.flex" { 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: -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: -YY_USER_ACTION -# line 342 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 345 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 344 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 347 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 347 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 350 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 350 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 353 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 352 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 355 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 354 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 357 "yaccParser/hslexer.flex" { 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: -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: -YY_USER_ACTION -# line 358 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 361 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 361 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 364 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 363 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 366 "yaccParser/hslexer.flex" { 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: -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: -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: -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: -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: -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: -YY_USER_ACTION -# line 387 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 390 "yaccParser/hslexer.flex" { POP_STATE; RETURN(END_UPRAGMA); } YY_BREAK @@ -1885,148 +1965,148 @@ YY_USER_ACTION */ case 53: -YY_USER_ACTION -# line 396 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 399 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 398 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 401 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 400 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 403 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 402 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 405 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 404 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 407 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 406 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 409 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 408 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 411 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 410 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 413 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 412 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 415 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 414 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 417 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 416 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 419 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 418 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 421 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 420 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 423 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 422 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 425 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 424 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 427 "yaccParser/hslexer.flex" { RETURN(FORALL); } YY_BREAK @@ -2035,118 +2115,118 @@ YY_USER_ACTION */ case 82: -YY_USER_ACTION -# line 432 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 435 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 434 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 437 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 436 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 439 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 438 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 441 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 440 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 443 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 442 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 445 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 444 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 447 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 446 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 449 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 448 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 451 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 450 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 453 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 452 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 455 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 454 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 457 "yaccParser/hslexer.flex" { RETURN(MINUS); } YY_BREAK @@ -2157,48 +2237,48 @@ YY_USER_ACTION */ 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: -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: -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: -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: -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: -YY_USER_ACTION -# line 484 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 487 "yaccParser/hslexer.flex" { yylval.uid = xstrndup(yytext, yyleng); RETURN(INTEGER); @@ -2210,24 +2290,24 @@ YY_USER_ACTION */ 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: -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: -YY_USER_ACTION -# line 503 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 506 "yaccParser/hslexer.flex" { yylval.uid = xstrndup(yytext, yyleng); RETURN(FLOAT); @@ -2239,8 +2319,8 @@ YY_USER_ACTION */ 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); @@ -2253,23 +2333,23 @@ YY_USER_ACTION */ 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: -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: -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: -YY_USER_ACTION -# line 530 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 533 "yaccParser/hslexer.flex" { hsnewid(yytext, yyleng); RETURN(_isconstr(yytext) ? CONID : VARID); @@ -2279,8 +2359,8 @@ YY_USER_ACTION /* 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]; @@ -2293,16 +2373,16 @@ YY_USER_ACTION } 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: -YY_USER_ACTION -# line 551 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 554 "yaccParser/hslexer.flex" { hsnewid(yytext, yyleng); RETURN(_isconstr(yytext) ? CONSYM : VARSYM); @@ -2318,8 +2398,8 @@ YY_USER_ACTION */ 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); @@ -2339,32 +2419,32 @@ YY_USER_ACTION */ 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: -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: -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: -YY_USER_ACTION -# line 597 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 600 "yaccParser/hslexer.flex" { hsmlcolno = hspcolno; cleartext(); @@ -2373,8 +2453,8 @@ YY_USER_ACTION } YY_BREAK case 127: -YY_USER_ACTION -# line 603 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 606 "yaccParser/hslexer.flex" { unsigned length; char *text; @@ -2402,8 +2482,8 @@ YY_USER_ACTION } YY_BREAK case 128: -YY_USER_ACTION -# line 628 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 631 "yaccParser/hslexer.flex" { unsigned length; char *text; @@ -2425,8 +2505,8 @@ YY_USER_ACTION } 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 @@ -2444,8 +2524,8 @@ YY_USER_ACTION */ 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 */ @@ -2453,16 +2533,16 @@ YY_USER_ACTION } 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: -YY_USER_ACTION -# line 674 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 677 "yaccParser/hslexer.flex" { hsmlcolno = hspcolno; cleartext(); @@ -2471,8 +2551,8 @@ YY_USER_ACTION } YY_BREAK case 133: -YY_USER_ACTION -# line 680 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 683 "yaccParser/hslexer.flex" { unsigned length; char *text; @@ -2493,8 +2573,8 @@ YY_USER_ACTION } YY_BREAK case 134: -YY_USER_ACTION -# line 698 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 701 "yaccParser/hslexer.flex" { unsigned length; char *text; @@ -2509,8 +2589,8 @@ YY_USER_ACTION } 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 @@ -2529,227 +2609,227 @@ YY_USER_ACTION */ 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: -YY_USER_ACTION -# line 729 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 732 "yaccParser/hslexer.flex" /* 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: -YY_USER_ACTION -# line 732 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 735 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 735 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 738 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 737 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 740 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 739 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 742 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 741 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 744 "yaccParser/hslexer.flex" { 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: -# line 744 "yaccParser/hslexer.flex" +#line 747 "yaccParser/hslexer.flex" 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: -# line 746 "yaccParser/hslexer.flex" +#line 749 "yaccParser/hslexer.flex" 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: -# line 748 "yaccParser/hslexer.flex" +#line 751 "yaccParser/hslexer.flex" 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: -# line 750 "yaccParser/hslexer.flex" +#line 753 "yaccParser/hslexer.flex" 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: -# line 752 "yaccParser/hslexer.flex" +#line 755 "yaccParser/hslexer.flex" 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: -# line 754 "yaccParser/hslexer.flex" +#line 757 "yaccParser/hslexer.flex" 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: -# line 756 "yaccParser/hslexer.flex" +#line 759 "yaccParser/hslexer.flex" 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: -YY_USER_ACTION -# line 757 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 760 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 759 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 762 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 761 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 764 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 763 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 766 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 765 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 768 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 767 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 770 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 769 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 772 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 771 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 774 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 773 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 776 "yaccParser/hslexer.flex" { 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: -YY_USER_ACTION -# line 775 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 778 "yaccParser/hslexer.flex" { 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: -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: -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) { @@ -2764,8 +2844,8 @@ YY_USER_ACTION } 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) { @@ -2780,8 +2860,8 @@ YY_USER_ACTION } 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) { @@ -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. + * + * 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: -# line 824 "yaccParser/hslexer.flex" +#line 831 "yaccParser/hslexer.flex" case 188: -YY_USER_ACTION -# line 824 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 831 "yaccParser/hslexer.flex" { noGap = FALSE; } YY_BREAK @@ -2817,34 +2901,34 @@ YY_USER_ACTION */ 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: -# line 839 "yaccParser/hslexer.flex" +#line 846 "yaccParser/hslexer.flex" case 191: -# line 840 "yaccParser/hslexer.flex" +#line 847 "yaccParser/hslexer.flex" case 192: -YY_USER_ACTION -# line 840 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 847 "yaccParser/hslexer.flex" ; 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: -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: -YY_USER_ACTION -# line 843 "yaccParser/hslexer.flex" +YY_RULE_SETUP +#line 850 "yaccParser/hslexer.flex" ; YY_BREAK @@ -2855,8 +2939,8 @@ YY_USER_ACTION */ 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); @@ -2866,8 +2950,8 @@ YY_USER_ACTION } 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); @@ -2877,8 +2961,8 @@ YY_USER_ACTION } 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); @@ -2888,8 +2972,8 @@ YY_USER_ACTION } 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 { @@ -2902,8 +2986,8 @@ YY_USER_ACTION } 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: `\\", @@ -2934,14 +3018,14 @@ YY_USER_ACTION 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): -# line 917 "yaccParser/hslexer.flex" +#line 924 "yaccParser/hslexer.flex" { 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): -# 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): -# 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): -# line 929 "yaccParser/hslexer.flex" +#line 936 "yaccParser/hslexer.flex" { 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): -# line 933 "yaccParser/hslexer.flex" +#line 940 "yaccParser/hslexer.flex" { 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): @@ -2985,7 +3069,7 @@ case YY_STATE_EOF(INITIAL): 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; @@ -3044,7 +3128,7 @@ case YY_STATE_EOF(INITIAL): else { - yy_cp = yy_c_buf_p; + yy_cp = yy_c_buf_p; 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; - register char *source = yytext_ptr - 1; /* copy prev. char, too */ + register char *source = yytext_ptr; 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. */ - 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++); @@ -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; - 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( @@ -3206,7 +3304,7 @@ static int yy_get_next_buffer() 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 ); @@ -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; - /* 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; } @@ -3246,11 +3338,8 @@ static yy_state_type yy_get_previous_state() register yy_state_type yy_current_state; register char *yy_cp; - register char *yy_bp = yytext_ptr; - 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 ) { @@ -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]; - 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]; @@ -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]; - 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_is_jam = (yy_current_state == 837); + yy_is_jam = (yy_current_state == 835); 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 @@ -3333,25 +3423,22 @@ register char *yy_bp; 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" ); } - if ( yy_cp > yy_bp && yy_cp[-1] == '\n' ) - yy_cp[-2] = '\n'; - *--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 @@ -3390,7 +3477,8 @@ static int input() return EOF; } - YY_NEW_FILE; + if ( ! yy_did_buffer_switch_on_eof ) + YY_NEW_FILE; #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_current_buffer->yy_at_bol = (c == '\n'); + return c; } @@ -3491,7 +3581,6 @@ int size; 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()" ); @@ -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 ); - 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; @@ -3518,14 +3608,25 @@ void yy_delete_buffer( b ) YY_BUFFER_STATE b; #endif { + if ( ! b ) + return; + 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 ); } +#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 @@ -3533,33 +3634,148 @@ void yy_init_buffer( b, file ) YY_BUFFER_STATE b; FILE *file; #endif + + { + yy_flush_buffer( b ); + 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. */ + b->yy_ch_buf[0] = 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; + + 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 @@ -3569,7 +3785,7 @@ int new_state; { 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 ); @@ -3590,8 +3806,10 @@ int new_state; BEGIN(new_state); } +#endif +#ifndef YY_NO_POP_STATE 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]); } +#endif +#ifndef YY_NO_TOP_STATE 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 -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 ); - exit( 1 ); + exit( YY_EXIT_FAILURE ); } @@ -3640,11 +3864,11 @@ char msg[]; #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; -const char *s2; +yyconst char *s2; int n; #endif { @@ -3656,24 +3880,31 @@ int n; #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 ) -unsigned int size; +yy_size_t size; #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; -unsigned int size; +yy_size_t size; #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 @@ -3685,7 +3916,15 @@ void *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. */ +extern BOOLEAN acceptPrim; + void -yyinit() +yyinit(void) { - extern BOOLEAN acceptPrim; - input_filename = xstrdup(""); /* We must initialize the input buffer _now_, because we call @@ -3718,9 +3957,8 @@ yyinit() 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); @@ -3740,8 +3978,8 @@ new_filename(f) /* This looks pretty dodgy to me (WDP) */ forcing insertion of ; or } as appropriate */ -BOOLEAN -hsshouldindent() +static BOOLEAN +hsshouldindent(void) { return (!forgetindent && INDENTON); } @@ -3749,7 +3987,7 @@ hsshouldindent() /* 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); @@ -3778,7 +4016,7 @@ hssetindent() /* 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); @@ -3789,16 +4027,15 @@ hsincindent() /* Turn off indentation processing, usually because an explicit "{" has been seen */ void -hsindentoff() +hsindentoff(void) { 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) { @@ -3817,7 +4054,7 @@ hsentercontext(indent) /* Exit a layout context */ void -hsendindent() +hsendindent(void) { --icontexts; #ifdef HSP_DEBUG @@ -3829,9 +4066,8 @@ hsendindent() * 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; @@ -3928,12 +4164,11 @@ yylex() **********************************************************************/ /* setyyin(file) open file as new lex input buffer */ +extern FILE *yyin; + 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]; @@ -3964,10 +4199,8 @@ setyyin(file) #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); @@ -3997,7 +4230,7 @@ int len; } void -setstartlineno() +setstartlineno(void) { startlineno = hsplineno; #if 1/*etags*/ @@ -4023,8 +4256,8 @@ static struct { char *text; } textcache = { 0, 0, NULL }; -static VOID -cleartext() +static void +cleartext(void) { /* 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); */ @@ -4052,13 +4283,8 @@ unsigned length; textcache.next += length; } -static VOID -#ifdef __STDC__ +static void addchar(char c) -#else -addchar(c) - char c; -#endif { /* fprintf(stderr, "addchar: %c\n", c); */ @@ -4070,8 +4296,7 @@ addchar(c) } static char * -fetchtext(length) -unsigned *length; +fetchtext(unsigned *length) { /* fprintf(stderr, "fetchtext: %d\n", textcache.next); */ @@ -4092,10 +4317,8 @@ unsigned *length; 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]; @@ -4105,8 +4328,7 @@ int length; } 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; diff --git a/ghc/compiler/yaccParser/hsparser.tab.c b/ghc/compiler/yaccParser/hsparser.tab.c index 7b0fec0..1fbc148 100644 --- a/ghc/compiler/yaccParser/hsparser.tab.c +++ b/ghc/compiler/yaccParser/hsparser.tab.c @@ -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. */ @@ -143,7 +143,7 @@ * * **********************************************************************/ -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; @@ -185,7 +185,7 @@ extern int startlineno; * * **********************************************************************/ -list fixlist; +/* OLD 95/08: list fixlist; */ 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, - 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 @@ -1601,14 +1601,14 @@ static const short yycheck[] = { 29, -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, - 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 - 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, @@ -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. */ +/* 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__ @@ -1641,7 +1645,7 @@ extern "C" { void *alloca (unsigned int); }; #else /* not __cplusplus */ -void *alloca (unsigned int); +void *alloca (); #endif /* not __cplusplus */ #endif /* __hpux */ #endif /* not _AIX */ @@ -1693,10 +1697,18 @@ while (0) #ifdef YYPURE #ifdef YYLSP_NEEDED +#ifdef YYLEX_PARAM +#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM) +#else #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 +#endif /* not YYLSP_NEEDED */ #endif /* If nonreentrant, generate the variables here */ @@ -1744,14 +1756,14 @@ int yyparse (void); #endif #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 -__yy_bcopy (from, to, count) +__yy_memcpy (from, to, 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 -__yy_bcopy (char *from, char *to, int count) +__yy_memcpy (char *from, char *to, int count) { register char *f = from; register char *t = to; @@ -1782,16 +1794,31 @@ __yy_bcopy (char *from, char *to, int count) #endif #endif -#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 -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 */ - 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 */ @@ -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 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), -#ifdef YYLSP_NEEDED &yyls1, size * sizeof (*yylsp), -#endif &yystacksize); +#else + yyoverflow("parser stack overflow", + &yyss1, size * sizeof (*yyssp), + &yyvs1, size * sizeof (*yyvsp), + &yystacksize); +#endif yyss = yyss1; yyvs = yyvs1; #ifdef YYLSP_NEEDED @@ -1893,12 +1927,12 @@ yynewstate: 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)); - __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)); - __yy_bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp)); + __yy_memcpy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp)); #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]; - 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) @@ -2900,7 +2935,7 @@ case 192: 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;} @@ -3689,10 +3724,7 @@ case 377: 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", @@ -3704,67 +3736,67 @@ case 378: ; 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: -#line 1530 "yaccParser/hsparser.y" +#line 1527 "yaccParser/hsparser.y" { 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: -#line 1541 "yaccParser/hsparser.y" +#line 1538 "yaccParser/hsparser.y" { 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: -#line 1543 "yaccParser/hsparser.y" +#line 1540 "yaccParser/hsparser.y" { 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: -#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: -#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: -#line 1550 "yaccParser/hsparser.y" +#line 1547 "yaccParser/hsparser.y" { 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: -#line 1552 "yaccParser/hsparser.y" +#line 1549 "yaccParser/hsparser.y" { 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: -#line 1556 "yaccParser/hsparser.y" +#line 1553 "yaccParser/hsparser.y" { 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: -#line 1592 "yaccParser/hsparser.y" +#line 1569 "yaccParser/hsparser.y" { yyval.utree = mkinfixop(yyvsp[-1].uid,yyvsp[-2].utree,yyvsp[0].utree); @@ -3778,7 +3810,7 @@ case 398: ; 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); @@ -3792,119 +3824,119 @@ case 400: ; break;} case 401: -#line 1626 "yaccParser/hsparser.y" +#line 1603 "yaccParser/hsparser.y" { 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: -#line 1635 "yaccParser/hsparser.y" +#line 1612 "yaccParser/hsparser.y" { 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: -#line 1644 "yaccParser/hsparser.y" +#line 1621 "yaccParser/hsparser.y" { 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: -#line 1646 "yaccParser/hsparser.y" +#line 1623 "yaccParser/hsparser.y" { 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: -#line 1648 "yaccParser/hsparser.y" +#line 1625 "yaccParser/hsparser.y" { yyval.utree = mkwildp(); ; break;} case 414: -#line 1649 "yaccParser/hsparser.y" +#line 1626 "yaccParser/hsparser.y" { 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: -#line 1654 "yaccParser/hsparser.y" +#line 1631 "yaccParser/hsparser.y" { 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: -#line 1656 "yaccParser/hsparser.y" +#line 1633 "yaccParser/hsparser.y" { 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: -#line 1658 "yaccParser/hsparser.y" +#line 1635 "yaccParser/hsparser.y" { 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: -#line 1662 "yaccParser/hsparser.y" +#line 1639 "yaccParser/hsparser.y" { 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: -#line 1664 "yaccParser/hsparser.y" +#line 1641 "yaccParser/hsparser.y" { 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: -#line 1666 "yaccParser/hsparser.y" +#line 1643 "yaccParser/hsparser.y" { 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: -#line 1671 "yaccParser/hsparser.y" +#line 1648 "yaccParser/hsparser.y" { 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: -#line 1673 "yaccParser/hsparser.y" +#line 1650 "yaccParser/hsparser.y" { 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: -#line 1675 "yaccParser/hsparser.y" +#line 1652 "yaccParser/hsparser.y" { 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 @@ -3912,15 +3944,15 @@ case 433: ; break;} case 434: -#line 1692 "yaccParser/hsparser.y" +#line 1663 "yaccParser/hsparser.y" { 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: -#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 @@ -3928,260 +3960,262 @@ case 436: ; break;} case 437: -#line 1706 "yaccParser/hsparser.y" +#line 1682 "yaccParser/hsparser.y" { 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: -#line 1711 "yaccParser/hsparser.y" +#line 1687 "yaccParser/hsparser.y" { 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: -#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: -#line 1728 "yaccParser/hsparser.y" +#line 1704 "yaccParser/hsparser.y" { 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: -#line 1734 "yaccParser/hsparser.y" +#line 1710 "yaccParser/hsparser.y" { 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: -#line 1738 "yaccParser/hsparser.y" +#line 1714 "yaccParser/hsparser.y" { inpat = TRUE; ; break;} case 447: -#line 1738 "yaccParser/hsparser.y" +#line 1714 "yaccParser/hsparser.y" { 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); - 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; - 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 - yyval.utree = mkqual(yyvsp[-2].utree,yyvsp[0].utree); - } +*/ + } ; break;} case 449: -#line 1757 "yaccParser/hsparser.y" +#line 1735 "yaccParser/hsparser.y" { yyval.utree = yyvsp[0].utree; ; break;} case 450: -#line 1758 "yaccParser/hsparser.y" +#line 1736 "yaccParser/hsparser.y" { yyval.utree = NULL; ; break;} case 451: -#line 1761 "yaccParser/hsparser.y" +#line 1739 "yaccParser/hsparser.y" { 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: -#line 1766 "yaccParser/hsparser.y" +#line 1744 "yaccParser/hsparser.y" { 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: -#line 1771 "yaccParser/hsparser.y" +#line 1749 "yaccParser/hsparser.y" { 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: -#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: -#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: -#line 1779 "yaccParser/hsparser.y" +#line 1757 "yaccParser/hsparser.y" { 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: -#line 1783 "yaccParser/hsparser.y" +#line 1761 "yaccParser/hsparser.y" { 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: -#line 1787 "yaccParser/hsparser.y" +#line 1765 "yaccParser/hsparser.y" { 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: -#line 1797 "yaccParser/hsparser.y" +#line 1775 "yaccParser/hsparser.y" { 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: -#line 1801 "yaccParser/hsparser.y" +#line 1779 "yaccParser/hsparser.y" { 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: -#line 1805 "yaccParser/hsparser.y" +#line 1783 "yaccParser/hsparser.y" { 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: -#line 1810 "yaccParser/hsparser.y" +#line 1788 "yaccParser/hsparser.y" { 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: -#line 1812 "yaccParser/hsparser.y" +#line 1790 "yaccParser/hsparser.y" { yyval.utree = mkwildp(); ; break;} case 478: -#line 1813 "yaccParser/hsparser.y" +#line 1791 "yaccParser/hsparser.y" { 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: -#line 1818 "yaccParser/hsparser.y" +#line 1796 "yaccParser/hsparser.y" { 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: -#line 1820 "yaccParser/hsparser.y" +#line 1798 "yaccParser/hsparser.y" { 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: -#line 1822 "yaccParser/hsparser.y" +#line 1800 "yaccParser/hsparser.y" { 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: -#line 1827 "yaccParser/hsparser.y" +#line 1805 "yaccParser/hsparser.y" { 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: -#line 1829 "yaccParser/hsparser.y" +#line 1807 "yaccParser/hsparser.y" { 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: -#line 1831 "yaccParser/hsparser.y" +#line 1809 "yaccParser/hsparser.y" { 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: -#line 1833 "yaccParser/hsparser.y" +#line 1811 "yaccParser/hsparser.y" { 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: -#line 1835 "yaccParser/hsparser.y" +#line 1813 "yaccParser/hsparser.y" { 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: -#line 1837 "yaccParser/hsparser.y" +#line 1815 "yaccParser/hsparser.y" { 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: -#line 1839 "yaccParser/hsparser.y" +#line 1817 "yaccParser/hsparser.y" { yyval.uliteral = mknoreps(yyvsp[0].uhstring); ; break;} case 499: -#line 1845 "yaccParser/hsparser.y" +#line 1823 "yaccParser/hsparser.y" { setstartlineno(); ; break;} case 500: -#line 1848 "yaccParser/hsparser.y" +#line 1826 "yaccParser/hsparser.y" { setstartlineno(); if(etags) #if 1/*etags*/ @@ -4192,7 +4226,7 @@ case 500: ; break;} case 501: -#line 1858 "yaccParser/hsparser.y" +#line 1836 "yaccParser/hsparser.y" { setstartlineno(); if(etags) #if 1/*etags*/ @@ -4203,7 +4237,7 @@ case 501: ; break;} case 502: -#line 1868 "yaccParser/hsparser.y" +#line 1846 "yaccParser/hsparser.y" { setstartlineno(); #if 1/*etags*/ /* OUT: if(etags) @@ -4215,11 +4249,11 @@ case 502: ; break;} case 503: -#line 1879 "yaccParser/hsparser.y" +#line 1857 "yaccParser/hsparser.y" { setstartlineno(); ; break;} case 504: -#line 1882 "yaccParser/hsparser.y" +#line 1860 "yaccParser/hsparser.y" { setstartlineno(); if(etags) #if 1/*etags*/ @@ -4230,11 +4264,11 @@ case 504: ; break;} case 505: -#line 1892 "yaccParser/hsparser.y" +#line 1870 "yaccParser/hsparser.y" { setstartlineno(); ; break;} case 506: -#line 1895 "yaccParser/hsparser.y" +#line 1873 "yaccParser/hsparser.y" { setstartlineno(); if(etags) #if 1/*etags*/ @@ -4245,117 +4279,117 @@ case 506: ; break;} case 507: -#line 1905 "yaccParser/hsparser.y" +#line 1883 "yaccParser/hsparser.y" { setstartlineno(); ; break;} case 508: -#line 1908 "yaccParser/hsparser.y" +#line 1886 "yaccParser/hsparser.y" { setstartlineno(); ; break;} case 509: -#line 1911 "yaccParser/hsparser.y" +#line 1889 "yaccParser/hsparser.y" { setstartlineno(); ; break;} case 515: -#line 1926 "yaccParser/hsparser.y" +#line 1904 "yaccParser/hsparser.y" { 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: -#line 1936 "yaccParser/hsparser.y" +#line 1914 "yaccParser/hsparser.y" { 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: -#line 1947 "yaccParser/hsparser.y" +#line 1925 "yaccParser/hsparser.y" { 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: -#line 1954 "yaccParser/hsparser.y" +#line 1932 "yaccParser/hsparser.y" { 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: -#line 1960 "yaccParser/hsparser.y" +#line 1938 "yaccParser/hsparser.y" { 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: -#line 1964 "yaccParser/hsparser.y" +#line 1942 "yaccParser/hsparser.y" { 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: -#line 1973 "yaccParser/hsparser.y" +#line 1951 "yaccParser/hsparser.y" { 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: -#line 1978 "yaccParser/hsparser.y" +#line 1956 "yaccParser/hsparser.y" { 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: -#line 1997 "yaccParser/hsparser.y" +#line 1975 "yaccParser/hsparser.y" { hsincindent(); ; break;} case 545: -#line 1999 "yaccParser/hsparser.y" +#line 1977 "yaccParser/hsparser.y" { hssetindent(); ; break;} case 546: -#line 2002 "yaccParser/hsparser.y" +#line 1980 "yaccParser/hsparser.y" { hsindentoff(); ; break;} case 547: -#line 2007 "yaccParser/hsparser.y" +#line 1985 "yaccParser/hsparser.y" { 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: -#line 2013 "yaccParser/hsparser.y" +#line 1991 "yaccParser/hsparser.y" { 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: -#line 2023 "yaccParser/hsparser.y" +#line 2001 "yaccParser/hsparser.y" { 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 */ -#line 457 "/usr/local/gnu/lib/bison.simple" +#line 487 "/usr/local/gnu/share/bison.simple" yyvsp -= yylen; yyssp -= yylen; @@ -4560,7 +4594,7 @@ yyerrhandle: yystate = yyn; goto yynewstate; } -#line 2030 "yaccParser/hsparser.y" +#line 2008 "yaccParser/hsparser.y" /********************************************************************** @@ -4596,13 +4630,13 @@ hsperror(s) yyerror(s); } +extern char *yytext; +extern int yyleng; + 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. */ diff --git a/ghc/compiler/yaccParser/list.c b/ghc/compiler/yaccParser/list.c index 73ce725..9a3c8cb 100644 --- a/ghc/compiler/yaccParser/list.c +++ b/ghc/compiler/yaccParser/list.c @@ -46,7 +46,7 @@ list *Rltl(t) /************** lnil ******************/ -list mklnil() +list mklnil(void) { register struct Slnil *pp = (struct Slnil *) malloc(sizeof(struct Slnil)); diff --git a/ghc/compiler/yaccParser/list.h b/ghc/compiler/yaccParser/list.h index 2eefe33..cbd9014 100644 --- a/ghc/compiler/yaccParser/list.h +++ b/ghc/compiler/yaccParser/list.h @@ -19,6 +19,7 @@ typedef enum { typedef struct { Tlist tag; } *list; #ifdef __GNUC__ +Tlist tlist(list t); extern __inline__ Tlist tlist(list t) { return(t -> tag); @@ -40,6 +41,8 @@ struct Slnil { 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 @@ -55,6 +58,8 @@ extern VOID_STAR *Rlhd PROTO((struct Slcons *)); #define lhd(xyzxyz) (*Rlhd((struct Slcons *) (xyzxyz))) #ifdef __GNUC__ +list *Rltl PROTO((struct Slcons *)); + 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))) -extern list mklnil PROTO(()); +extern list mklnil PROTO((void)); #endif diff --git a/ghc/compiler/yaccParser/literal.h b/ghc/compiler/yaccParser/literal.h index b46d7f5..bf3599f 100644 --- a/ghc/compiler/yaccParser/literal.h +++ b/ghc/compiler/yaccParser/literal.h @@ -30,6 +30,7 @@ typedef enum { typedef struct { Tliteral tag; } *literal; #ifdef __GNUC__ +Tliteral tliteral(literal t); extern __inline__ Tliteral tliteral(literal t) { return(t -> tag); @@ -108,6 +109,8 @@ struct Snoreps { extern literal mkinteger PROTO((stringId)); #ifdef __GNUC__ +stringId *Rginteger PROTO((struct Sinteger *)); + 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__ +stringId *Rgintprim PROTO((struct Sintprim *)); + 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__ +stringId *Rgfloatr PROTO((struct Sfloatr *)); + 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__ +stringId *Rgdoubleprim PROTO((struct Sdoubleprim *)); + 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__ +stringId *Rgfloatprim PROTO((struct Sfloatprim *)); + 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__ +hstring *Rgchar PROTO((struct Scharr *)); + 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__ +hstring *Rgcharprim PROTO((struct Scharprim *)); + 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__ +hstring *Rgstring PROTO((struct Sstring *)); + 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__ +hstring *Rgstringprim PROTO((struct Sstringprim *)); + 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__ +stringId *Rgclitlit PROTO((struct Sclitlit *)); + 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__ +stringId *Rgclitlit_kind PROTO((struct Sclitlit *)); + 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__ +stringId *Rgnorepi PROTO((struct Snorepi *)); + 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__ +stringId *Rgnorepr_n PROTO((struct Snorepr *)); + 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__ +stringId *Rgnorepr_d PROTO((struct Snorepr *)); + 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__ +hstring *Rgnoreps PROTO((struct Snoreps *)); + extern __inline__ hstring *Rgnoreps(struct Snoreps *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/pbinding.h b/ghc/compiler/yaccParser/pbinding.h index 55f14ae..204979c 100644 --- a/ghc/compiler/yaccParser/pbinding.h +++ b/ghc/compiler/yaccParser/pbinding.h @@ -18,6 +18,7 @@ typedef enum { typedef struct { Tpbinding tag; } *pbinding; #ifdef __GNUC__ +Tpbinding tpbinding(pbinding t); 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__ +tree *Rggpat PROTO((struct Spgrhs *)); + 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__ +list *Rggdexprs PROTO((struct Spgrhs *)); + 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__ +binding *Rggbind PROTO((struct Spgrhs *)); + 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__ +stringId *Rggfuncname PROTO((struct Spgrhs *)); + 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__ +long *Rggline PROTO((struct Spgrhs *)); + extern __inline__ long *Rggline(struct Spgrhs *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/tree.c b/ghc/compiler/yaccParser/tree.c index 1fa6533..43d0167 100644 --- a/ghc/compiler/yaccParser/tree.c +++ b/ghc/compiler/yaccParser/tree.c @@ -454,7 +454,7 @@ literal *Rgplusi(t) /************** wildp ******************/ -tree mkwildp() +tree mkwildp(void) { register struct Swildp *pp = (struct Swildp *) malloc(sizeof(struct Swildp)); diff --git a/ghc/compiler/yaccParser/tree.h b/ghc/compiler/yaccParser/tree.h index d0c93c8..0f715d7 100644 --- a/ghc/compiler/yaccParser/tree.h +++ b/ghc/compiler/yaccParser/tree.h @@ -44,6 +44,7 @@ typedef enum { typedef struct { Ttree tag; } *tree; #ifdef __GNUC__ +Ttree ttree(tree t); 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__ +stringId *Rghname PROTO((struct Shmodule *)); + 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__ +list *Rghimplist PROTO((struct Shmodule *)); + 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__ +list *Rghexplist PROTO((struct Shmodule *)); + 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__ +binding *Rghmodlist PROTO((struct Shmodule *)); + 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__ +long *Rghmodline PROTO((struct Shmodule *)); + 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__ +unkId *Rgident PROTO((struct Sident *)); + 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__ +literal *Rglit PROTO((struct Slit *)); + 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__ +list *Rgtuplelist PROTO((struct Stuple *)); + 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__ +tree *Rgfun PROTO((struct Sap *)); + 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__ +tree *Rgarg PROTO((struct Sap *)); + 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__ +list *Rglampats PROTO((struct Slambda *)); + 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__ +tree *Rglamexpr PROTO((struct Slambda *)); + 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__ +long *Rglamline PROTO((struct Slambda *)); + 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__ +binding *Rgletvdeflist PROTO((struct Slet *)); + 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__ +tree *Rgletvexpr PROTO((struct Slet *)); + 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__ +tree *Rgcaseexpr PROTO((struct Scasee *)); + 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__ +list *Rgcasebody PROTO((struct Scasee *)); + 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__ +tree *Rgifpred PROTO((struct Sife *)); + 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__ +tree *Rgifthen PROTO((struct Sife *)); + 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__ +tree *Rgifelse PROTO((struct Sife *)); + 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__ +tree *Rgpare PROTO((struct Spar *)); + 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__ +unkId *Rgasid PROTO((struct Sas *)); + 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__ +tree *Rgase PROTO((struct Sas *)); + 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__ +tree *Rglazyp PROTO((struct Slazyp *)); + 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__ +tree *Rgplusp PROTO((struct Splusp *)); + 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__ +literal *Rgplusi PROTO((struct Splusp *)); + 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))) -extern tree mkwildp PROTO(()); +extern tree mkwildp PROTO((void)); extern tree mkrestr PROTO((tree, ttype)); #ifdef __GNUC__ +tree *Rgrestre PROTO((struct Srestr *)); + 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__ +ttype *Rgrestrt PROTO((struct Srestr *)); + 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__ +tree *Rgcexp PROTO((struct Scomprh *)); + 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__ +list *Rgcquals PROTO((struct Scomprh *)); + 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__ +tree *Rgqpat PROTO((struct Squal *)); + 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__ +tree *Rgqexp PROTO((struct Squal *)); + 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__ +tree *Rggexp PROTO((struct Sguard *)); + 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__ +tree *Rggdef PROTO((struct Sdef *)); + 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__ +infixTree *Rgdummy PROTO((struct Stinfixop *)); + 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__ +tree *Rglsexp PROTO((struct Slsection *)); + 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__ +unkId *Rglsop PROTO((struct Slsection *)); + 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__ +unkId *Rgrsop PROTO((struct Srsection *)); + 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__ +tree *Rgrsexp PROTO((struct Srsection *)); + 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__ +tree *Rgefrom PROTO((struct Seenum *)); + 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__ +list *Rgestep PROTO((struct Seenum *)); + 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__ +list *Rgeto PROTO((struct Seenum *)); + 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__ +list *Rgllist PROTO((struct Sllist *)); + 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__ +stringId *Rgccid PROTO((struct Sccall *)); + 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__ +stringId *Rgccinfo PROTO((struct Sccall *)); + 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__ +list *Rgccargs PROTO((struct Sccall *)); + 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__ +hstring *Rgsccid PROTO((struct Sscc *)); + 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__ +tree *Rgsccexp PROTO((struct Sscc *)); + 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__ +tree *Rgnexp PROTO((struct Snegate *)); + extern __inline__ tree *Rgnexp(struct Snegate *t) { #ifdef UGEN_DEBUG diff --git a/ghc/compiler/yaccParser/ttype.c b/ghc/compiler/yaccParser/ttype.c index caf561b..e31a744 100644 --- a/ghc/compiler/yaccParser/ttype.c +++ b/ghc/compiler/yaccParser/ttype.c @@ -270,7 +270,7 @@ ttype *Rguniforall_ty(t) /************** 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)); diff --git a/ghc/compiler/yaccParser/ttype.h b/ghc/compiler/yaccParser/ttype.h index ced12b6..900c23e 100644 --- a/ghc/compiler/yaccParser/ttype.h +++ b/ghc/compiler/yaccParser/ttype.h @@ -28,6 +28,7 @@ typedef enum { typedef struct { Tttype tag; } *ttype; #ifdef __GNUC__ +Tttype tttype(ttype t); 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__ +unkId *Rgtypeid PROTO((struct Stname *)); + 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__ +list *Rgtypel PROTO((struct Stname *)); + 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__ +unkId *Rgnamedtvar PROTO((struct Snamedtvar *)); + 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__ +ttype *Rgtlist PROTO((struct Stllist *)); + 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__ +list *Rgttuple PROTO((struct Sttuple *)); + 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__ +ttype *Rgtfun PROTO((struct Stfun *)); + 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__ +ttype *Rgtarg PROTO((struct Stfun *)); + 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__ +list *Rgtcontextl PROTO((struct Scontext *)); + 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__ +ttype *Rgtcontextt PROTO((struct Scontext *)); + 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__ +unkId *Rgunidict_clas PROTO((struct Sunidict *)); + 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__ +ttype *Rgunidict_ty PROTO((struct Sunidict *)); + 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__ +unkId *Rgunityvartemplate PROTO((struct Sunityvartemplate *)); + 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__ +list *Rguniforall_tv PROTO((struct Suniforall *)); + 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__ +ttype *Rguniforall_ty PROTO((struct Suniforall *)); + 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))) -extern ttype mkty_maybe_nothing PROTO(()); +extern ttype mkty_maybe_nothing PROTO((void)); 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 diff --git a/ghc/driver/driver.lit b/ghc/driver/driver.lit index e795c81..ca4a876 100644 --- a/ghc/driver/driver.lit +++ b/ghc/driver/driver.lit @@ -19,13 +19,7 @@ \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 diff --git a/ghc/includes/root.lit b/ghc/includes/root.lit index d7c1950..f7d0a97 100644 --- a/ghc/includes/root.lit +++ b/ghc/includes/root.lit @@ -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 -\input{RednCounts.lh} +\input{Ticky.lh} \upsection %------------------------------------------------------------------------ diff --git a/ghc/includes/sparc-sun-sunos4.h b/ghc/includes/sparc-sun-sunos4.h deleted file mode 100644 index aad25c9..0000000 --- a/ghc/includes/sparc-sun-sunos4.h +++ /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 diff --git a/ghc/includes/stgio.h b/ghc/includes/stgio.h index f4708f3..972b96e 100644 --- a/ghc/includes/stgio.h +++ b/ghc/includes/stgio.h @@ -14,7 +14,7 @@ StgInt closeFile PROTO((StgAddr)); 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 *)); diff --git a/ghc/runtime/io/env.lc b/ghc/runtime/io/env.lc index 7ee20c1..f68b0ef 100644 --- a/ghc/runtime/io/env.lc +++ b/ghc/runtime/io/env.lc @@ -27,9 +27,7 @@ int dirtyEnv = 0; */ 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; @@ -78,7 +76,7 @@ copyenv() 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); @@ -110,7 +108,7 @@ char *mapping; 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 */ diff --git a/ghc/runtime/io/execvpe.lc b/ghc/runtime/io/execvpe.lc index 522df19..456d2a3 100644 --- a/ghc/runtime/io/execvpe.lc +++ b/ghc/runtime/io/execvpe.lc @@ -79,7 +79,7 @@ char **envp; } #endif } else - cur = path = strdup(path); + cur = path = strDup(path); if (path == NULL || (bp = buf = malloc(strlen(path)+strlen(name)+2)) == NULL) goto done; diff --git a/ghc/runtime/main/RtsFlags.lc b/ghc/runtime/main/RtsFlags.lc index 1fb72e8..ef646b3 100644 --- a/ghc/runtime/main/RtsFlags.lc +++ b/ghc/runtime/main/RtsFlags.lc @@ -458,20 +458,18 @@ error = rtsTrue; ) case 'p': /* cost centre profiling (time/alloc) */ COST_CENTRE_USING_BUILD_ONLY( - { char ch; 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: - 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; 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 index e64b8fd..0000000 --- a/ghc/runtime/storage/SMcompacting.h +++ /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));