diff --git a/data/skeletons/glr.c b/data/skeletons/glr.c index 0e8f60e9..c3c1a9a4 100644 --- a/data/skeletons/glr.c +++ b/data/skeletons/glr.c @@ -1506,7 +1506,8 @@ yysplitStack (yyGLRStack* yystackp, ptrdiff_t yyk) { yyGLRState** yynewStates = YY_NULLPTR; yybool* yynewLookaheadNeeds; - ptrdiff_t half_max_capacity = YYSIZEMAX / (2 * sizeof yynewStates[0]); + ptrdiff_t state_size = sizeof yynewStates[0]; + ptrdiff_t half_max_capacity = YYSIZEMAX / 2 / state_size; if (half_max_capacity < yystackp->yytops.yycapacity) yyMemoryExhausted (yystackp);