X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/aa7815f5c6e8e07a85e47df9cd7b579468969efb..eeeb962b:/src/state.h diff --git a/src/state.h b/src/state.h index f4242555..4c60a271 100644 --- a/src/state.h +++ b/src/state.h @@ -99,7 +99,9 @@ typedef struct core } core; - +#define CORE_ALLOC(Nitems) \ + (core *) xcalloc ((unsigned) (sizeof (core) \ + + (Nitems - 1) * sizeof (short)), 1) typedef struct shifts { @@ -110,6 +112,9 @@ typedef struct shifts } shifts; +#define SHIFTS_ALLOC(Nshifts) \ + (shifts *) xcalloc ((unsigned) (sizeof (shifts) \ + + (Nshifts - 1) * sizeof (short)), 1) typedef struct errs @@ -119,6 +124,10 @@ typedef struct errs } errs; +#define ERRS_ALLOC(Nerrs) \ + (errs *) xcalloc ((unsigned) (sizeof (errs) \ + + (Nerrs - 1) * sizeof (short)), 1) + typedef struct reductions @@ -130,4 +139,8 @@ typedef struct reductions } reductions; +#define REDUCTIONS_ALLOC(Nreductions) \ + (reductions *) xcalloc ((unsigned) (sizeof (reductions) \ + + (Nreductions - 1) * sizeof (short)), 1) + #endif /* !STATE_H_ */