49 #define YYBISON_VERSION "2.4.1"
52 #define YYSKELETON_NAME "yacc.c"
64 #define YYLSP_NEEDED 0
67 #define yyparse citi_parse
68 #define yylex citi_lex
69 #define yyerror citi_error
70 #define yylval citi_lval
71 #define yychar citi_char
72 #define yydebug citi_debug
73 #define yynerrs citi_nerrs
79 #line 3 "parse_citi.y"
113 #define YYERROR_VERBOSE 42
115 #define YYMAXDEPTH 1000000
128 #line 129 "parse_citi.cpp"
136 #ifdef YYERROR_VERBOSE
137 # undef YYERROR_VERBOSE
138 # define YYERROR_VERBOSE 1
140 # define YYERROR_VERBOSE 0
144 #ifndef YYTOKEN_TABLE
145 # define YYTOKEN_TABLE 0
178 #define InvalidCharacter 258
187 #define Identifier 267
191 #define SegListBegin 271
192 #define VarListBegin 272
193 #define SegListEnd 273
194 #define VarListEnd 274
202 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
207 #line 73 "parse_citi.y"
219 #line 220 "parse_citi.cpp"
221 # define YYSTYPE_IS_TRIVIAL 1
222 # define yystype YYSTYPE
223 # define YYSTYPE_IS_DECLARED 1
231 #line 232 "parse_citi.cpp"
245 #elif (defined __STDC__ || defined __C99__FUNC__ \
246 || defined __cplusplus || defined _MSC_VER)
265 # ifdef __SIZE_TYPE__
266 # define YYSIZE_T __SIZE_TYPE__
267 # elif defined size_t
268 # define YYSIZE_T size_t
269 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
270 || defined __cplusplus || defined _MSC_VER)
272 # define YYSIZE_T size_t
274 # define YYSIZE_T unsigned int
278 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
283 # include <libintl.h>
284 # define YY_(msgid) dgettext ("bison-runtime", msgid)
288 # define YY_(msgid) msgid
293 #if ! defined lint || defined __GNUC__
294 # define YYUSE(e) ((void) (e))
303 #if (defined __STDC__ || defined __C99__FUNC__ \
304 || defined __cplusplus || defined _MSC_VER)
317 #if ! defined yyoverflow || YYERROR_VERBOSE
321 # ifdef YYSTACK_USE_ALLOCA
322 # if YYSTACK_USE_ALLOCA
324 # define YYSTACK_ALLOC __builtin_alloca
325 # elif defined __BUILTIN_VA_ARG_INCR
328 # define YYSTACK_ALLOC __alloca
329 # elif defined _MSC_VER
331 # define alloca _alloca
333 # define YYSTACK_ALLOC alloca
334 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
335 || defined __cplusplus || defined _MSC_VER)
345 # ifdef YYSTACK_ALLOC
347 # define YYSTACK_FREE(Ptr) do { ; } while (YYID (0))
348 # ifndef YYSTACK_ALLOC_MAXIMUM
353 # define YYSTACK_ALLOC_MAXIMUM 4032
356 # define YYSTACK_ALLOC YYMALLOC
357 # define YYSTACK_FREE YYFREE
358 # ifndef YYSTACK_ALLOC_MAXIMUM
359 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
361 # if (defined __cplusplus && ! defined _STDLIB_H \
362 && ! ((defined YYMALLOC || defined malloc) \
363 && (defined YYFREE || defined free)))
370 # define YYMALLOC malloc
371 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
372 || defined __cplusplus || defined _MSC_VER)
378 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
379 || defined __cplusplus || defined _MSC_VER)
387 #if (! defined yyoverflow \
388 && (! defined __cplusplus \
389 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
399 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
403 # define YYSTACK_BYTES(N) \
404 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
405 + YYSTACK_GAP_MAXIMUM)
410 # if defined __GNUC__ && 1 < __GNUC__
411 # define YYCOPY(To, From, Count) \
412 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
414 # define YYCOPY(To, From, Count) \
418 for (yyi = 0; yyi < (Count); yyi++) \
419 (To)[yyi] = (From)[yyi]; \
430 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
433 YYSIZE_T yynewbytes; \
434 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
435 Stack = &yyptr->Stack_alloc; \
436 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
437 yyptr += yynewbytes / sizeof (*yyptr); \
459 #define YYMAXUTOK 277
461 #define YYTRANSLATE(YYX) \
462 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
467 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
468 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
469 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
470 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
471 2, 2, 2, 2, 24, 2, 2, 2, 2, 2,
472 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
473 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
474 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
475 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
476 2, 23, 2, 25, 2, 2, 2, 2, 2, 2,
477 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
478 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
479 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
480 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
481 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
482 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
483 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
484 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
485 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
486 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
487 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
488 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
489 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
490 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
491 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
492 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
493 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
494 15, 16, 17, 18, 19, 20, 21, 22
502 0, 0, 3, 5, 6, 9, 12, 15, 20, 21,
503 24, 28, 34, 39, 49, 57, 63, 64, 67, 77,
504 83, 84, 87, 93, 95, 96, 100, 106, 107
510 27, 0, -1, 28, -1, -1, 29, 28, -1, 5,
511 28, -1, 30, 35, -1, 14, 11, 5, 31, -1,
512 -1, 32, 31, -1, 8, 12, 5, -1, 7, 12,
513 15, 13, 5, -1, 6, 12, 15, 5, -1, 6,
514 12, 23, 13, 24, 13, 25, 15, 5, -1, 6,
515 12, 23, 13, 25, 15, 5, -1, 21, 12, 4,
516 33, 5, -1, -1, 4, 33, -1, 16, 5, 22,
517 4, 4, 4, 5, 18, 5, -1, 17, 5, 38,
518 19, 5, -1, -1, 36, 35, -1, 9, 5, 37,
519 10, 5, -1, 34, -1, -1, 4, 5, 37, -1,
520 4, 24, 4, 5, 37, -1, -1, 4, 5, 38,
527 0, 92, 92, 97, 98, 106, 112, 120, 125, 126,
528 137, 141, 148, 154, 162, 169, 174, 175, 180, 183,
529 188, 189, 200, 203, 208, 209, 213, 219, 220
533 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
536 static const char *
const yytname[] =
538 "$end",
"error",
"$undefined",
"InvalidCharacter",
"Float",
"Eol",
539 "DATA",
"VAR",
"NAME",
"Begin",
"End",
"Version",
"Identifier",
540 "Integer",
"CITIFILE",
"VarType",
"SegListBegin",
"VarListBegin",
541 "SegListEnd",
"VarListEnd",
"COMMENT",
"CONSTANT",
"SEG",
"'['",
"','",
542 "']'",
"$accept",
"Input",
"PackageList",
"Package",
"Header",
543 "HeaderList",
"HeaderLine",
"ValueList",
"List",
"DataList",
"Data",
544 "FloatList",
"VarList", 0
553 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
554 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
555 275, 276, 277, 91, 44, 93
562 0, 26, 27, 28, 28, 28, 29, 30, 31, 31,
563 32, 32, 32, 32, 32, 32, 33, 33, 34, 34,
564 35, 35, 36, 36, 37, 37, 37, 38, 38
570 0, 2, 1, 0, 2, 2, 2, 4, 0, 2,
571 3, 5, 4, 9, 7, 5, 0, 2, 9, 5,
572 0, 2, 5, 1, 0, 3, 5, 0, 3
580 3, 3, 0, 0, 2, 3, 20, 5, 0, 1,
581 4, 0, 0, 0, 23, 6, 20, 8, 24, 0,
582 27, 21, 0, 0, 0, 0, 7, 8, 0, 0,
583 0, 0, 0, 0, 0, 0, 0, 9, 24, 0,
584 0, 0, 27, 0, 0, 0, 0, 10, 16, 25,
585 0, 22, 0, 28, 19, 12, 0, 0, 16, 0,
586 24, 0, 0, 0, 11, 17, 15, 26, 0, 0,
587 0, 0, 0, 14, 18, 0, 13
593 -1, 3, 4, 5, 6, 26, 27, 59, 14, 15,
599 #define YYPACT_NINF -39
602 1, 1, 3, 8, -39, 1, -7, -39, 7, -39,
603 -39, 14, 18, 19, -39, -39, -7, -3, 21, 4,
604 23, -39, 16, 17, 20, 22, -39, -3, -4, 25,
605 26, 28, 12, -2, 24, 31, 33, -39, 21, 34,
606 35, 37, 23, 38, 39, 29, 32, -39, 42, -39,
607 43, -39, 45, -39, -39, -39, -8, 46, 42, 47,
608 21, 48, 41, 40, -39, -39, -39, -39, 44, 36,
609 51, 52, 49, -39, -39, 53, -39
615 -39, -39, 6, -39, -39, 50, -39, -11, -39, 54,
623 #define YYTABLE_NINF -1
626 49, 38, 11, 22, 23, 24, 1, 7, 9, 12,
627 13, 10, 17, 44, 8, 2, 62, 63, 25, 18,
628 39, 45, 67, 19, 20, 28, 30, 31, 33, 34,
629 41, 43, 35, 42, 36, 40, 47, 48, 50, 46,
630 51, 52, 56, 54, 55, 57, 58, 65, 60, 61,
631 0, 64, 66, 68, 69, 70, 73, 74, 76, 0,
632 0, 72, 71, 0, 75, 0, 0, 0, 0, 53,
633 21, 0, 0, 0, 0, 0, 0, 37
638 38, 5, 9, 6, 7, 8, 5, 1, 0, 16,
639 17, 5, 5, 15, 11, 14, 24, 25, 21, 5,
640 24, 23, 60, 5, 5, 4, 22, 4, 12, 12,
641 4, 19, 12, 5, 12, 10, 5, 4, 4, 15,
642 5, 4, 13, 5, 5, 13, 4, 58, 5, 4,
643 -1, 5, 5, 5, 13, 15, 5, 5, 5, -1,
644 -1, 25, 18, -1, 15, -1, -1, -1, -1, 42,
645 16, -1, -1, -1, -1, -1, -1, 27
652 0, 5, 14, 27, 28, 29, 30, 28, 11, 0,
653 28, 9, 16, 17, 34, 35, 36, 5, 5, 5,
654 5, 35, 6, 7, 8, 21, 31, 32, 4, 37,
655 22, 4, 38, 12, 12, 12, 12, 31, 5, 24,
656 10, 4, 5, 19, 15, 23, 15, 5, 4, 37,
657 4, 5, 4, 38, 5, 5, 13, 13, 4, 33,
658 5, 4, 24, 25, 5, 33, 5, 37, 5, 13,
659 15, 18, 25, 5, 5, 15, 5
662 #define yyerrok (yyerrstatus = 0)
663 #define yyclearin (yychar = YYEMPTY)
667 #define YYACCEPT goto yyacceptlab
668 #define YYABORT goto yyabortlab
669 #define YYERROR goto yyerrorlab
676 #define YYFAIL goto yyerrlab
678 #define YYRECOVERING() (!!yyerrstatus)
680 #define YYBACKUP(Token, Value) \
682 if (yychar == YYEMPTY && yylen == 1) \
686 yytoken = YYTRANSLATE (yychar); \
692 yyerror (YY_("syntax error: cannot back up")); \
699 #define YYERRCODE 256
706 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
707 #ifndef YYLLOC_DEFAULT
708 # define YYLLOC_DEFAULT(Current, Rhs, N) \
712 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
713 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
714 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
715 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
719 (Current).first_line = (Current).last_line = \
720 YYRHSLOC (Rhs, 0).last_line; \
721 (Current).first_column = (Current).last_column = \
722 YYRHSLOC (Rhs, 0).last_column; \
732 #ifndef YY_LOCATION_PRINT
733 # if YYLTYPE_IS_TRIVIAL
734 # define YY_LOCATION_PRINT(File, Loc) \
735 fprintf (File, "%d.%d-%d.%d", \
736 (Loc).first_line, (Loc).first_column, \
737 (Loc).last_line, (Loc).last_column)
739 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
747 # define YYLEX yylex (YYLEX_PARAM)
749 # define YYLEX yylex ()
757 # define YYFPRINTF fprintf
760 # define YYDPRINTF(Args) \
766 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
770 YYFPRINTF (stderr, "%s ", Title); \
771 yy_symbol_print (stderr, \
773 YYFPRINTF (stderr, "\n"); \
783 #if (defined __STDC__ || defined __C99__FUNC__ \
784 || defined __cplusplus || defined _MSC_VER)
789 yy_symbol_value_print (yyoutput, yytype, yyvaluep)
799 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
815 #if (defined __STDC__ || defined __C99__FUNC__ \
816 || defined __cplusplus || defined _MSC_VER)
818 yy_symbol_print (FILE *yyoutput,
int yytype,
YYSTYPE const *
const yyvaluep)
821 yy_symbol_print (yyoutput, yytype, yyvaluep)
824 YYSTYPE const * const yyvaluep;
828 YYFPRINTF (yyoutput,
"token %s (", yytname[yytype]);
830 YYFPRINTF (yyoutput,
"nterm %s (", yytname[yytype]);
832 yy_symbol_value_print (yyoutput, yytype, yyvaluep);
841 #if (defined __STDC__ || defined __C99__FUNC__ \
842 || defined __cplusplus || defined _MSC_VER)
847 yy_stack_print (yybottom, yytop)
853 for (; yybottom <=
yytop; yybottom++)
855 int yybot = *yybottom;
861 # define YY_STACK_PRINT(Bottom, Top) \
864 yy_stack_print ((Bottom), (Top)); \
872 #if (defined __STDC__ || defined __C99__FUNC__ \
873 || defined __cplusplus || defined _MSC_VER)
878 yy_reduce_print (yyvsp, yyrule)
883 int yynrhs = yyr2[
yyrule];
886 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
889 for (yyi = 0; yyi < yynrhs; yyi++)
892 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
893 &(yyvsp[(yyi + 1) - (yynrhs)])
899 # define YY_REDUCE_PRINT(Rule) \
902 yy_reduce_print (yyvsp, Rule); \
909 # define YYDPRINTF(Args)
910 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
911 # define YY_STACK_PRINT(Bottom, Top)
912 # define YY_REDUCE_PRINT(Rule)
918 # define YYINITDEPTH 200
929 # define YYMAXDEPTH 10000
937 # if defined __GLIBC__ && defined _STRING_H
938 # define yystrlen strlen
941 #if (defined __STDC__ || defined __C99__FUNC__ \
942 || defined __cplusplus || defined _MSC_VER)
944 yystrlen (
const char *yystr)
952 for (yylen = 0; yystr[
yylen]; yylen++)
960 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
961 # define yystpcpy stpcpy
965 #if (defined __STDC__ || defined __C99__FUNC__ \
966 || defined __cplusplus || defined _MSC_VER)
968 yystpcpy (
char *yydest,
const char *
yysrc)
971 yystpcpy (yydest, yysrc)
979 while ((*yyd++ = *yys++) !=
'\0')
996 yytnamerr (
char *yyres,
const char *yystr)
1001 char const *yyp = yystr;
1008 goto do_not_strip_quotes;
1012 goto do_not_strip_quotes;
1025 do_not_strip_quotes: ;
1029 return yystrlen (yystr);
1031 return yystpcpy (yyres, yystr) - yyres;
1043 yysyntax_error (
char *yyresult,
int yystate,
int yychar)
1045 int yyn = yypact[yystate];
1052 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
1055 int yysize_overflow = 0;
1056 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1057 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1063 YY_(
"syntax error, unexpected %s");
1064 YY_(
"syntax error, unexpected %s, expecting %s");
1065 YY_(
"syntax error, unexpected %s, expecting %s or %s");
1066 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s");
1067 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s");
1071 static char const yyunexpected[] =
"syntax error, unexpected %s";
1072 static char const yyexpecting[] =
", expecting %s";
1073 static char const yyor[] =
" or %s";
1074 char yyformat[
sizeof yyunexpected
1075 +
sizeof yyexpecting - 1
1076 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
1077 * (
sizeof yyor - 1))];
1078 char const *yyprefix = yyexpecting;
1082 int yyxbegin = yyn < 0 ? -yyn : 0;
1085 int yychecklim =
YYLAST - yyn + 1;
1089 yyarg[0] = yytname[
yytype];
1090 yyfmt = yystpcpy (yyformat, yyunexpected);
1092 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1093 if (yycheck[yyx + yyn] == yyx && yyx !=
YYTERROR)
1095 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1099 yyformat[
sizeof yyunexpected - 1] =
'\0';
1102 yyarg[yycount++] = yytname[yyx];
1103 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
1104 yysize_overflow |= (yysize1 < yysize);
1106 yyfmt = yystpcpy (yyfmt, yyprefix);
1110 yyf =
YY_(yyformat);
1111 yysize1 = yysize + yystrlen (yyf);
1112 yysize_overflow |= (yysize1 < yysize);
1115 if (yysize_overflow)
1123 char *yyp = yyresult;
1125 while ((*yyp = *yyf) !=
'\0')
1127 if (*yyp ==
'%' && yyf[1] ==
's' && yyi < yycount)
1129 yyp += yytnamerr (yyp, yyarg[yyi++]);
1150 #if (defined __STDC__ || defined __C99__FUNC__ \
1151 || defined __cplusplus || defined _MSC_VER)
1153 yydestruct (
const char *yymsg,
int yytype,
YYSTYPE *yyvaluep)
1156 yydestruct (yymsg, yytype, yyvaluep)
1177 #ifdef YYPARSE_PARAM
1178 #if defined __STDC__ || defined __cplusplus
1179 int yyparse (
void *YYPARSE_PARAM);
1184 #if defined __STDC__ || defined __cplusplus
1207 #ifdef YYPARSE_PARAM
1208 #if (defined __STDC__ || defined __C99__FUNC__ \
1209 || defined __cplusplus || defined _MSC_VER)
1215 void *YYPARSE_PARAM;
1218 #if (defined __STDC__ || defined __C99__FUNC__ \
1219 || defined __cplusplus || defined _MSC_VER)
1265 char *yymsg = yymsgbuf;
1266 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
1269 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1280 YYDPRINTF ((stderr,
"Starting parse\n"));
1307 if (yyss + yystacksize - 1 <= yyssp)
1310 YYSIZE_T yysize = yyssp - yyss + 1;
1324 yyoverflow (
YY_(
"memory exhausted"),
1325 &yyss1, yysize *
sizeof (*yyssp),
1326 &yyvs1, yysize *
sizeof (*yyvsp),
1333 # ifndef YYSTACK_RELOCATE
1334 goto yyexhaustedlab;
1338 goto yyexhaustedlab;
1348 goto yyexhaustedlab;
1351 # undef YYSTACK_RELOCATE
1358 yyssp = yyss + yysize - 1;
1359 yyvsp = yyvs + yysize - 1;
1361 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
1362 (
unsigned long int) yystacksize));
1364 if (yyss + yystacksize - 1 <= yyssp)
1368 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
1384 yyn = yypact[yystate];
1393 YYDPRINTF ((stderr,
"Reading a token: "));
1397 if (yychar <=
YYEOF)
1399 yychar = yytoken =
YYEOF;
1400 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1411 if (yyn < 0 ||
YYLAST < yyn || yycheck[yyn] != yytoken)
1443 yyn = yydefact[yystate];
1464 yyval = yyvsp[1-
yylen];
1473 #line 92 "parse_citi.y"
1482 #line 97 "parse_citi.y"
1483 { (yyval.
p) = NULL; }
1489 #line 98 "parse_citi.y"
1491 if ((yyvsp[(1) - (2)].p)) {
1492 (yyvsp[(1) - (2)].
p)->next = (yyvsp[(2) - (2)].p);
1493 (yyval.
p) = (yyvsp[(1) - (2)].p);
1495 (yyval.
p) = (yyvsp[(2) - (2)].p);
1503 #line 106 "parse_citi.y"
1505 (yyval.
p) = (yyvsp[(2) - (2)].p);
1512 #line 112 "parse_citi.y"
1515 (yyval.
p)->head = (yyvsp[(1) - (2)].h);
1516 (yyval.
p)->
data = (yyvsp[(2) - (2)].v);
1523 #line 120 "parse_citi.y"
1525 (yyval.
h) = (yyvsp[(4) - (4)].h);
1532 #line 125 "parse_citi.y"
1533 { (yyval.
h) = NULL; }
1539 #line 126 "parse_citi.y"
1541 if ((yyvsp[(1) - (2)].h)) {
1542 (yyvsp[(1) - (2)].
h)->next = (yyvsp[(2) - (2)].h);
1543 (yyval.
h) = (yyvsp[(1) - (2)].h);
1545 (yyval.
h) = (yyvsp[(2) - (2)].h);
1553 #line 137 "parse_citi.y"
1556 (yyval.
h)->package = (yyvsp[(2) - (3)].ident);
1563 #line 141 "parse_citi.y"
1566 (yyval.
h)->var = (yyvsp[(2) - (5)].ident);
1567 (yyval.
h)->type = (yyvsp[(3) - (5)].ident);
1568 (yyval.
h)->
n = (yyvsp[(4) - (5)].d);
1569 (yyval.
h)->i1 = (yyval.
h)->i2 = -1;
1576 #line 148 "parse_citi.y"
1579 (yyval.
h)->var = (yyvsp[(2) - (4)].ident);
1580 (yyval.
h)->type = (yyvsp[(3) - (4)].ident);
1581 (yyval.
h)->
n = (yyval.
h)->i1 = (yyval.
h)->i2 = -1;
1588 #line 154 "parse_citi.y"
1591 (yyval.
h)->var = (yyvsp[(2) - (9)].ident);
1592 (yyval.
h)->i1 = (yyvsp[(4) - (9)].d);
1593 (yyval.
h)->i2 = (yyvsp[(6) - (9)].d);
1594 (yyval.
h)->type = (yyvsp[(8) - (9)].ident);
1602 #line 162 "parse_citi.y"
1605 (yyval.
h)->var = (yyvsp[(2) - (7)].ident);
1606 (yyval.
h)->i1 = (yyvsp[(4) - (7)].d);
1607 (yyval.
h)->type = (yyvsp[(6) - (7)].ident);
1608 (yyval.
h)->
n = (yyval.
h)->i2 = -1;
1615 #line 169 "parse_citi.y"
1624 #line 174 "parse_citi.y"
1631 #line 175 "parse_citi.y"
1639 #line 180 "parse_citi.y"
1641 (yyval.
v) =
new vector (
linspace ((yyvsp[(5) - (9)].f), (yyvsp[(4) - (9)].
f), (
int) (yyvsp[(6) - (9)].
f)));
1648 #line 183 "parse_citi.y"
1650 (yyval.
v) = (yyvsp[(3) - (5)].v);
1657 #line 188 "parse_citi.y"
1658 { (yyval.
v) = NULL; }
1664 #line 189 "parse_citi.y"
1666 if ((yyvsp[(1) - (2)].v)) {
1667 (yyvsp[(1) - (2)].
v)->setNext ((yyvsp[(2) - (2)].v));
1668 (yyval.
v) = (yyvsp[(1) - (2)].v);
1670 (yyval.
v) = (yyvsp[(2) - (2)].v);
1678 #line 200 "parse_citi.y"
1680 (yyval.
v) = (yyvsp[(3) - (5)].v);
1687 #line 203 "parse_citi.y"
1689 (yyval.
v) = (yyvsp[(1) - (1)].v);
1696 #line 208 "parse_citi.y"
1697 { (yyval.
v) =
new vector (); }
1703 #line 209 "parse_citi.y"
1705 (yyvsp[(3) - (3)].
v)->add ((yyvsp[(1) - (3)].f));
1706 (yyval.
v) = (yyvsp[(3) - (3)].v);
1713 #line 213 "parse_citi.y"
1715 (yyvsp[(5) - (5)].
v)->add (
rect ((yyvsp[(1) - (5)].f), (yyvsp[(3) - (5)].
f)));
1716 (yyval.
v) = (yyvsp[(5) - (5)].v);
1723 #line 219 "parse_citi.y"
1724 { (yyval.
v) =
new vector (); }
1730 #line 220 "parse_citi.y"
1732 (yyvsp[(3) - (3)].
v)->add ((yyvsp[(1) - (3)].f));
1733 (yyval.
v) = (yyvsp[(3) - (3)].v);
1740 #line 1741 "parse_citi.cpp"
1757 yystate = yypgoto[yyn -
YYNTOKENS] + *yyssp;
1758 if (0 <= yystate && yystate <=
YYLAST && yycheck[yystate] == *yyssp)
1759 yystate = yytable[yystate];
1774 #if ! YYERROR_VERBOSE
1778 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
1784 if (yymsg != yymsgbuf)
1792 yymsg_alloc =
sizeof yymsgbuf;
1796 if (0 < yysize && yysize <= yymsg_alloc)
1798 (void) yysyntax_error (yymsg, yystate, yychar);
1805 goto yyexhaustedlab;
1813 if (yyerrstatus == 3)
1818 if (yychar <=
YYEOF)
1821 if (yychar ==
YYEOF)
1826 yydestruct (
"Error: discarding",
1865 yyn = yypact[yystate];
1882 yydestruct (
"Error: popping",
1883 yystos[yystate], yyvsp);
1913 #if !defined(yyoverflow) || YYERROR_VERBOSE
1925 yydestruct (
"Cleanup: discarding lookahead",
1931 while (yyssp != yyss)
1933 yydestruct (
"Cleanup: popping",
1934 yystos[*yyssp], yyvsp);
1942 if (yymsg != yymsgbuf)
1946 return YYID (yyresult);
1952 #line 226 "parse_citi.y"