* src/state.h (CORE_ALLOC, SHIFTS_ALLOC, ERRS_ALLOC)

(REDUCTIONS_ALLOC):  New.
* src/LR0.c, src/conflicts.c: Use them to de-obfuscate memory
allocation.
This commit is contained in:
Akim Demaille
2001-11-19 10:29:17 +00:00
parent 6986fd9e3b
commit f59c437a25
4 changed files with 40 additions and 25 deletions

View File

@@ -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_ */