code_calc.code.c (264803) | code_calc.code.c (272655) |
---|---|
1/* original parser id follows */ 2/* yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93" */ | 1/* original parser id follows */ 2/* yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93" */ |
3/* (use YYMAJOR/YYMINOR for ifdefs dependent on parser version) */ | 3/* (use YYMAJOR/YYMINOR for ifdefs dependent of parser version) */ |
4 5#define YYBYACC 1 6#define YYMAJOR 1 7#define YYMINOR 9 8#define YYCHECK "yyyymmdd" 9 10#define YYEMPTY (-1) 11#define yyclearin (yychar = YYEMPTY) --- 365 unchanged lines hidden (view full) --- 377 378/* For use in generated program */ 379#define yydepth (int)(yystack.s_mark - yystack.s_base) 380#if YYBTYACC 381#define yytrial (yyps->save) 382#endif /* YYBTYACC */ 383 384#if YYDEBUG | 4 5#define YYBYACC 1 6#define YYMAJOR 1 7#define YYMINOR 9 8#define YYCHECK "yyyymmdd" 9 10#define YYEMPTY (-1) 11#define yyclearin (yychar = YYEMPTY) --- 365 unchanged lines hidden (view full) --- 377 378/* For use in generated program */ 379#define yydepth (int)(yystack.s_mark - yystack.s_base) 380#if YYBTYACC 381#define yytrial (yyps->save) 382#endif /* YYBTYACC */ 383 384#if YYDEBUG |
385#include <stdio.h> /* needed for printf */ | 385#include <stdio.h> /* needed for printf */ |
386#endif 387 | 386#endif 387 |
388#include <stdlib.h> /* needed for malloc, etc */ 389#include <string.h> /* needed for memset */ | 388#include <stdlib.h> /* needed for malloc, etc */ 389#include <string.h> /* needed for memset */ |
390 391/* allocate initial stack or double stack size, up to YYMAXDEPTH */ 392static int yygrowstack(YYSTACKDATA *data) 393{ 394 int i; 395 unsigned newsize; 396 short *newss; 397 YYSTYPE *newvs; --- 167 unchanged lines hidden (view full) --- 565 yychar = *yylexp++; 566 break; 567 } 568 if (yyps->save) 569 { 570 /* in trial mode; save scanner results for future parse attempts */ 571 if (yylvp == yylvlim) 572 { /* Enlarge lexical value queue */ | 390 391/* allocate initial stack or double stack size, up to YYMAXDEPTH */ 392static int yygrowstack(YYSTACKDATA *data) 393{ 394 int i; 395 unsigned newsize; 396 short *newss; 397 YYSTYPE *newvs; --- 167 unchanged lines hidden (view full) --- 565 yychar = *yylexp++; 566 break; 567 } 568 if (yyps->save) 569 { 570 /* in trial mode; save scanner results for future parse attempts */ 571 if (yylvp == yylvlim) 572 { /* Enlarge lexical value queue */ |
573 int p = yylvp - yylvals; 574 int s = yylvlim - yylvals; | 573 size_t p = (size_t) (yylvp - yylvals); 574 size_t s = (size_t) (yylvlim - yylvals); |
575 576 s += YYLVQUEUEGROWTH; 577 if ((yylexemes = (short *) realloc(yylexemes, s * sizeof(short))) == NULL) goto yyenomem; 578 if ((yylvals = (YYSTYPE *) realloc(yylvals, s * sizeof(YYSTYPE))) == NULL) goto yyenomem; 579#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 580 if ((yylpsns = (YYLTYPE *) realloc(yylpsns, s * sizeof(YYLTYPE))) == NULL) goto yyenomem; 581#endif 582 yylvp = yylve = yylvals + p; --- 79 unchanged lines hidden (view full) --- 662 } 663#endif 664 save = yyNewState((unsigned)(yystack.s_mark - yystack.s_base + 1)); 665 if (save == NULL) goto yyenomem; 666 save->save = yyps->save; 667 save->state = yystate; 668 save->errflag = yyerrflag; 669 save->yystack.s_mark = save->yystack.s_base + (yystack.s_mark - yystack.s_base); | 575 576 s += YYLVQUEUEGROWTH; 577 if ((yylexemes = (short *) realloc(yylexemes, s * sizeof(short))) == NULL) goto yyenomem; 578 if ((yylvals = (YYSTYPE *) realloc(yylvals, s * sizeof(YYSTYPE))) == NULL) goto yyenomem; 579#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 580 if ((yylpsns = (YYLTYPE *) realloc(yylpsns, s * sizeof(YYLTYPE))) == NULL) goto yyenomem; 581#endif 582 yylvp = yylve = yylvals + p; --- 79 unchanged lines hidden (view full) --- 662 } 663#endif 664 save = yyNewState((unsigned)(yystack.s_mark - yystack.s_base + 1)); 665 if (save == NULL) goto yyenomem; 666 save->save = yyps->save; 667 save->state = yystate; 668 save->errflag = yyerrflag; 669 save->yystack.s_mark = save->yystack.s_base + (yystack.s_mark - yystack.s_base); |
670 memcpy (save->yystack.s_base, yystack.s_base, (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); | 670 memcpy (save->yystack.s_base, yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); |
671 save->yystack.l_mark = save->yystack.l_base + (yystack.l_mark - yystack.l_base); | 671 save->yystack.l_mark = save->yystack.l_base + (yystack.l_mark - yystack.l_base); |
672 memcpy (save->yystack.l_base, yystack.l_base, (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); | 672 memcpy (save->yystack.l_base, yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); |
673#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 674 save->yystack.p_mark = save->yystack.p_base + (yystack.p_mark - yystack.p_base); | 673#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 674 save->yystack.p_mark = save->yystack.p_base + (yystack.p_mark - yystack.p_base); |
675 memcpy (save->yystack.p_base, yystack.p_base, (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); | 675 memcpy (save->yystack.p_base, yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); |
676#endif 677 ctry = yytable[yyn]; 678 if (yyctable[ctry] == -1) 679 { 680#if YYDEBUG 681 if (yydebug && yychar >= YYEOF) 682 fprintf(stderr, "%s[%d]: backtracking 1 token\n", YYDEBUGSTR, yydepth); 683#endif --- 38 unchanged lines hidden (view full) --- 722 { 723 yylvp--; 724#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 725 yylpp--; 726#endif 727 yylexp--; 728 yychar = YYEMPTY; 729 } | 676#endif 677 ctry = yytable[yyn]; 678 if (yyctable[ctry] == -1) 679 { 680#if YYDEBUG 681 if (yydebug && yychar >= YYEOF) 682 fprintf(stderr, "%s[%d]: backtracking 1 token\n", YYDEBUGSTR, yydepth); 683#endif --- 38 unchanged lines hidden (view full) --- 722 { 723 yylvp--; 724#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 725 yylpp--; 726#endif 727 yylexp--; 728 yychar = YYEMPTY; 729 } |
730 save->lexeme = yylvp - yylvals; | 730 save->lexeme = (int) (yylvp - yylvals); |
731 yyps->save = save; 732 } 733 if (yytable[yyn] == ctry) 734 { 735#if YYDEBUG 736 if (yydebug) 737 fprintf(stderr, "%s[%d]: state %d, shifting to state %d\n", 738 YYDEBUGSTR, yydepth, yystate, yyctable[ctry]); --- 77 unchanged lines hidden (view full) --- 816 if (yyerrctx) yyFreeState(yyerrctx); 817 /* Create and fill out new saved error context state */ 818 yyerrctx = yyNewState((unsigned)(yystack.s_mark - yystack.s_base + 1)); 819 if (yyerrctx == NULL) goto yyenomem; 820 yyerrctx->save = yyps->save; 821 yyerrctx->state = yystate; 822 yyerrctx->errflag = yyerrflag; 823 yyerrctx->yystack.s_mark = yyerrctx->yystack.s_base + (yystack.s_mark - yystack.s_base); | 731 yyps->save = save; 732 } 733 if (yytable[yyn] == ctry) 734 { 735#if YYDEBUG 736 if (yydebug) 737 fprintf(stderr, "%s[%d]: state %d, shifting to state %d\n", 738 YYDEBUGSTR, yydepth, yystate, yyctable[ctry]); --- 77 unchanged lines hidden (view full) --- 816 if (yyerrctx) yyFreeState(yyerrctx); 817 /* Create and fill out new saved error context state */ 818 yyerrctx = yyNewState((unsigned)(yystack.s_mark - yystack.s_base + 1)); 819 if (yyerrctx == NULL) goto yyenomem; 820 yyerrctx->save = yyps->save; 821 yyerrctx->state = yystate; 822 yyerrctx->errflag = yyerrflag; 823 yyerrctx->yystack.s_mark = yyerrctx->yystack.s_base + (yystack.s_mark - yystack.s_base); |
824 memcpy (yyerrctx->yystack.s_base, yystack.s_base, (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); | 824 memcpy (yyerrctx->yystack.s_base, yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); |
825 yyerrctx->yystack.l_mark = yyerrctx->yystack.l_base + (yystack.l_mark - yystack.l_base); | 825 yyerrctx->yystack.l_mark = yyerrctx->yystack.l_base + (yystack.l_mark - yystack.l_base); |
826 memcpy (yyerrctx->yystack.l_base, yystack.l_base, (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); | 826 memcpy (yyerrctx->yystack.l_base, yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); |
827#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 828 yyerrctx->yystack.p_mark = yyerrctx->yystack.p_base + (yystack.p_mark - yystack.p_base); | 827#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 828 yyerrctx->yystack.p_mark = yyerrctx->yystack.p_base + (yystack.p_mark - yystack.p_base); |
829 memcpy (yyerrctx->yystack.p_base, yystack.p_base, (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); | 829 memcpy (yyerrctx->yystack.p_base, yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); |
830#endif | 830#endif |
831 yyerrctx->lexeme = yylvp - yylvals; | 831 yyerrctx->lexeme = (int) (yylvp - yylvals); |
832 } 833 yylvp = yylvals + save->lexeme; 834#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 835 yylpp = yylpsns + save->lexeme; 836#endif 837 yylexp = yylexemes + save->lexeme; 838 yychar = YYEMPTY; 839 yystack.s_mark = yystack.s_base + (save->yystack.s_mark - save->yystack.s_base); | 832 } 833 yylvp = yylvals + save->lexeme; 834#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 835 yylpp = yylpsns + save->lexeme; 836#endif 837 yylexp = yylexemes + save->lexeme; 838 yychar = YYEMPTY; 839 yystack.s_mark = yystack.s_base + (save->yystack.s_mark - save->yystack.s_base); |
840 memcpy (yystack.s_base, save->yystack.s_base, (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); | 840 memcpy (yystack.s_base, save->yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); |
841 yystack.l_mark = yystack.l_base + (save->yystack.l_mark - save->yystack.l_base); | 841 yystack.l_mark = yystack.l_base + (save->yystack.l_mark - save->yystack.l_base); |
842 memcpy (yystack.l_base, save->yystack.l_base, (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); | 842 memcpy (yystack.l_base, save->yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); |
843#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 844 yystack.p_mark = yystack.p_base + (save->yystack.p_mark - save->yystack.p_base); | 843#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 844 yystack.p_mark = yystack.p_base + (save->yystack.p_mark - save->yystack.p_base); |
845 memcpy (yystack.p_base, save->yystack.p_base, (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); | 845 memcpy (yystack.p_base, save->yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); |
846#endif 847 ctry = ++save->ctry; 848 yystate = save->state; 849 /* We tried shift, try reduce now */ 850 if ((yyn = yyctable[ctry]) >= 0) goto yyreduce; 851 yyps->save = save->save; 852 save->save = NULL; 853 yyFreeState(save); --- 13 unchanged lines hidden (view full) --- 867#endif 868 yylexp = yylexemes + yyerrctx->lexeme; 869 yychar = yylexp[-1]; 870 yylval = yylvp[-1]; 871#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 872 yylloc = yylpp[-1]; 873#endif 874 yystack.s_mark = yystack.s_base + (yyerrctx->yystack.s_mark - yyerrctx->yystack.s_base); | 846#endif 847 ctry = ++save->ctry; 848 yystate = save->state; 849 /* We tried shift, try reduce now */ 850 if ((yyn = yyctable[ctry]) >= 0) goto yyreduce; 851 yyps->save = save->save; 852 save->save = NULL; 853 yyFreeState(save); --- 13 unchanged lines hidden (view full) --- 867#endif 868 yylexp = yylexemes + yyerrctx->lexeme; 869 yychar = yylexp[-1]; 870 yylval = yylvp[-1]; 871#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 872 yylloc = yylpp[-1]; 873#endif 874 yystack.s_mark = yystack.s_base + (yyerrctx->yystack.s_mark - yyerrctx->yystack.s_base); |
875 memcpy (yystack.s_base, yyerrctx->yystack.s_base, (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); | 875 memcpy (yystack.s_base, yyerrctx->yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); |
876 yystack.l_mark = yystack.l_base + (yyerrctx->yystack.l_mark - yyerrctx->yystack.l_base); | 876 yystack.l_mark = yystack.l_base + (yyerrctx->yystack.l_mark - yyerrctx->yystack.l_base); |
877 memcpy (yystack.l_base, yyerrctx->yystack.l_base, (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); | 877 memcpy (yystack.l_base, yyerrctx->yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); |
878#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 879 yystack.p_mark = yystack.p_base + (yyerrctx->yystack.p_mark - yyerrctx->yystack.p_base); | 878#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 879 yystack.p_mark = yystack.p_base + (yyerrctx->yystack.p_mark - yyerrctx->yystack.p_base); |
880 memcpy (yystack.p_base, yyerrctx->yystack.p_base, (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); | 880 memcpy (yystack.p_base, yyerrctx->yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); |
881#endif 882 yystate = yyerrctx->state; 883 yyFreeState(yyerrctx); 884 yyerrctx = NULL; 885 } 886 yynewerrflag = 1; 887 } 888 if (yynewerrflag == 0) goto yyinrecovery; --- 247 unchanged lines hidden (view full) --- 1136 yychar = *yylexp++; 1137 break; 1138 } 1139 if (yyps->save) 1140 { 1141 /* in trial mode; save scanner results for future parse attempts */ 1142 if (yylvp == yylvlim) 1143 { /* Enlarge lexical value queue */ | 881#endif 882 yystate = yyerrctx->state; 883 yyFreeState(yyerrctx); 884 yyerrctx = NULL; 885 } 886 yynewerrflag = 1; 887 } 888 if (yynewerrflag == 0) goto yyinrecovery; --- 247 unchanged lines hidden (view full) --- 1136 yychar = *yylexp++; 1137 break; 1138 } 1139 if (yyps->save) 1140 { 1141 /* in trial mode; save scanner results for future parse attempts */ 1142 if (yylvp == yylvlim) 1143 { /* Enlarge lexical value queue */ |
1144 int p = yylvp - yylvals; 1145 int s = yylvlim - yylvals; | 1144 size_t p = (size_t) (yylvp - yylvals); 1145 size_t s = (size_t) (yylvlim - yylvals); |
1146 1147 s += YYLVQUEUEGROWTH; 1148 if ((yylexemes = (short *) realloc(yylexemes, s * sizeof(short))) == NULL) 1149 goto yyenomem; 1150 if ((yylvals = (YYSTYPE *) realloc(yylvals, s * sizeof(YYSTYPE))) == NULL) 1151 goto yyenomem; 1152#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 1153 if ((yylpsns = (YYLTYPE *) realloc(yylpsns, s * sizeof(YYLTYPE))) == NULL) --- 86 unchanged lines hidden (view full) --- 1240 } 1241 yylvp = yylvals + yypath->lexeme; 1242#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 1243 yylpp = yylpsns + yypath->lexeme; 1244#endif 1245 yylexp = yylexemes + yypath->lexeme; 1246 yychar = YYEMPTY; 1247 yystack.s_mark = yystack.s_base + (yypath->yystack.s_mark - yypath->yystack.s_base); | 1146 1147 s += YYLVQUEUEGROWTH; 1148 if ((yylexemes = (short *) realloc(yylexemes, s * sizeof(short))) == NULL) 1149 goto yyenomem; 1150 if ((yylvals = (YYSTYPE *) realloc(yylvals, s * sizeof(YYSTYPE))) == NULL) 1151 goto yyenomem; 1152#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 1153 if ((yylpsns = (YYLTYPE *) realloc(yylpsns, s * sizeof(YYLTYPE))) == NULL) --- 86 unchanged lines hidden (view full) --- 1240 } 1241 yylvp = yylvals + yypath->lexeme; 1242#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 1243 yylpp = yylpsns + yypath->lexeme; 1244#endif 1245 yylexp = yylexemes + yypath->lexeme; 1246 yychar = YYEMPTY; 1247 yystack.s_mark = yystack.s_base + (yypath->yystack.s_mark - yypath->yystack.s_base); |
1248 memcpy (yystack.s_base, yypath->yystack.s_base, (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); | 1248 memcpy (yystack.s_base, yypath->yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(short)); |
1249 yystack.l_mark = yystack.l_base + (yypath->yystack.l_mark - yypath->yystack.l_base); | 1249 yystack.l_mark = yystack.l_base + (yypath->yystack.l_mark - yypath->yystack.l_base); |
1250 memcpy (yystack.l_base, yypath->yystack.l_base, (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); | 1250 memcpy (yystack.l_base, yypath->yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); |
1251#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 1252 yystack.p_mark = yystack.p_base + (yypath->yystack.p_mark - yypath->yystack.p_base); | 1251#if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) 1252 yystack.p_mark = yystack.p_base + (yypath->yystack.p_mark - yypath->yystack.p_base); |
1253 memcpy (yystack.p_base, yypath->yystack.p_base, (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); | 1253 memcpy (yystack.p_base, yypath->yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); |
1254#endif 1255 yystate = yypath->state; 1256 goto yyloop; 1257#endif /* YYBTYACC */ 1258 1259yyoverflow: 1260 YYERROR_CALL("yacc stack overflow"); 1261#if YYBTYACC --- 67 unchanged lines hidden --- | 1254#endif 1255 yystate = yypath->state; 1256 goto yyloop; 1257#endif /* YYBTYACC */ 1258 1259yyoverflow: 1260 YYERROR_CALL("yacc stack overflow"); 1261#if YYBTYACC --- 67 unchanged lines hidden --- |