/* $Header$ */ #ifdef LL_DEBUG #include #include #define LL_assert(x) assert(x) #else #define LL_assert(x) /* nothing */ #endif extern int LLsymb; #define LL_SAFE(x) /* Nothing */ #define LL_SSCANDONE(x) if (LLsymb != x) LLerror(x); else #define LL_SCANDONE(x) if (LLsymb != x) LLerror(x); else #define LL_NOSCANDONE(x) LLscan(x) #ifdef LL_FASTER #define LLscan(x) if ((LLsymb = LL_LEXI()) != x) LLerror(x); else #endif extern unsigned int LLscnt[]; extern unsigned int LLtcnt[]; extern int LLcsymb; #define LLsdecr(d) {LL_assert(LLscnt[d] > 0); LLscnt[d]--;} #define LLtdecr(d) {LL_assert(LLtcnt[d] > 0); LLtcnt[d]--;} #define LLsincr(d) LLscnt[d]++ #define LLtincr(d) LLtcnt[d]++