1 /* A Bison parser, made by GNU Bison 2.1. */
3 /* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, USA. */
21 /* As a special exception, when this file is copied by Bison into a
22 Bison output file, you may use that output file without restriction.
23 This special exception was added by the Free Software Foundation
24 in version 1.24 of Bison. */
26 /* Written by Richard Stallman by simplifying the original so called
27 ``semantic'' parser. */
29 /* All symbols defined below should begin with yy or YY, to avoid
30 infringing on user name space. This should be done even for local
31 variables, as they might otherwise be expanded by user macros.
32 There are some unavoidable exceptions within include files to
33 define necessary library symbols; they are noted "INFRINGES ON
34 USER NAME SPACE" below. */
36 /* Identify Bison output. */
40 #define YYBISON_VERSION "2.1"
43 #define YYSKELETON_NAME "yacc.c"
48 /* Using locations. */
49 #define YYLSP_NEEDED 0
51 /* Substitute the variable and function names. */
52 #define yyparse Upgradeparse
53 #define yylex Upgradelex
54 #define yyerror Upgradeerror
55 #define yylval Upgradelval
56 #define yychar Upgradechar
57 #define yydebug Upgradedebug
58 #define yynerrs Upgradenerrs
64 /* Put the tokens into the symbol table, so that GDB and other debuggers
90 ZEROINITIALIZER = 281,
133 X86_STDCALLCC_TOK = 324,
134 X86_FASTCALLCC_TOK = 325,
184 EXTRACTELEMENT = 375,
191 #define ESINT64VAL 258
192 #define EUINT64VAL 259
212 #define STRINGCONSTANT 279
213 #define IMPLEMENTATION 280
214 #define ZEROINITIALIZER 281
225 #define DOTDOTDOT 292
232 #define APPENDING 299
233 #define DLLIMPORT 300
234 #define DLLEXPORT 301
235 #define EXTERN_WEAK 302
242 #define POINTERSIZE 309
251 #define SIDEEFFECT 318
254 #define CSRETCC_TOK 321
255 #define FASTCC_TOK 322
256 #define COLDCC_TOK 323
257 #define X86_STDCALLCC_TOK 324
258 #define X86_FASTCALLCC_TOK 325
259 #define DATALAYOUT 326
265 #define UNREACHABLE 332
289 #define GETELEMENTPTR 356
308 #define EXTRACTELEMENT 375
309 #define INSERTELEMENT 376
310 #define SHUFFLEVECTOR 377
316 /* Copy the first part of user declarations. */
317 #line 14 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
319 #define YYERROR_VERBOSE 1
320 #define YYSTYPE std::string*
322 #include "ParserInternals.h"
323 #include <llvm/ADT/StringExtras.h>
324 #include <llvm/System/MappedFile.h>
331 int yylex(); // declaration" of xxx warnings.
334 static std::string CurFilename;
336 static std::ostream *O = 0;
338 void UpgradeAssembly(const std::string &infile, std::ostream &out)
341 CurFilename = infile;
342 llvm::sys::Path p(infile);
343 llvm::sys::MappedFile mf;
346 const char* base = mf.charBase();
347 size_t sz = mf.size();
349 set_scan_bytes(base, sz);
354 std::cerr << "Parse failed.\n";
361 /* Enabling traces. */
366 /* Enabling verbose error messages. */
367 #ifdef YYERROR_VERBOSE
368 # undef YYERROR_VERBOSE
369 # define YYERROR_VERBOSE 1
371 # define YYERROR_VERBOSE 0
374 /* Enabling the token table. */
375 #ifndef YYTOKEN_TABLE
376 # define YYTOKEN_TABLE 0
379 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
381 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
382 # define YYSTYPE_IS_DECLARED 1
383 # define YYSTYPE_IS_TRIVIAL 1
388 /* Copy the second part of user declarations. */
391 /* Line 219 of yacc.c. */
392 #line 393 "UpgradeParser.tab.c"
394 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
395 # define YYSIZE_T __SIZE_TYPE__
397 #if ! defined (YYSIZE_T) && defined (size_t)
398 # define YYSIZE_T size_t
400 #if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
401 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
402 # define YYSIZE_T size_t
404 #if ! defined (YYSIZE_T)
405 # define YYSIZE_T unsigned int
411 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
412 # define YY_(msgid) dgettext ("bison-runtime", msgid)
416 # define YY_(msgid) msgid
420 #if ! defined (yyoverflow) || YYERROR_VERBOSE
422 /* The parser invokes alloca or malloc; define the necessary symbols. */
424 # ifdef YYSTACK_USE_ALLOCA
425 # if YYSTACK_USE_ALLOCA
427 # define YYSTACK_ALLOC __builtin_alloca
429 # define YYSTACK_ALLOC alloca
430 # if defined (__STDC__) || defined (__cplusplus)
431 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
432 # define YYINCLUDED_STDLIB_H
438 # ifdef YYSTACK_ALLOC
439 /* Pacify GCC's `empty if-body' warning. */
440 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
441 # ifndef YYSTACK_ALLOC_MAXIMUM
442 /* The OS might guarantee only one guard page at the bottom of the stack,
443 and a page size can be as small as 4096 bytes. So we cannot safely
444 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
445 to allow for a few compiler-allocated temporary stack slots. */
446 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */
449 # define YYSTACK_ALLOC YYMALLOC
450 # define YYSTACK_FREE YYFREE
451 # ifndef YYSTACK_ALLOC_MAXIMUM
452 # define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
458 # define YYMALLOC malloc
459 # if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \
460 && (defined (__STDC__) || defined (__cplusplus)))
461 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
466 # if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \
467 && (defined (__STDC__) || defined (__cplusplus)))
468 void free (void *); /* INFRINGES ON USER NAME SPACE */
475 #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
478 #if (! defined (yyoverflow) \
479 && (! defined (__cplusplus) \
480 || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
482 /* A type that is properly aligned for any stack member. */
489 /* The size of the maximum gap between one aligned stack and the next. */
490 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
492 /* The size of an array large to enough to hold all stacks, each with
494 # define YYSTACK_BYTES(N) \
495 ((N) * (sizeof (short int) + sizeof (YYSTYPE)) \
496 + YYSTACK_GAP_MAXIMUM)
498 /* Copy COUNT objects from FROM to TO. The source and destination do
501 # if defined (__GNUC__) && 1 < __GNUC__
502 # define YYCOPY(To, From, Count) \
503 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
505 # define YYCOPY(To, From, Count) \
509 for (yyi = 0; yyi < (Count); yyi++) \
510 (To)[yyi] = (From)[yyi]; \
516 /* Relocate STACK from its old location to the new one. The
517 local variables YYSIZE and YYSTACKSIZE give the old and new number of
518 elements in the stack, and YYPTR gives the new location of the
519 stack. Advance YYPTR to a properly aligned location for the next
521 # define YYSTACK_RELOCATE(Stack) \
524 YYSIZE_T yynewbytes; \
525 YYCOPY (&yyptr->Stack, Stack, yysize); \
526 Stack = &yyptr->Stack; \
527 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
528 yyptr += yynewbytes / sizeof (*yyptr); \
534 #if defined (__STDC__) || defined (__cplusplus)
535 typedef signed char yysigned_char;
537 typedef short int yysigned_char;
540 /* YYFINAL -- State number of the termination state. */
542 /* YYLAST -- Last index in YYTABLE. */
545 /* YYNTOKENS -- Number of terminals. */
546 #define YYNTOKENS 138
547 /* YYNNTS -- Number of nonterminals. */
549 /* YYNRULES -- Number of rules. */
551 /* YYNRULES -- Number of states. */
552 #define YYNSTATES 510
554 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
556 #define YYMAXUTOK 378
558 #define YYTRANSLATE(YYX) \
559 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
561 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
562 static const unsigned char yytranslate[] =
564 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
565 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
566 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
567 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
568 127, 128, 136, 2, 125, 2, 2, 2, 2, 2,
569 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
570 132, 124, 133, 2, 2, 2, 2, 2, 2, 2,
571 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
572 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
573 2, 129, 126, 131, 2, 2, 2, 2, 2, 137,
574 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
575 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
576 130, 2, 2, 134, 2, 135, 2, 2, 2, 2,
577 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
578 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
579 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
580 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
581 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
582 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
583 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
584 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
585 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
586 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
587 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
588 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
589 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
590 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
591 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
592 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
593 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
594 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
595 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
596 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
597 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
598 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
599 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
600 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
601 115, 116, 117, 118, 119, 120, 121, 122, 123
605 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
607 static const unsigned short int yyprhs[] =
609 0, 0, 3, 5, 7, 9, 11, 13, 15, 17,
610 19, 21, 23, 25, 27, 29, 31, 33, 35, 37,
611 39, 41, 43, 45, 47, 49, 51, 53, 55, 57,
612 59, 61, 63, 65, 67, 69, 71, 73, 75, 77,
613 79, 82, 83, 85, 87, 89, 91, 93, 95, 97,
614 98, 100, 102, 104, 106, 108, 110, 113, 114, 115,
615 118, 119, 123, 126, 127, 129, 130, 134, 136, 139,
616 141, 143, 145, 147, 149, 151, 153, 155, 157, 159,
617 161, 163, 165, 167, 169, 171, 173, 175, 177, 179,
618 181, 184, 189, 195, 201, 205, 208, 211, 213, 217,
619 219, 223, 225, 226, 231, 235, 239, 244, 249, 253,
620 256, 259, 262, 265, 268, 271, 274, 277, 280, 283,
621 290, 296, 305, 312, 319, 326, 333, 340, 349, 358,
622 362, 364, 366, 368, 370, 373, 376, 381, 384, 386,
623 391, 394, 399, 406, 413, 420, 427, 431, 436, 437,
624 439, 441, 443, 447, 451, 455, 459, 463, 467, 469,
625 470, 472, 474, 476, 477, 480, 484, 486, 488, 492,
626 494, 495, 504, 506, 508, 512, 514, 516, 520, 521,
627 523, 525, 529, 530, 532, 534, 536, 538, 540, 542,
628 544, 546, 548, 552, 554, 560, 562, 564, 566, 568,
629 571, 574, 576, 580, 583, 584, 586, 589, 592, 596,
630 606, 616, 625, 639, 641, 643, 650, 656, 659, 666,
631 674, 676, 680, 682, 683, 686, 688, 694, 700, 706,
632 709, 714, 719, 726, 731, 736, 743, 750, 753, 761,
633 763, 766, 767, 769, 770, 774, 781, 785, 792, 795,
637 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
638 static const short int yyrhs[] =
640 170, 0, -1, 5, -1, 6, -1, 3, -1, 4,
641 -1, 78, -1, 79, -1, 80, -1, 81, -1, 82,
642 -1, 83, -1, 84, -1, 85, -1, 86, -1, 87,
643 -1, 88, -1, 89, -1, 90, -1, 91, -1, 92,
644 -1, 93, -1, 94, -1, 95, -1, 123, -1, 116,
645 -1, 117, -1, 118, -1, 16, -1, 14, -1, 12,
646 -1, 10, -1, 17, -1, 15, -1, 13, -1, 11,
647 -1, 146, -1, 147, -1, 18, -1, 19, -1, 178,
648 124, -1, -1, 41, -1, 42, -1, 43, -1, 44,
649 -1, 45, -1, 46, -1, 47, -1, -1, 65, -1,
650 66, -1, 67, -1, 68, -1, 69, -1, 70, -1,
651 64, 4, -1, -1, -1, 57, 4, -1, -1, 125,
652 57, 4, -1, 34, 24, -1, -1, 155, -1, -1,
653 125, 158, 157, -1, 155, -1, 57, 4, -1, 161,
654 -1, 8, -1, 163, -1, 8, -1, 163, -1, 9,
655 -1, 10, -1, 11, -1, 12, -1, 13, -1, 14,
656 -1, 15, -1, 16, -1, 17, -1, 18, -1, 19,
657 -1, 20, -1, 21, -1, 48, -1, 162, -1, 192,
658 -1, 126, 4, -1, 160, 127, 165, 128, -1, 129,
659 4, 130, 163, 131, -1, 132, 4, 130, 163, 133,
660 -1, 134, 164, 135, -1, 134, 135, -1, 163, 136,
661 -1, 163, -1, 164, 125, 163, -1, 164, -1, 164,
662 125, 37, -1, 37, -1, -1, 161, 129, 168, 131,
663 -1, 161, 129, 131, -1, 161, 137, 24, -1, 161,
664 132, 168, 133, -1, 161, 134, 168, 135, -1, 161,
665 134, 135, -1, 161, 38, -1, 161, 39, -1, 161,
666 192, -1, 161, 167, -1, 161, 26, -1, 146, 140,
667 -1, 147, 4, -1, 9, 27, -1, 9, 28, -1,
668 149, 7, -1, 144, 127, 166, 36, 161, 128, -1,
669 101, 127, 166, 206, 128, -1, 115, 127, 166, 125,
670 166, 125, 166, 128, -1, 141, 127, 166, 125, 166,
671 128, -1, 142, 127, 166, 125, 166, 128, -1, 143,
672 127, 166, 125, 166, 128, -1, 145, 127, 166, 125,
673 166, 128, -1, 120, 127, 166, 125, 166, 128, -1,
674 121, 127, 166, 125, 166, 125, 166, 128, -1, 122,
675 127, 166, 125, 166, 125, 166, 128, -1, 168, 125,
676 166, -1, 166, -1, 32, -1, 33, -1, 171, -1,
677 171, 187, -1, 171, 189, -1, 171, 62, 61, 173,
678 -1, 171, 25, -1, 172, -1, 172, 150, 20, 159,
679 -1, 172, 189, -1, 172, 62, 61, 173, -1, 172,
680 150, 151, 169, 166, 157, -1, 172, 150, 50, 169,
681 161, 157, -1, 172, 150, 45, 169, 161, 157, -1,
682 172, 150, 47, 169, 161, 157, -1, 172, 51, 175,
683 -1, 172, 58, 124, 176, -1, -1, 24, -1, 56,
684 -1, 55, -1, 53, 124, 174, -1, 54, 124, 4,
685 -1, 52, 124, 24, -1, 71, 124, 24, -1, 129,
686 177, 131, -1, 177, 125, 24, -1, 24, -1, -1,
687 22, -1, 24, -1, 178, -1, -1, 161, 179, -1,
688 181, 125, 180, -1, 180, -1, 181, -1, 181, 125,
689 37, -1, 37, -1, -1, 152, 159, 178, 127, 182,
690 128, 156, 153, -1, 29, -1, 134, -1, 151, 183,
691 184, -1, 30, -1, 135, -1, 185, 195, 186, -1,
692 -1, 45, -1, 47, -1, 31, 188, 183, -1, -1,
693 63, -1, 3, -1, 4, -1, 7, -1, 27, -1,
694 28, -1, 38, -1, 39, -1, 26, -1, 132, 168,
695 133, -1, 167, -1, 61, 190, 24, 125, 24, -1,
696 139, -1, 178, -1, 192, -1, 191, -1, 161, 193,
697 -1, 195, 196, -1, 196, -1, 197, 150, 198, -1,
698 197, 200, -1, -1, 23, -1, 72, 194, -1, 72,
699 8, -1, 73, 21, 193, -1, 73, 9, 193, 125,
700 21, 193, 125, 21, 193, -1, 74, 148, 193, 125,
701 21, 193, 129, 199, 131, -1, 74, 148, 193, 125,
702 21, 193, 129, 131, -1, 75, 152, 159, 193, 127,
703 203, 128, 36, 21, 193, 76, 21, 193, -1, 76,
704 -1, 77, -1, 199, 148, 191, 125, 21, 193, -1,
705 148, 191, 125, 21, 193, -1, 150, 205, -1, 161,
706 129, 193, 125, 193, 131, -1, 201, 125, 129, 193,
707 125, 193, 131, -1, 194, -1, 202, 125, 194, -1,
708 202, -1, -1, 60, 59, -1, 59, -1, 141, 161,
709 193, 125, 193, -1, 142, 161, 193, 125, 193, -1,
710 143, 161, 193, 125, 193, -1, 49, 194, -1, 145,
711 194, 125, 194, -1, 144, 194, 36, 161, -1, 115,
712 194, 125, 194, 125, 194, -1, 119, 194, 125, 161,
713 -1, 120, 194, 125, 194, -1, 121, 194, 125, 194,
714 125, 194, -1, 122, 194, 125, 194, 125, 194, -1,
715 114, 201, -1, 204, 152, 159, 193, 127, 203, 128,
716 -1, 208, -1, 125, 202, -1, -1, 35, -1, -1,
717 96, 161, 154, -1, 96, 161, 125, 15, 193, 154,
718 -1, 97, 161, 154, -1, 97, 161, 125, 15, 193,
719 154, -1, 98, 194, -1, 207, 99, 161, 193, -1,
720 207, 100, 194, 125, 161, 193, -1, 101, 161, 193,
724 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
725 static const unsigned short int yyrline[] =
727 0, 89, 89, 89, 90, 90, 94, 94, 94, 94,
728 94, 94, 94, 94, 94, 95, 95, 95, 96, 96,
729 96, 96, 96, 96, 97, 98, 98, 98, 102, 102,
730 102, 102, 103, 103, 103, 103, 104, 104, 105, 105,
731 108, 112, 117, 117, 117, 117, 117, 117, 118, 119,
732 122, 122, 122, 122, 122, 123, 123, 124, 129, 130,
733 133, 134, 142, 148, 149, 152, 153, 162, 163, 176,
734 176, 177, 177, 178, 182, 182, 182, 182, 182, 182,
735 182, 183, 183, 183, 183, 183, 183, 184, 184, 184,
736 188, 192, 197, 203, 209, 214, 217, 225, 225, 232,
737 233, 238, 241, 251, 256, 259, 264, 269, 274, 277,
738 282, 287, 292, 297, 303, 308, 313, 318, 323, 330,
739 335, 337, 339, 341, 343, 345, 347, 349, 351, 356,
740 358, 363, 363, 373, 378, 381, 386, 389, 392, 396,
741 401, 406, 411, 416, 421, 426, 431, 436, 441, 446,
742 448, 448, 451, 456, 461, 466, 473, 480, 485, 486,
743 494, 494, 495, 495, 497, 503, 506, 510, 513, 517,
744 520, 524, 539, 542, 546, 555, 556, 558, 564, 565,
745 566, 570, 580, 582, 585, 585, 585, 585, 585, 586,
746 586, 586, 587, 592, 593, 602, 602, 605, 605, 611,
747 617, 619, 626, 630, 635, 638, 644, 649, 654, 659,
748 665, 671, 677, 686, 691, 697, 702, 709, 716, 721,
749 729, 730, 738, 739, 743, 748, 751, 756, 761, 766,
750 771, 776, 781, 786, 791, 796, 801, 806, 811, 820,
751 825, 829, 833, 834, 837, 844, 851, 858, 865, 870,
756 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
757 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
758 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
759 static const char *const yytname[] =
761 "$end", "error", "$undefined", "ESINT64VAL", "EUINT64VAL", "SINTVAL",
762 "UINTVAL", "FPVAL", "VOID", "BOOL", "SBYTE", "UBYTE", "SHORT", "USHORT",
763 "INT", "UINT", "LONG", "ULONG", "FLOAT", "DOUBLE", "TYPE", "LABEL",
764 "VAR_ID", "LABELSTR", "STRINGCONSTANT", "IMPLEMENTATION",
765 "ZEROINITIALIZER", "TRUETOK", "FALSETOK", "BEGINTOK", "ENDTOK",
766 "DECLARE", "GLOBAL", "CONSTANT", "SECTION", "VOLATILE", "TO",
767 "DOTDOTDOT", "NULL_TOK", "UNDEF", "CONST", "INTERNAL", "LINKONCE",
768 "WEAK", "APPENDING", "DLLIMPORT", "DLLEXPORT", "EXTERN_WEAK", "OPAQUE",
769 "NOT", "EXTERNAL", "TARGET", "TRIPLE", "ENDIAN", "POINTERSIZE", "LITTLE",
770 "BIG", "ALIGN", "DEPLIBS", "CALL", "TAIL", "ASM_TOK", "MODULE",
771 "SIDEEFFECT", "CC_TOK", "CCC_TOK", "CSRETCC_TOK", "FASTCC_TOK",
772 "COLDCC_TOK", "X86_STDCALLCC_TOK", "X86_FASTCALLCC_TOK", "DATALAYOUT",
773 "RET", "BR", "SWITCH", "INVOKE", "UNWIND", "UNREACHABLE", "ADD", "SUB",
774 "MUL", "UDIV", "SDIV", "FDIV", "UREM", "SREM", "FREM", "AND", "OR",
775 "XOR", "SETLE", "SETGE", "SETLT", "SETGT", "SETEQ", "SETNE", "MALLOC",
776 "ALLOCA", "FREE", "LOAD", "STORE", "GETELEMENTPTR", "TRUNC", "ZEXT",
777 "SEXT", "FPTRUNC", "FPEXT", "BITCAST", "UITOFP", "SITOFP", "FPTOUI",
778 "FPTOSI", "INTTOPTR", "PTRTOINT", "PHI_TOK", "SELECT", "SHL", "LSHR",
779 "ASHR", "VAARG", "EXTRACTELEMENT", "INSERTELEMENT", "SHUFFLEVECTOR",
780 "CAST", "'='", "','", "'\\\\'", "'('", "')'", "'['", "'x'", "']'", "'<'",
781 "'>'", "'{'", "'}'", "'*'", "'c'", "$accept", "INTVAL", "EINT64VAL",
782 "ArithmeticOps", "LogicalOps", "SetCondOps", "CastOps", "ShiftOps",
783 "SIntType", "UIntType", "IntType", "FPType", "OptAssign", "OptLinkage",
784 "OptCallingConv", "OptAlign", "OptCAlign", "SectionString", "OptSection",
785 "GlobalVarAttributes", "GlobalVarAttribute", "TypesV", "UpRTypesV",
786 "Types", "PrimType", "UpRTypes", "TypeListI", "ArgTypeListI", "ConstVal",
787 "ConstExpr", "ConstVector", "GlobalType", "Module", "DefinitionList",
788 "ConstPool", "AsmBlock", "BigOrLittle", "TargetDefinition",
789 "LibrariesDefinition", "LibList", "Name", "OptName", "ArgVal",
790 "ArgListH", "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader",
791 "END", "Function", "FnDeclareLinkage", "FunctionProto", "OptSideEffect",
792 "ConstValueRef", "SymbolicValueRef", "ValueRef", "ResolvedVal",
793 "BasicBlockList", "BasicBlock", "InstructionList", "BBTerminatorInst",
794 "JumpTable", "Inst", "PHIList", "ValueRefList", "ValueRefListE",
795 "OptTailCall", "InstVal", "IndexList", "OptVolatile", "MemoryInst", 0
800 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
802 static const unsigned short int yytoknum[] =
804 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
805 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
806 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
807 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
808 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
809 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
810 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
811 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
812 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
813 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
814 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
815 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
816 375, 376, 377, 378, 61, 44, 92, 40, 41, 91,
817 120, 93, 60, 62, 123, 125, 42, 99
821 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
822 static const unsigned char yyr1[] =
824 0, 138, 139, 139, 140, 140, 141, 141, 141, 141,
825 141, 141, 141, 141, 141, 142, 142, 142, 143, 143,
826 143, 143, 143, 143, 144, 145, 145, 145, 146, 146,
827 146, 146, 147, 147, 147, 147, 148, 148, 149, 149,
828 150, 150, 151, 151, 151, 151, 151, 151, 151, 151,
829 152, 152, 152, 152, 152, 152, 152, 152, 153, 153,
830 154, 154, 155, 156, 156, 157, 157, 158, 158, 159,
831 159, 160, 160, 161, 162, 162, 162, 162, 162, 162,
832 162, 162, 162, 162, 162, 162, 162, 163, 163, 163,
833 163, 163, 163, 163, 163, 163, 163, 164, 164, 165,
834 165, 165, 165, 166, 166, 166, 166, 166, 166, 166,
835 166, 166, 166, 166, 166, 166, 166, 166, 166, 167,
836 167, 167, 167, 167, 167, 167, 167, 167, 167, 168,
837 168, 169, 169, 170, 171, 171, 171, 171, 171, 172,
838 172, 172, 172, 172, 172, 172, 172, 172, 172, 173,
839 174, 174, 175, 175, 175, 175, 176, 177, 177, 177,
840 178, 178, 179, 179, 180, 181, 181, 182, 182, 182,
841 182, 183, 184, 184, 185, 186, 186, 187, 188, 188,
842 188, 189, 190, 190, 191, 191, 191, 191, 191, 191,
843 191, 191, 191, 191, 191, 192, 192, 193, 193, 194,
844 195, 195, 196, 197, 197, 197, 198, 198, 198, 198,
845 198, 198, 198, 198, 198, 199, 199, 200, 201, 201,
846 202, 202, 203, 203, 204, 204, 205, 205, 205, 205,
847 205, 205, 205, 205, 205, 205, 205, 205, 205, 205,
848 206, 206, 207, 207, 208, 208, 208, 208, 208, 208,
852 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
853 static const unsigned char yyr2[] =
855 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
856 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
857 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
858 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
859 2, 0, 1, 1, 1, 1, 1, 1, 1, 0,
860 1, 1, 1, 1, 1, 1, 2, 0, 0, 2,
861 0, 3, 2, 0, 1, 0, 3, 1, 2, 1,
862 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
863 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
864 2, 4, 5, 5, 3, 2, 2, 1, 3, 1,
865 3, 1, 0, 4, 3, 3, 4, 4, 3, 2,
866 2, 2, 2, 2, 2, 2, 2, 2, 2, 6,
867 5, 8, 6, 6, 6, 6, 6, 8, 8, 3,
868 1, 1, 1, 1, 2, 2, 4, 2, 1, 4,
869 2, 4, 6, 6, 6, 6, 3, 4, 0, 1,
870 1, 1, 3, 3, 3, 3, 3, 3, 1, 0,
871 1, 1, 1, 0, 2, 3, 1, 1, 3, 1,
872 0, 8, 1, 1, 3, 1, 1, 3, 0, 1,
873 1, 3, 0, 1, 1, 1, 1, 1, 1, 1,
874 1, 1, 3, 1, 5, 1, 1, 1, 1, 2,
875 2, 1, 3, 2, 0, 1, 2, 2, 3, 9,
876 9, 8, 13, 1, 1, 6, 5, 2, 6, 7,
877 1, 3, 1, 0, 2, 1, 5, 5, 5, 2,
878 4, 4, 6, 4, 4, 6, 6, 2, 7, 1,
879 2, 0, 1, 0, 3, 6, 3, 6, 2, 4,
883 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
884 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
885 means the default is an error. */
886 static const unsigned char yydefact[] =
888 148, 0, 49, 138, 1, 137, 178, 42, 43, 44,
889 45, 46, 47, 48, 0, 57, 204, 134, 135, 160,
890 161, 0, 0, 0, 49, 0, 140, 179, 180, 57,
891 0, 0, 50, 51, 52, 53, 54, 55, 0, 0,
892 205, 204, 201, 41, 0, 0, 0, 0, 146, 0,
893 0, 0, 0, 0, 0, 0, 40, 181, 149, 136,
894 56, 2, 3, 70, 74, 75, 76, 77, 78, 79,
895 80, 81, 82, 83, 84, 85, 86, 87, 0, 0,
896 0, 0, 195, 0, 0, 69, 88, 73, 196, 89,
897 172, 173, 174, 175, 176, 177, 200, 243, 203, 0,
898 0, 0, 0, 159, 147, 141, 139, 131, 132, 0,
899 0, 0, 0, 90, 0, 0, 72, 95, 97, 0,
900 0, 102, 96, 242, 0, 225, 0, 0, 0, 0,
901 57, 213, 214, 6, 7, 8, 9, 10, 11, 12,
902 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
903 23, 0, 0, 0, 0, 0, 0, 25, 26, 27,
904 0, 0, 0, 0, 24, 0, 0, 0, 0, 0,
905 202, 57, 217, 0, 239, 154, 151, 150, 152, 153,
906 155, 158, 0, 65, 65, 65, 74, 75, 76, 77,
907 78, 79, 80, 81, 82, 83, 84, 0, 0, 0,
908 0, 65, 0, 0, 0, 94, 170, 101, 99, 0,
909 0, 229, 224, 207, 206, 0, 0, 31, 35, 30,
910 34, 29, 33, 28, 32, 36, 37, 0, 0, 60,
911 60, 248, 0, 0, 237, 0, 0, 0, 0, 0,
912 0, 0, 0, 0, 0, 0, 0, 0, 0, 156,
913 0, 144, 145, 143, 116, 117, 4, 5, 114, 115,
914 118, 113, 109, 110, 0, 0, 0, 0, 0, 0,
915 0, 0, 0, 0, 0, 0, 0, 0, 112, 111,
916 142, 71, 71, 98, 169, 163, 166, 167, 0, 0,
917 91, 184, 185, 186, 191, 187, 188, 189, 190, 182,
918 0, 193, 198, 197, 199, 0, 208, 0, 0, 0,
919 244, 0, 246, 241, 0, 0, 0, 0, 0, 0,
920 0, 0, 0, 0, 0, 0, 0, 0, 0, 157,
921 0, 0, 67, 65, 0, 0, 0, 0, 0, 104,
922 130, 0, 0, 108, 0, 105, 0, 0, 0, 0,
923 0, 92, 93, 162, 164, 0, 63, 100, 183, 0,
924 0, 0, 0, 0, 0, 0, 0, 0, 251, 0,
925 0, 0, 233, 234, 0, 0, 0, 0, 0, 231,
926 230, 0, 249, 0, 62, 68, 66, 241, 0, 0,
927 0, 0, 0, 103, 106, 107, 0, 0, 0, 0,
928 0, 168, 165, 64, 58, 0, 192, 0, 0, 223,
929 60, 61, 60, 220, 240, 0, 0, 0, 0, 0,
930 226, 227, 228, 223, 0, 0, 0, 0, 0, 0,
931 129, 0, 0, 0, 0, 0, 0, 171, 0, 0,
932 0, 222, 0, 0, 245, 247, 0, 0, 0, 232,
933 235, 236, 0, 250, 120, 0, 0, 0, 0, 0,
934 0, 0, 0, 0, 59, 194, 0, 0, 0, 221,
935 218, 0, 238, 0, 126, 0, 0, 122, 123, 124,
936 119, 125, 0, 211, 0, 0, 0, 219, 0, 0,
937 0, 209, 0, 210, 0, 0, 121, 127, 128, 0,
938 0, 0, 0, 0, 0, 216, 0, 0, 215, 212
941 /* YYDEFGOTO[NTERM-NUM]. */
942 static const short int yydefgoto[] =
944 -1, 82, 258, 273, 274, 275, 276, 277, 197, 198,
945 227, 199, 24, 15, 38, 437, 310, 332, 404, 251,
946 333, 83, 84, 200, 86, 87, 119, 209, 340, 301,
947 341, 109, 1, 2, 3, 59, 178, 48, 104, 182,
948 88, 354, 286, 287, 288, 39, 92, 16, 95, 17,
949 29, 18, 359, 302, 89, 304, 413, 41, 42, 43,
950 170, 485, 98, 234, 441, 442, 171, 172, 368, 173,
954 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
956 #define YYPACT_NINF -451
957 static const short int yypact[] =
959 -451, 18, 670, 213, -451, -451, 63, -451, -451, -451,
960 -451, -451, -451, -451, -39, 308, 33, -451, -451, -451,
961 -451, 14, -36, 31, 150, -12, -451, -451, -451, 308,
962 96, 136, -451, -451, -451, -451, -451, -451, 971, -13,
963 -451, -9, -451, 119, 10, 20, 37, 56, -451, 40,
964 96, 971, 45, 45, 45, 45, -451, -451, -451, -451,
965 -451, -451, -451, 52, -451, -451, -451, -451, -451, -451,
966 -451, -451, -451, -451, -451, -451, -451, -451, 177, 179,
967 180, 85, -451, 119, 58, -451, -451, -52, -451, -451,
968 -451, -451, -451, -451, -451, -451, -451, 1123, -451, 163,
969 97, 185, 174, 178, -451, -451, -451, -451, -451, 1019,
970 1019, 1019, 1060, -451, 76, 82, -451, -451, -52, -85,
971 86, 786, -451, -451, 1019, -451, 157, 1101, 30, 278,
972 308, -451, -451, -451, -451, -451, -451, -451, -451, -451,
973 -451, -451, -451, -451, -451, -451, -451, -451, -451, -451,
974 -451, 1019, 1019, 1019, 1019, 1019, 1019, -451, -451, -451,
975 1019, 1019, 1019, 1019, -451, 1019, 1019, 1019, 1019, 1019,
976 -451, 308, -451, 55, -451, -451, -451, -451, -451, -451,
977 -451, -451, -49, 90, 90, 90, 130, 156, 214, 160,
978 217, 162, 218, 168, 220, 224, 225, 170, 221, 227,
979 387, 90, 1019, 1019, 1019, -451, 827, -451, 111, 122,
980 560, -451, -451, 52, -451, 560, 560, -451, -451, -451,
981 -451, -451, -451, -451, -451, -451, -451, 560, 971, 123,
982 126, -451, 560, 118, 127, 128, 140, 141, 142, 143,
983 560, 560, 560, 233, 145, 971, 1019, 1019, 248, -451,
984 -23, -451, -451, -451, -451, -451, -451, -451, -451, -451,
985 -451, -451, -451, -451, 146, 147, 149, 169, 171, 868,
986 1060, 537, 253, 173, 181, 182, 183, 187, -451, -451,
987 -451, -94, 6, -52, -451, 119, -451, 158, 188, 889,
988 -451, -451, -451, -451, -451, -451, -451, -451, -451, 234,
989 1060, -451, -451, -451, -451, 190, -451, 197, 560, -5,
990 -451, 8, -451, 201, 560, 199, 1019, 1019, 1019, 1019,
991 1019, 205, 207, 208, 1019, 1019, 560, 560, 209, -451,
992 282, 303, -451, 90, 1060, 1060, 1060, 1060, 1060, -451,
993 -451, -44, -89, -451, -56, -451, 1060, 1060, 1060, 1060,
994 1060, -451, -451, -451, -451, 930, 304, -451, -451, 313,
995 -14, 320, 323, 219, 560, 344, 560, 1019, -451, 226,
996 560, 228, -451, -451, 229, 230, 560, 560, 560, -451,
997 -451, 222, -451, 1019, -451, -451, -451, 201, 231, 238,
998 239, 241, 1060, -451, -451, -451, 244, 245, 257, 348,
999 261, -451, -451, -451, 330, 263, -451, 560, 560, 1019,
1000 264, -451, 264, -451, 265, 560, 266, 1019, 1019, 1019,
1001 -451, -451, -451, 1019, 560, 267, 1060, 1060, 1060, 1060,
1002 -451, 1060, 1060, 1060, 1019, 1060, 390, -451, 373, 273,
1003 270, 265, 272, 345, -451, -451, 1019, 274, 560, -451,
1004 -451, -451, 275, -451, -451, 276, 279, 281, 285, 284,
1005 286, 287, 288, 290, -451, -451, 383, 15, 384, -451,
1006 -451, 291, -451, 1060, -451, 1060, 1060, -451, -451, -451,
1007 -451, -451, 560, -451, 661, 47, 398, -451, 293, 295,
1008 296, -451, 302, -451, 661, 560, -451, -451, -451, 408,
1009 306, 356, 560, 412, 414, -451, 560, 560, -451, -451
1012 /* YYPGOTO[NTERM-NUM]. */
1013 static const short int yypgoto[] =
1015 -451, -451, -451, 339, 341, 342, 343, 346, -128, -127,
1016 -450, -451, 401, 421, -97, -451, -224, 92, -451, -177,
1017 -451, -46, -451, -38, -451, -66, 328, -451, -108, 250,
1018 -251, 94, -451, -451, -451, 402, -451, -451, -451, -451,
1019 0, -451, 98, -451, -451, 422, -451, -451, -451, -451,
1020 -451, 451, -451, -414, -65, 120, -115, -451, 415, -451,
1021 -451, -451, -451, -451, 88, 34, -451, -451, 71, -451,
1025 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1026 positive, shift that token. If negative, reduce the rule which
1027 number is the opposite. If zero, do what YYDEFACT says.
1028 If YYTABLE_NINF, syntax error. */
1029 #define YYTABLE_NINF -134
1030 static const short int yytable[] =
1032 85, 225, 226, 25, 201, 106, 312, 252, 253, 211,
1033 364, 330, 214, 85, 40, 118, 90, 484, 4, 342,
1034 344, 93, 30, 366, 280, 217, 218, 219, 220, 221,
1035 222, 223, 224, 228, 331, 494, 392, 351, 231, 215,
1036 204, 235, 122, 25, 394, 236, 237, 238, 239, 360,
1037 205, 216, 365, 243, 244, 118, 40, 217, 218, 219,
1038 220, 221, 222, 223, 224, 365, 44, 45, 46, 392,
1039 492, 183, 184, 185, 245, -71, 248, 107, 108, 395,
1040 500, 392, 249, 120, 122, 47, 210, 393, 49, 210,
1041 61, 62, 50, 116, 64, 65, 66, 67, 68, 69,
1042 70, 71, 72, 73, 74, 75, 76, 19, 27, 20,
1043 28, 392, 56, 229, 230, 210, 232, 233, 210, 406,
1044 58, 91, 210, 210, 210, 210, 94, 240, 241, 242,
1045 210, 210, 328, 77, 99, 279, 281, 282, 283, 352,
1046 60, 19, 122, 20, 100, 303, 483, 110, 111, 112,
1047 303, 303, 176, 177, 246, 247, 386, 254, 255, -31,
1048 -31, 101, 303, -30, -30, -29, -29, 303, 285, 103,
1049 51, -28, -28, 256, 257, 303, 303, 303, 493, -72,
1050 102, 113, 308, 114, 115, 121, 444, 175, 445, 179,
1051 85, 7, 8, 9, 10, 52, 12, 53, 180, 326,
1052 54, 371, 181, 373, 374, 375, 202, 85, 327, 210,
1053 380, 78, 203, 206, 79, 250, 212, 80, -35, 81,
1054 117, -34, -33, 283, -32, 259, 387, 388, 389, 390,
1055 391, -38, -39, -41, 260, 19, 289, 20, 396, 397,
1056 398, 399, 400, 303, 6, -41, -41, 314, 309, 303,
1057 290, 311, 315, 316, -41, -41, -41, -41, -41, -41,
1058 -41, 303, 303, -41, 21, 317, 318, 319, 320, 324,
1059 325, 22, 329, 334, 335, 23, 336, 345, 210, 372,
1060 210, 210, 210, 355, 430, 353, 379, 210, 217, 218,
1061 219, 220, 221, 222, 223, 224, 337, 358, 338, 303,
1062 346, 303, 449, 450, 451, 303, 384, 385, 347, 348,
1063 349, 303, 303, 303, 350, 361, 356, 285, 455, 456,
1064 457, 458, 362, 459, 460, 461, 367, 463, 370, 210,
1065 376, 469, 377, 378, 383, 305, 306, 405, 330, 225,
1066 226, 407, 303, 303, 408, 424, 409, 307, 411, 423,
1067 303, 415, 313, 417, 418, 419, 426, 225, 226, 303,
1068 321, 322, 323, 427, 428, 488, 429, 489, 490, 431,
1069 432, 210, 31, 32, 33, 34, 35, 36, 37, 210,
1070 210, 210, 433, 303, 434, 210, 435, 436, 438, 443,
1071 446, 448, 61, 62, 464, 454, 462, 465, 466, 467,
1072 468, 473, 365, 472, 482, 470, 475, 474, 210, 19,
1073 476, 20, 477, 261, 478, 479, 480, 303, 481, 495,
1074 486, 496, 487, 497, 498, 262, 263, 499, 363, 502,
1075 303, 503, 504, 506, 369, 507, 165, 303, 166, 167,
1076 168, 303, 303, 169, 97, 55, 381, 382, 403, 208,
1077 278, 57, 105, 402, 26, 414, 96, 452, 425, 0,
1078 0, 0, 0, 0, 0, 133, 134, 135, 136, 137,
1079 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
1080 148, 149, 150, 0, 410, 0, 412, 0, 264, 0,
1081 416, 0, 0, 0, 0, 0, 420, 421, 422, 0,
1082 0, 0, 265, 157, 158, 159, 0, 266, 267, 268,
1083 164, 0, 0, 0, 0, 0, 269, 0, 0, 270,
1084 0, 271, 0, 0, 272, 0, 0, 439, 440, 0,
1085 0, 0, 0, 0, 0, 447, 0, 0, 0, 0,
1086 0, 0, 61, 62, 453, 116, 186, 187, 188, 189,
1087 190, 191, 192, 193, 194, 195, 196, 75, 76, 19,
1088 0, 20, 0, 291, 292, 61, 62, 293, 471, 0,
1089 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1090 0, 0, 19, 0, 20, 77, 294, 295, 296, 0,
1091 0, 0, 0, 0, 0, 0, 0, 0, 297, 298,
1092 0, 0, 491, 0, 0, 0, 0, 0, 0, 0,
1093 0, 0, 0, 0, 0, 501, 0, 0, 0, 0,
1094 0, 299, 505, 0, 0, 0, 508, 509, 0, 0,
1095 0, 0, 0, 0, 0, 0, 0, 0, 133, 134,
1096 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1097 145, 146, 147, 148, 149, 150, 0, 0, 0, 0,
1098 0, 264, 0, 78, 291, 292, 79, 0, 293, 80,
1099 -133, 81, 343, 0, 0, 265, 157, 158, 159, 0,
1100 266, 267, 268, 164, 0, 0, 0, 294, 295, 296,
1101 0, 0, 300, 0, 0, 5, 0, 0, 0, 297,
1102 298, 6, 0, 0, 0, 0, 0, 0, 0, 0,
1103 0, 7, 8, 9, 10, 11, 12, 13, 0, 0,
1104 0, 0, 299, 0, 0, 0, 0, 0, 0, 0,
1105 0, 0, 14, 0, 0, 0, 0, 0, 0, 133,
1106 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1107 144, 145, 146, 147, 148, 149, 150, 0, 0, 0,
1108 0, 0, 264, 0, 0, 0, 0, 0, 0, 0,
1109 0, 0, 0, 0, 0, 0, 265, 157, 158, 159,
1110 0, 266, 267, 268, 164, 0, 0, 0, 0, 0,
1111 0, 61, 62, 300, 116, 64, 65, 66, 67, 68,
1112 69, 70, 71, 72, 73, 74, 75, 76, 19, 0,
1113 20, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1114 0, 0, 0, 207, 0, 0, 0, 0, 0, 0,
1115 0, 0, 61, 62, 77, 116, 64, 65, 66, 67,
1116 68, 69, 70, 71, 72, 73, 74, 75, 76, 19,
1117 0, 20, 0, 0, 0, 0, 0, 0, 0, 0,
1118 0, 0, 0, 0, 284, 0, 0, 0, 0, 0,
1119 0, 0, 0, 61, 62, 77, 116, 186, 187, 188,
1120 189, 190, 191, 192, 193, 194, 195, 196, 75, 76,
1121 19, 0, 20, 0, 61, 62, 0, 116, 64, 65,
1122 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1123 76, 19, 78, 20, 0, 79, 77, 0, 80, 0,
1124 81, 0, 0, 0, 0, 0, 357, 0, 0, 0,
1125 0, 0, 0, 0, 0, 61, 62, 77, 116, 64,
1126 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1127 75, 76, 19, 78, 20, 0, 79, 0, 0, 80,
1128 0, 81, 0, 0, 0, 0, 0, 401, 0, 0,
1129 0, 0, 0, 0, 0, 0, 61, 62, 77, 63,
1130 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1131 74, 75, 76, 19, 78, 20, 0, 79, 0, 339,
1132 80, 0, 81, 0, 0, 0, 0, 0, 0, 0,
1133 0, 0, 0, 0, 0, 78, 0, 0, 79, 77,
1134 0, 80, 0, 81, 61, 62, 0, 116, 64, 65,
1135 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1136 76, 19, 0, 20, 0, 0, 0, 0, 0, 0,
1137 0, 0, 0, 0, 0, 0, 78, 0, 0, 79,
1138 0, 0, 80, 0, 81, 61, 62, 77, 116, 186,
1139 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1140 75, 76, 19, 0, 20, 0, 0, 0, 0, 0,
1141 0, 0, 0, 0, 0, 0, 0, 78, 0, 0,
1142 79, 0, 0, 80, 0, 81, 61, 62, 77, 213,
1143 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1144 74, 75, 76, 19, 0, 20, 0, 0, 0, 0,
1145 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1146 0, 0, 0, 0, 0, 78, 0, 0, 79, 77,
1147 0, 80, 0, 81, 0, 0, 0, 0, 123, 0,
1148 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1149 0, 0, 124, 0, 0, 0, 0, 0, 0, 0,
1150 0, 0, 125, 126, 0, 0, 78, 0, 0, 79,
1151 0, 0, 80, 0, 81, 127, 128, 129, 130, 131,
1152 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
1153 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
1154 152, 153, 0, 0, 154, 0, 0, 78, 0, 0,
1155 79, 0, 0, 80, 0, 81, 0, 155, 156, 157,
1156 158, 159, 160, 161, 162, 163, 164
1159 static const short int yycheck[] =
1161 38, 129, 129, 3, 112, 51, 230, 184, 185, 124,
1162 15, 34, 127, 51, 23, 81, 29, 467, 0, 270,
1163 271, 30, 61, 15, 201, 10, 11, 12, 13, 14,
1164 15, 16, 17, 130, 57, 485, 125, 131, 153, 9,
1165 125, 156, 136, 43, 133, 160, 161, 162, 163, 300,
1166 135, 21, 57, 168, 169, 121, 23, 10, 11, 12,
1167 13, 14, 15, 16, 17, 57, 52, 53, 54, 125,
1168 484, 109, 110, 111, 171, 127, 125, 32, 33, 135,
1169 494, 125, 131, 83, 136, 71, 124, 131, 124, 127,
1170 5, 6, 61, 8, 9, 10, 11, 12, 13, 14,
1171 15, 16, 17, 18, 19, 20, 21, 22, 45, 24,
1172 47, 125, 124, 151, 152, 153, 154, 155, 156, 133,
1173 24, 134, 160, 161, 162, 163, 135, 165, 166, 167,
1174 168, 169, 247, 48, 124, 200, 202, 203, 204, 133,
1175 4, 22, 136, 24, 124, 210, 131, 53, 54, 55,
1176 215, 216, 55, 56, 99, 100, 333, 27, 28, 3,
1177 4, 124, 227, 3, 4, 3, 4, 232, 206, 129,
1178 20, 3, 4, 3, 4, 240, 241, 242, 131, 127,
1179 124, 4, 228, 4, 4, 127, 410, 24, 412, 4,
1180 228, 41, 42, 43, 44, 45, 46, 47, 24, 245,
1181 50, 316, 24, 318, 319, 320, 130, 245, 246, 247,
1182 325, 126, 130, 127, 129, 125, 59, 132, 4, 134,
1183 135, 4, 4, 289, 4, 4, 334, 335, 336, 337,
1184 338, 7, 7, 20, 7, 22, 125, 24, 346, 347,
1185 348, 349, 350, 308, 31, 32, 33, 129, 125, 314,
1186 128, 125, 125, 125, 41, 42, 43, 44, 45, 46,
1187 47, 326, 327, 50, 51, 125, 125, 125, 125, 36,
1188 125, 58, 24, 127, 127, 62, 127, 24, 316, 317,
1189 318, 319, 320, 125, 392, 285, 324, 325, 10, 11,
1190 12, 13, 14, 15, 16, 17, 127, 63, 127, 364,
1191 127, 366, 417, 418, 419, 370, 24, 4, 127, 127,
1192 127, 376, 377, 378, 127, 125, 128, 355, 426, 427,
1193 428, 429, 125, 431, 432, 433, 125, 435, 129, 367,
1194 125, 446, 125, 125, 125, 215, 216, 24, 34, 467,
1195 467, 21, 407, 408, 21, 383, 127, 227, 4, 127,
1196 415, 125, 232, 125, 125, 125, 125, 485, 485, 424,
1197 240, 241, 242, 125, 125, 473, 125, 475, 476, 125,
1198 125, 409, 64, 65, 66, 67, 68, 69, 70, 417,
1199 418, 419, 125, 448, 36, 423, 125, 57, 125, 125,
1200 125, 125, 5, 6, 4, 128, 434, 24, 125, 129,
1201 128, 125, 57, 128, 21, 131, 125, 128, 446, 22,
1202 125, 24, 128, 26, 128, 128, 128, 482, 128, 21,
1203 36, 128, 131, 128, 128, 38, 39, 125, 308, 21,
1204 495, 125, 76, 21, 314, 21, 97, 502, 97, 97,
1205 97, 506, 507, 97, 43, 24, 326, 327, 356, 121,
1206 200, 29, 50, 355, 3, 367, 41, 423, 387, -1,
1207 -1, -1, -1, -1, -1, 78, 79, 80, 81, 82,
1208 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1209 93, 94, 95, -1, 364, -1, 366, -1, 101, -1,
1210 370, -1, -1, -1, -1, -1, 376, 377, 378, -1,
1211 -1, -1, 115, 116, 117, 118, -1, 120, 121, 122,
1212 123, -1, -1, -1, -1, -1, 129, -1, -1, 132,
1213 -1, 134, -1, -1, 137, -1, -1, 407, 408, -1,
1214 -1, -1, -1, -1, -1, 415, -1, -1, -1, -1,
1215 -1, -1, 5, 6, 424, 8, 9, 10, 11, 12,
1216 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1217 -1, 24, -1, 3, 4, 5, 6, 7, 448, -1,
1218 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1219 -1, -1, 22, -1, 24, 48, 26, 27, 28, -1,
1220 -1, -1, -1, -1, -1, -1, -1, -1, 38, 39,
1221 -1, -1, 482, -1, -1, -1, -1, -1, -1, -1,
1222 -1, -1, -1, -1, -1, 495, -1, -1, -1, -1,
1223 -1, 61, 502, -1, -1, -1, 506, 507, -1, -1,
1224 -1, -1, -1, -1, -1, -1, -1, -1, 78, 79,
1225 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1226 90, 91, 92, 93, 94, 95, -1, -1, -1, -1,
1227 -1, 101, -1, 126, 3, 4, 129, -1, 7, 132,
1228 0, 134, 135, -1, -1, 115, 116, 117, 118, -1,
1229 120, 121, 122, 123, -1, -1, -1, 26, 27, 28,
1230 -1, -1, 132, -1, -1, 25, -1, -1, -1, 38,
1231 39, 31, -1, -1, -1, -1, -1, -1, -1, -1,
1232 -1, 41, 42, 43, 44, 45, 46, 47, -1, -1,
1233 -1, -1, 61, -1, -1, -1, -1, -1, -1, -1,
1234 -1, -1, 62, -1, -1, -1, -1, -1, -1, 78,
1235 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1236 89, 90, 91, 92, 93, 94, 95, -1, -1, -1,
1237 -1, -1, 101, -1, -1, -1, -1, -1, -1, -1,
1238 -1, -1, -1, -1, -1, -1, 115, 116, 117, 118,
1239 -1, 120, 121, 122, 123, -1, -1, -1, -1, -1,
1240 -1, 5, 6, 132, 8, 9, 10, 11, 12, 13,
1241 14, 15, 16, 17, 18, 19, 20, 21, 22, -1,
1242 24, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1243 -1, -1, -1, 37, -1, -1, -1, -1, -1, -1,
1244 -1, -1, 5, 6, 48, 8, 9, 10, 11, 12,
1245 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1246 -1, 24, -1, -1, -1, -1, -1, -1, -1, -1,
1247 -1, -1, -1, -1, 37, -1, -1, -1, -1, -1,
1248 -1, -1, -1, 5, 6, 48, 8, 9, 10, 11,
1249 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1250 22, -1, 24, -1, 5, 6, -1, 8, 9, 10,
1251 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1252 21, 22, 126, 24, -1, 129, 48, -1, 132, -1,
1253 134, -1, -1, -1, -1, -1, 37, -1, -1, -1,
1254 -1, -1, -1, -1, -1, 5, 6, 48, 8, 9,
1255 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1256 20, 21, 22, 126, 24, -1, 129, -1, -1, 132,
1257 -1, 134, -1, -1, -1, -1, -1, 37, -1, -1,
1258 -1, -1, -1, -1, -1, -1, 5, 6, 48, 8,
1259 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
1260 19, 20, 21, 22, 126, 24, -1, 129, -1, 131,
1261 132, -1, 134, -1, -1, -1, -1, -1, -1, -1,
1262 -1, -1, -1, -1, -1, 126, -1, -1, 129, 48,
1263 -1, 132, -1, 134, 5, 6, -1, 8, 9, 10,
1264 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1265 21, 22, -1, 24, -1, -1, -1, -1, -1, -1,
1266 -1, -1, -1, -1, -1, -1, 126, -1, -1, 129,
1267 -1, -1, 132, -1, 134, 5, 6, 48, 8, 9,
1268 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1269 20, 21, 22, -1, 24, -1, -1, -1, -1, -1,
1270 -1, -1, -1, -1, -1, -1, -1, 126, -1, -1,
1271 129, -1, -1, 132, -1, 134, 5, 6, 48, 8,
1272 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
1273 19, 20, 21, 22, -1, 24, -1, -1, -1, -1,
1274 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1275 -1, -1, -1, -1, -1, 126, -1, -1, 129, 48,
1276 -1, 132, -1, 134, -1, -1, -1, -1, 35, -1,
1277 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1278 -1, -1, 49, -1, -1, -1, -1, -1, -1, -1,
1279 -1, -1, 59, 60, -1, -1, 126, -1, -1, 129,
1280 -1, -1, 132, -1, 134, 72, 73, 74, 75, 76,
1281 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1282 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1283 97, 98, -1, -1, 101, -1, -1, 126, -1, -1,
1284 129, -1, -1, 132, -1, 134, -1, 114, 115, 116,
1285 117, 118, 119, 120, 121, 122, 123
1288 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1289 symbol of state STATE-NUM. */
1290 static const unsigned char yystos[] =
1292 0, 170, 171, 172, 0, 25, 31, 41, 42, 43,
1293 44, 45, 46, 47, 62, 151, 185, 187, 189, 22,
1294 24, 51, 58, 62, 150, 178, 189, 45, 47, 188,
1295 61, 64, 65, 66, 67, 68, 69, 70, 152, 183,
1296 23, 195, 196, 197, 52, 53, 54, 71, 175, 124,
1297 61, 20, 45, 47, 50, 151, 124, 183, 24, 173,
1298 4, 5, 6, 8, 9, 10, 11, 12, 13, 14,
1299 15, 16, 17, 18, 19, 20, 21, 48, 126, 129,
1300 132, 134, 139, 159, 160, 161, 162, 163, 178, 192,
1301 29, 134, 184, 30, 135, 186, 196, 150, 200, 124,
1302 124, 124, 124, 129, 176, 173, 159, 32, 33, 169,
1303 169, 169, 169, 4, 4, 4, 8, 135, 163, 164,
1304 178, 127, 136, 35, 49, 59, 60, 72, 73, 74,
1305 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1306 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1307 95, 96, 97, 98, 101, 114, 115, 116, 117, 118,
1308 119, 120, 121, 122, 123, 141, 142, 143, 144, 145,
1309 198, 204, 205, 207, 208, 24, 55, 56, 174, 4,
1310 24, 24, 177, 161, 161, 161, 9, 10, 11, 12,
1311 13, 14, 15, 16, 17, 18, 19, 146, 147, 149,
1312 161, 166, 130, 130, 125, 135, 127, 37, 164, 165,
1313 161, 194, 59, 8, 194, 9, 21, 10, 11, 12,
1314 13, 14, 15, 16, 17, 146, 147, 148, 152, 161,
1315 161, 194, 161, 161, 201, 194, 194, 194, 194, 194,
1316 161, 161, 161, 194, 194, 152, 99, 100, 125, 131,
1317 125, 157, 157, 157, 27, 28, 3, 4, 140, 4,
1318 7, 26, 38, 39, 101, 115, 120, 121, 122, 129,
1319 132, 134, 137, 141, 142, 143, 144, 145, 167, 192,
1320 157, 163, 163, 163, 37, 161, 180, 181, 182, 125,
1321 128, 3, 4, 7, 26, 27, 28, 38, 39, 61,
1322 132, 167, 191, 192, 193, 193, 193, 193, 159, 125,
1323 154, 125, 154, 193, 129, 125, 125, 125, 125, 125,
1324 125, 193, 193, 193, 36, 125, 159, 161, 194, 24,
1325 34, 57, 155, 158, 127, 127, 127, 127, 127, 131,
1326 166, 168, 168, 135, 168, 24, 127, 127, 127, 127,
1327 127, 131, 133, 178, 179, 125, 128, 37, 63, 190,
1328 168, 125, 125, 193, 15, 57, 15, 125, 206, 193,
1329 129, 194, 161, 194, 194, 194, 125, 125, 125, 161,
1330 194, 193, 193, 125, 24, 4, 157, 166, 166, 166,
1331 166, 166, 125, 131, 133, 135, 166, 166, 166, 166,
1332 166, 37, 180, 155, 156, 24, 133, 21, 21, 127,
1333 193, 4, 193, 194, 202, 125, 193, 125, 125, 125,
1334 193, 193, 193, 127, 161, 206, 125, 125, 125, 125,
1335 166, 125, 125, 125, 36, 125, 57, 153, 125, 193,
1336 193, 202, 203, 125, 154, 154, 125, 193, 125, 194,
1337 194, 194, 203, 193, 128, 166, 166, 166, 166, 166,
1338 166, 166, 161, 166, 4, 24, 125, 129, 128, 194,
1339 131, 193, 128, 125, 128, 125, 125, 128, 128, 128,
1340 128, 128, 21, 131, 148, 199, 36, 131, 166, 166,
1341 166, 193, 191, 131, 148, 21, 128, 128, 128, 125,
1342 191, 193, 21, 125, 76, 193, 21, 21, 193, 193
1345 #define yyerrok (yyerrstatus = 0)
1346 #define yyclearin (yychar = YYEMPTY)
1347 #define YYEMPTY (-2)
1350 #define YYACCEPT goto yyacceptlab
1351 #define YYABORT goto yyabortlab
1352 #define YYERROR goto yyerrorlab
1355 /* Like YYERROR except do call yyerror. This remains here temporarily
1356 to ease the transition to the new meaning of YYERROR, for GCC.
1357 Once GCC version 2 has supplanted version 1, this can go. */
1359 #define YYFAIL goto yyerrlab
1361 #define YYRECOVERING() (!!yyerrstatus)
1363 #define YYBACKUP(Token, Value) \
1365 if (yychar == YYEMPTY && yylen == 1) \
1369 yytoken = YYTRANSLATE (yychar); \
1375 yyerror (YY_("syntax error: cannot back up")); \
1382 #define YYERRCODE 256
1385 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
1386 If N is 0, then set CURRENT to the empty location which ends
1387 the previous symbol: RHS[0] (always defined). */
1389 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
1390 #ifndef YYLLOC_DEFAULT
1391 # define YYLLOC_DEFAULT(Current, Rhs, N) \
1395 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
1396 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
1397 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
1398 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
1402 (Current).first_line = (Current).last_line = \
1403 YYRHSLOC (Rhs, 0).last_line; \
1404 (Current).first_column = (Current).last_column = \
1405 YYRHSLOC (Rhs, 0).last_column; \
1411 /* YY_LOCATION_PRINT -- Print the location on the stream.
1412 This macro was not mandated originally: define only if we know
1413 we won't break user code: when these are the locations we know. */
1415 #ifndef YY_LOCATION_PRINT
1416 # if YYLTYPE_IS_TRIVIAL
1417 # define YY_LOCATION_PRINT(File, Loc) \
1418 fprintf (File, "%d.%d-%d.%d", \
1419 (Loc).first_line, (Loc).first_column, \
1420 (Loc).last_line, (Loc).last_column)
1422 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1427 /* YYLEX -- calling `yylex' with the right arguments. */
1430 # define YYLEX yylex (YYLEX_PARAM)
1432 # define YYLEX yylex ()
1435 /* Enable debugging if requested. */
1439 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1440 # define YYFPRINTF fprintf
1443 # define YYDPRINTF(Args) \
1449 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1453 YYFPRINTF (stderr, "%s ", Title); \
1454 yysymprint (stderr, \
1456 YYFPRINTF (stderr, "\n"); \
1460 /*------------------------------------------------------------------.
1461 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
1463 `------------------------------------------------------------------*/
1465 #if defined (__STDC__) || defined (__cplusplus)
1467 yy_stack_print (short int *bottom, short int *top)
1470 yy_stack_print (bottom, top)
1475 YYFPRINTF (stderr, "Stack now");
1476 for (/* Nothing. */; bottom <= top; ++bottom)
1477 YYFPRINTF (stderr, " %d", *bottom);
1478 YYFPRINTF (stderr, "\n");
1481 # define YY_STACK_PRINT(Bottom, Top) \
1484 yy_stack_print ((Bottom), (Top)); \
1488 /*------------------------------------------------.
1489 | Report that the YYRULE is going to be reduced. |
1490 `------------------------------------------------*/
1492 #if defined (__STDC__) || defined (__cplusplus)
1494 yy_reduce_print (int yyrule)
1497 yy_reduce_print (yyrule)
1502 unsigned long int yylno = yyrline[yyrule];
1503 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ",
1505 /* Print the symbols being reduced, and their result. */
1506 for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
1507 YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
1508 YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]);
1511 # define YY_REDUCE_PRINT(Rule) \
1514 yy_reduce_print (Rule); \
1517 /* Nonzero means print parse trace. It is left uninitialized so that
1518 multiple parsers can coexist. */
1520 #else /* !YYDEBUG */
1521 # define YYDPRINTF(Args)
1522 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1523 # define YY_STACK_PRINT(Bottom, Top)
1524 # define YY_REDUCE_PRINT(Rule)
1525 #endif /* !YYDEBUG */
1528 /* YYINITDEPTH -- initial size of the parser's stacks. */
1530 # define YYINITDEPTH 200
1533 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
1534 if the built-in stack extension method is used).
1536 Do not make this value too large; the results are undefined if
1537 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
1538 evaluated with infinite-precision integer arithmetic. */
1541 # define YYMAXDEPTH 10000
1549 # if defined (__GLIBC__) && defined (_STRING_H)
1550 # define yystrlen strlen
1552 /* Return the length of YYSTR. */
1554 # if defined (__STDC__) || defined (__cplusplus)
1555 yystrlen (const char *yystr)
1561 const char *yys = yystr;
1563 while (*yys++ != '\0')
1566 return yys - yystr - 1;
1572 # if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
1573 # define yystpcpy stpcpy
1575 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
1578 # if defined (__STDC__) || defined (__cplusplus)
1579 yystpcpy (char *yydest, const char *yysrc)
1581 yystpcpy (yydest, yysrc)
1587 const char *yys = yysrc;
1589 while ((*yyd++ = *yys++) != '\0')
1598 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
1599 quotes and backslashes, so that it's suitable for yyerror. The
1600 heuristic is that double-quoting is unnecessary unless the string
1601 contains an apostrophe, a comma, or backslash (other than
1602 backslash-backslash). YYSTR is taken from yytname. If YYRES is
1603 null, do not copy; instead, return the length of what the result
1606 yytnamerr (char *yyres, const char *yystr)
1611 char const *yyp = yystr;
1618 goto do_not_strip_quotes;
1622 goto do_not_strip_quotes;
1635 do_not_strip_quotes: ;
1639 return yystrlen (yystr);
1641 return yystpcpy (yyres, yystr) - yyres;
1645 #endif /* YYERROR_VERBOSE */
1650 /*--------------------------------.
1651 | Print this symbol on YYOUTPUT. |
1652 `--------------------------------*/
1654 #if defined (__STDC__) || defined (__cplusplus)
1656 yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
1659 yysymprint (yyoutput, yytype, yyvaluep)
1665 /* Pacify ``unused variable'' warnings. */
1668 if (yytype < YYNTOKENS)
1669 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
1671 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
1675 if (yytype < YYNTOKENS)
1676 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1683 YYFPRINTF (yyoutput, ")");
1686 #endif /* ! YYDEBUG */
1687 /*-----------------------------------------------.
1688 | Release the memory associated to this symbol. |
1689 `-----------------------------------------------*/
1691 #if defined (__STDC__) || defined (__cplusplus)
1693 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
1696 yydestruct (yymsg, yytype, yyvaluep)
1702 /* Pacify ``unused variable'' warnings. */
1707 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
1718 /* Prevent warnings from -Wmissing-prototypes. */
1720 #ifdef YYPARSE_PARAM
1721 # if defined (__STDC__) || defined (__cplusplus)
1722 int yyparse (void *YYPARSE_PARAM);
1726 #else /* ! YYPARSE_PARAM */
1727 #if defined (__STDC__) || defined (__cplusplus)
1732 #endif /* ! YYPARSE_PARAM */
1736 /* The look-ahead symbol. */
1739 /* The semantic value of the look-ahead symbol. */
1742 /* Number of syntax errors so far. */
1751 #ifdef YYPARSE_PARAM
1752 # if defined (__STDC__) || defined (__cplusplus)
1753 int yyparse (void *YYPARSE_PARAM)
1755 int yyparse (YYPARSE_PARAM)
1756 void *YYPARSE_PARAM;
1758 #else /* ! YYPARSE_PARAM */
1759 #if defined (__STDC__) || defined (__cplusplus)
1773 /* Number of tokens to shift before error messages enabled. */
1775 /* Look-ahead token as an internal (translated) token number. */
1778 /* Three stacks and their tools:
1779 `yyss': related to states,
1780 `yyvs': related to semantic values,
1781 `yyls': related to locations.
1783 Refer to the stacks thru separate pointers, to allow yyoverflow
1784 to reallocate them elsewhere. */
1786 /* The state stack. */
1787 short int yyssa[YYINITDEPTH];
1788 short int *yyss = yyssa;
1791 /* The semantic value stack. */
1792 YYSTYPE yyvsa[YYINITDEPTH];
1793 YYSTYPE *yyvs = yyvsa;
1798 #define YYPOPSTACK (yyvsp--, yyssp--)
1800 YYSIZE_T yystacksize = YYINITDEPTH;
1802 /* The variables used to return semantic value and location from the
1807 /* When reducing, the number of symbols on the RHS of the reduced
1811 YYDPRINTF ((stderr, "Starting parse\n"));
1816 yychar = YYEMPTY; /* Cause a token to be read. */
1818 /* Initialize stack pointers.
1819 Waste one element of value and location stack
1820 so that they stay on the same level as the state stack.
1821 The wasted elements are never initialized. */
1828 /*------------------------------------------------------------.
1829 | yynewstate -- Push a new state, which is found in yystate. |
1830 `------------------------------------------------------------*/
1832 /* In all cases, when you get here, the value and location stacks
1833 have just been pushed. so pushing a state here evens the stacks.
1840 if (yyss + yystacksize - 1 <= yyssp)
1842 /* Get the current used size of the three stacks, in elements. */
1843 YYSIZE_T yysize = yyssp - yyss + 1;
1847 /* Give user a chance to reallocate the stack. Use copies of
1848 these so that the &'s don't force the real ones into
1850 YYSTYPE *yyvs1 = yyvs;
1851 short int *yyss1 = yyss;
1854 /* Each stack pointer address is followed by the size of the
1855 data in use in that stack, in bytes. This used to be a
1856 conditional around just the two extra args, but that might
1857 be undefined if yyoverflow is a macro. */
1858 yyoverflow (YY_("memory exhausted"),
1859 &yyss1, yysize * sizeof (*yyssp),
1860 &yyvs1, yysize * sizeof (*yyvsp),
1867 #else /* no yyoverflow */
1868 # ifndef YYSTACK_RELOCATE
1869 goto yyexhaustedlab;
1871 /* Extend the stack our own way. */
1872 if (YYMAXDEPTH <= yystacksize)
1873 goto yyexhaustedlab;
1875 if (YYMAXDEPTH < yystacksize)
1876 yystacksize = YYMAXDEPTH;
1879 short int *yyss1 = yyss;
1880 union yyalloc *yyptr =
1881 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
1883 goto yyexhaustedlab;
1884 YYSTACK_RELOCATE (yyss);
1885 YYSTACK_RELOCATE (yyvs);
1887 # undef YYSTACK_RELOCATE
1889 YYSTACK_FREE (yyss1);
1892 #endif /* no yyoverflow */
1894 yyssp = yyss + yysize - 1;
1895 yyvsp = yyvs + yysize - 1;
1898 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
1899 (unsigned long int) yystacksize));
1901 if (yyss + yystacksize - 1 <= yyssp)
1905 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
1914 /* Do appropriate processing given the current state. */
1915 /* Read a look-ahead token if we need one and don't already have one. */
1918 /* First try to decide what to do without reference to look-ahead token. */
1920 yyn = yypact[yystate];
1921 if (yyn == YYPACT_NINF)
1924 /* Not known => get a look-ahead token if don't already have one. */
1926 /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
1927 if (yychar == YYEMPTY)
1929 YYDPRINTF ((stderr, "Reading a token: "));
1933 if (yychar <= YYEOF)
1935 yychar = yytoken = YYEOF;
1936 YYDPRINTF ((stderr, "Now at end of input.\n"));
1940 yytoken = YYTRANSLATE (yychar);
1941 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
1944 /* If the proper action on seeing token YYTOKEN is to reduce or to
1945 detect an error, take that action. */
1947 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
1952 if (yyn == 0 || yyn == YYTABLE_NINF)
1961 /* Shift the look-ahead token. */
1962 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
1964 /* Discard the token being shifted unless it is eof. */
1965 if (yychar != YYEOF)
1971 /* Count tokens shifted since error; after three, turn off error
1980 /*-----------------------------------------------------------.
1981 | yydefault -- do the default action for the current state. |
1982 `-----------------------------------------------------------*/
1984 yyn = yydefact[yystate];
1990 /*-----------------------------.
1991 | yyreduce -- Do a reduction. |
1992 `-----------------------------*/
1994 /* yyn is the number of a rule to reduce with. */
1997 /* If YYLEN is nonzero, implement the default value of the action:
2000 Otherwise, the following line sets YYVAL to garbage.
2001 This behavior is undocumented and Bison
2002 users should not rely upon it. Assigning to YYVAL
2003 unconditionally makes the parser a bit smaller, and it avoids a
2004 GCC warning that YYVAL may be used uninitialized. */
2005 yyval = yyvsp[1-yylen];
2008 YY_REDUCE_PRINT (yyn);
2012 #line 108 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2014 (yyvsp[-1])->append(" = ");
2015 (yyval) = (yyvsp[-1]);
2020 #line 112 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2022 (yyval) = new std::string("");
2027 #line 119 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2028 { (yyval) = new std::string(""); ;}
2032 #line 124 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2033 { (yyval) = new std::string(""); ;}
2037 #line 129 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2038 { (yyval) = new std::string(); ;}
2042 #line 130 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2043 { *(yyvsp[-1]) += " " + *(yyvsp[0]); delete (yyvsp[0]); (yyval) = (yyvsp[-1]); ;}
2047 #line 133 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2048 { (yyval) = new std::string(); ;}
2052 #line 134 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2054 (yyvsp[-1])->insert(0, ", ");
2055 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2057 (yyval) = (yyvsp[-1]);
2062 #line 142 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2064 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2066 (yyval) = (yyvsp[-1]);
2071 #line 148 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2072 { (yyval) = new std::string(); ;}
2076 #line 152 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2077 { (yyval) = new std::string(); ;}
2081 #line 153 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2083 (yyvsp[-1])->insert(0, ", ");
2084 if (!(yyvsp[0])->empty())
2085 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2087 (yyval) = (yyvsp[-1]);
2092 #line 163 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2094 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2096 (yyval) = (yyvsp[-1]);
2101 #line 188 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2102 { // Type UpReference
2103 (yyvsp[0])->insert(0, "\\");
2104 (yyval) = (yyvsp[0]);
2109 #line 192 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2110 { // Function derived type?
2111 *(yyvsp[-3]) += "( " + *(yyvsp[-1]) + " )";
2113 (yyval) = (yyvsp[-3]);
2118 #line 197 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2119 { // Sized array type?
2120 (yyvsp[-3])->insert(0,"[ ");
2121 *(yyvsp[-3]) += " x " + *(yyvsp[-1]) + " ]";
2123 (yyval) = (yyvsp[-3]);
2128 #line 203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2129 { // Packed array type?
2130 (yyvsp[-3])->insert(0,"< ");
2131 *(yyvsp[-3]) += " x " + *(yyvsp[-1]) + " >";
2133 (yyval) = (yyvsp[-3]);
2138 #line 209 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2139 { // Structure type?
2140 (yyvsp[-1])->insert(0, "{ ");
2141 *(yyvsp[-1]) += " }";
2142 (yyval) = (yyvsp[-1]);
2147 #line 214 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2148 { // Empty structure type?
2149 (yyval) = new std::string("{ }");
2154 #line 217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2156 *(yyvsp[-1]) += '*';
2157 (yyval) = (yyvsp[-1]);
2162 #line 225 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2164 *(yyvsp[-2]) += ", " + *(yyvsp[0]);
2166 (yyval) = (yyvsp[-2]);
2171 #line 233 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2173 *(yyvsp[-2]) += ", ...";
2175 (yyval) = (yyvsp[-2]);
2180 #line 238 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2182 (yyval) = (yyvsp[0]);
2187 #line 241 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2189 (yyval) = new std::string();
2194 #line 251 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2195 { // Nonempty unsized arr
2196 *(yyvsp[-3]) += " [ " + *(yyvsp[-1]) + " ]";
2198 (yyval) = (yyvsp[-3]);
2203 #line 256 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2205 (yyval) = new std::string("[ ]");
2210 #line 259 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2212 *(yyvsp[-2]) += " c" + *(yyvsp[0]);
2214 (yyval) = (yyvsp[-2]);
2219 #line 264 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2220 { // Nonempty unsized arr
2221 *(yyvsp[-3]) += " < " + *(yyvsp[-1]) + " >";
2223 (yyval) = (yyvsp[-3]);
2228 #line 269 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2230 *(yyvsp[-3]) += " { " + *(yyvsp[-1]) + " }";
2232 (yyval) = (yyvsp[-3]);
2237 #line 274 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2239 (yyval) = new std::string("[ ]");
2244 #line 277 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2246 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2248 (yyval) = (yyvsp[-1]);
2253 #line 282 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2255 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2257 (yyval) = (yyvsp[-1]);
2262 #line 287 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2264 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2266 (yyval) = (yyvsp[-1]);
2271 #line 292 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2273 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2275 (yyval) = (yyvsp[-1]);
2280 #line 297 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2282 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2284 (yyval) = (yyvsp[-1]);
2289 #line 303 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2290 { // integral constants
2291 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2293 (yyval) = (yyvsp[-1]);
2298 #line 308 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2299 { // integral constants
2300 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2302 (yyval) = (yyvsp[-1]);
2307 #line 313 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2308 { // Boolean constants
2309 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2311 (yyval) = (yyvsp[-1]);
2316 #line 318 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2317 { // Boolean constants
2318 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2320 (yyval) = (yyvsp[-1]);
2325 #line 323 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2326 { // Float & Double constants
2327 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2329 (yyval) = (yyvsp[-1]);
2334 #line 330 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2336 *(yyvsp[-5]) += " (" + *(yyvsp[-3]) + " " + *(yyvsp[-2]) + " " + *(yyvsp[-1]) + ")";
2337 delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[-1]);
2338 (yyval) = (yyvsp[-5]);
2343 #line 335 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2349 #line 337 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2355 #line 339 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2361 #line 341 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2367 #line 343 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2373 #line 345 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2379 #line 347 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2385 #line 349 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2391 #line 351 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2397 #line 356 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2403 #line 358 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2409 #line 363 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2414 #line 363 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2419 #line 373 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2425 #line 378 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2432 #line 381 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2434 *O << *(yyvsp[0]) << "\n";
2441 #line 386 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2443 *O << "module asm " << " " << *(yyvsp[0]) << "\n";
2448 #line 389 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2450 *O << "implementation\n";
2455 #line 392 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2461 #line 396 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2463 *O << *(yyvsp[-2]) << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2464 delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2470 #line 401 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2471 { // Function prototypes can be in const pool
2472 *O << *(yyvsp[0]) << "\n";
2479 #line 406 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2480 { // Asm blocks can be in the const pool
2481 *O << *(yyvsp[-2]) << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2482 delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2488 #line 411 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2490 *O << *(yyvsp[-4]) << " " << *(yyvsp[-3]) << " " << *(yyvsp[-2]) << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2491 delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2497 #line 416 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2499 *O << *(yyvsp[-4]) << " " << *(yyvsp[-3]) << " " << *(yyvsp[-2]) << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2500 delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2506 #line 421 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2508 *O << *(yyvsp[-4]) << " " << *(yyvsp[-3]) << " " << *(yyvsp[-2]) << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2509 delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2515 #line 426 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2517 *O << *(yyvsp[-4]) << " " << *(yyvsp[-3]) << " " << *(yyvsp[-2]) << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2518 delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2524 #line 431 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2526 *O << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2527 delete (yyvsp[-1]); delete (yyvsp[0]);
2533 #line 436 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2535 *O << *(yyvsp[-2]) << " = " << *(yyvsp[0]) << "\n";
2536 delete (yyvsp[-2]); delete (yyvsp[0]);
2542 #line 441 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2549 #line 451 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2551 *(yyvsp[-2]) += " = " + *(yyvsp[-1]);
2553 (yyval) = (yyvsp[-2]);
2558 #line 456 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2560 *(yyvsp[-2]) += " = " + *(yyvsp[-1]);
2562 (yyval) = (yyvsp[-2]);
2567 #line 461 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2569 *(yyvsp[-2]) += " = " + *(yyvsp[-1]);
2571 (yyval) = (yyvsp[-2]);
2576 #line 466 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2578 *(yyvsp[-2]) += " = " + *(yyvsp[-1]);
2580 (yyval) = (yyvsp[-2]);
2585 #line 473 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2587 (yyvsp[-1])->insert(0, "[ ");
2588 *(yyvsp[-1]) += " ]";
2589 (yyval) = (yyvsp[-1]);
2594 #line 480 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2596 *(yyvsp[-2]) += ", " + *(yyvsp[0]);
2598 (yyval) = (yyvsp[-2]);
2603 #line 486 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2605 (yyval) = new std::string();
2610 #line 495 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2611 { (yyval) = new std::string(); ;}
2615 #line 497 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2617 (yyval) = (yyvsp[-1]);
2618 if (!(yyvsp[0])->empty())
2619 *(yyval) += " " + *(yyvsp[0]);
2624 #line 503 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2626 *(yyvsp[-2]) += ", " + *(yyvsp[0]);
2631 #line 506 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2633 (yyval) = (yyvsp[0]);
2638 #line 510 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2640 (yyval) = (yyvsp[0]);
2645 #line 513 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2647 *(yyvsp[-2]) += ", ...";
2648 (yyval) = (yyvsp[-2]);
2653 #line 517 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2655 (yyval) = (yyvsp[0]);
2660 #line 520 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2662 (yyval) = new std::string();
2667 #line 525 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2669 if (!(yyvsp[-7])->empty()) {
2670 (yyvsp[-6])->insert(0, *(yyvsp[-7]) + " ");
2672 *(yyvsp[-6]) += " " + *(yyvsp[-5]) + "( " + *(yyvsp[-3]) + " )";
2673 if (!(yyvsp[-1])->empty()) {
2674 *(yyvsp[-6]) += " " + *(yyvsp[-1]);
2676 if (!(yyvsp[0])->empty()) {
2677 *(yyvsp[-6]) += " " + *(yyvsp[0]);
2679 (yyval) = (yyvsp[-6]);
2684 #line 539 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2686 (yyval) = new std::string("begin");
2691 #line 542 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2693 (yyval) = new std::string ("{");
2698 #line 546 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2700 if (!(yyvsp[-2])->empty()) {
2701 *O << *(yyvsp[-2]) << " ";
2703 *O << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2704 delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2710 #line 555 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2711 { (yyval) = new std::string("end"); ;}
2715 #line 556 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2716 { (yyval) = new std::string("}"); ;}
2720 #line 558 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2724 *O << '\n' << *(yyvsp[0]) << "\n";
2729 #line 570 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2731 *(yyvsp[-2]) += " " + *(yyvsp[-1]) + " " + *(yyvsp[0]);
2732 delete (yyvsp[-1]); delete (yyvsp[0]);
2733 (yyval) = (yyvsp[-2]);
2738 #line 580 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2744 #line 582 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2750 #line 587 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2752 (yyvsp[-1])->insert(0, "<");
2753 *(yyvsp[-1]) += ">";
2754 (yyval) = (yyvsp[-1]);
2759 #line 593 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2761 if (!(yyvsp[-3])->empty()) {
2762 *(yyvsp[-4]) += " " + *(yyvsp[-3]);
2764 *(yyvsp[-4]) += " " + *(yyvsp[-2]) + ", " + *(yyvsp[-1]);
2765 delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[-1]);
2766 (yyval) = (yyvsp[-4]);
2771 #line 611 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2773 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2775 (yyval) = (yyvsp[-1]);
2780 #line 617 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2786 #line 619 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2787 { // Do not allow functions with 0 basic blocks
2792 #line 626 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2794 *O << *(yyvsp[-1]) ;
2799 #line 630 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2801 *O << " " << *(yyvsp[0]) << "\n";
2808 #line 635 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2815 #line 638 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2817 *O << *(yyvsp[0]) << "\n";
2824 #line 644 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2825 { // Return with a result...
2826 *O << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2827 delete (yyvsp[-1]); delete (yyvsp[0]);
2833 #line 649 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2834 { // Return with no result...
2835 *O << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2836 delete (yyvsp[-1]); delete (yyvsp[0]);
2842 #line 654 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2843 { // Unconditional Branch...
2844 *O << " " << *(yyvsp[-2]) << " " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2845 delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2851 #line 659 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2853 *O << " " << *(yyvsp[-8]) << " " << *(yyvsp[-7]) << " " << *(yyvsp[-6]) << ", " << *(yyvsp[-4]) << " "
2854 << *(yyvsp[-3]) << ", " << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2855 delete (yyvsp[-8]); delete (yyvsp[-7]); delete (yyvsp[-6]); delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-1]); delete (yyvsp[0]);
2861 #line 665 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2863 *O << " " << *(yyvsp[-8]) << " " << *(yyvsp[-7]) << " " << *(yyvsp[-6]) << ", " << *(yyvsp[-4]) << " "
2864 << *(yyvsp[-3]) << " [" << *(yyvsp[-1]) << " ]\n";
2865 delete (yyvsp[-8]); delete (yyvsp[-7]); delete (yyvsp[-6]); delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-1]);
2871 #line 671 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2873 *O << " " << *(yyvsp[-7]) << " " << *(yyvsp[-6]) << " " << *(yyvsp[-5]) << ", " << *(yyvsp[-3]) << " "
2874 << *(yyvsp[-2]) << "[]\n";
2875 delete (yyvsp[-7]); delete (yyvsp[-6]); delete (yyvsp[-5]); delete (yyvsp[-3]); delete (yyvsp[-2]);
2881 #line 678 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2883 *O << " " << *(yyvsp[-12]) << " " << *(yyvsp[-11]) << " " << *(yyvsp[-10]) << " " << *(yyvsp[-9]) << " ("
2884 << *(yyvsp[-7]) << ") " << *(yyvsp[-5]) << " " << *(yyvsp[-4]) << " " << *(yyvsp[-3]) << " " << *(yyvsp[-2]) << " "
2885 << *(yyvsp[-1]) << " " << *(yyvsp[0]) << "\n";
2886 delete (yyvsp[-12]); delete (yyvsp[-11]); delete (yyvsp[-10]); delete (yyvsp[-9]); delete (yyvsp[-7]); delete (yyvsp[-5]); delete (yyvsp[-4]);
2887 delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
2893 #line 686 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2895 *O << " " << *(yyvsp[0]) << "\n";
2902 #line 691 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2904 *O << " " << *(yyvsp[0]) << "\n";
2911 #line 697 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2913 *(yyvsp[-5]) += *(yyvsp[-4]) + " " + *(yyvsp[-3]) + ", " + *(yyvsp[-1]) + " " + *(yyvsp[0]);
2914 delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-1]); delete (yyvsp[0]);
2915 (yyval) = (yyvsp[-5]);
2920 #line 702 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2922 *(yyvsp[-4]) += *(yyvsp[-3]) + ", " + *(yyvsp[-1]) + " " + *(yyvsp[0]);
2923 delete (yyvsp[-3]); delete (yyvsp[-1]); delete (yyvsp[0]);
2924 (yyval) = (yyvsp[-4]);
2929 #line 709 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2931 *(yyvsp[-1]) += *(yyvsp[0]);
2933 (yyval) = (yyvsp[-1]);
2938 #line 716 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2939 { // Used for PHI nodes
2940 *(yyvsp[-5]) += " [" + *(yyvsp[-3]) + "," + *(yyvsp[-1]) + "]";
2941 delete (yyvsp[-3]); delete (yyvsp[-1]);
2942 (yyval) = (yyvsp[-5]);
2947 #line 721 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2949 *(yyvsp[-6]) += ", [" + *(yyvsp[-3]) + "," + *(yyvsp[-1]) + "]";
2950 delete (yyvsp[-3]); delete (yyvsp[-1]);
2951 (yyval) = (yyvsp[-6]);
2956 #line 730 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2958 *(yyvsp[-2]) += ", " + *(yyvsp[0]);
2960 (yyval) = (yyvsp[-2]);
2965 #line 739 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2966 { (yyval) = new std::string(); ;}
2970 #line 743 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2972 *(yyvsp[-1]) += " " + *(yyvsp[0]);
2974 (yyval) = (yyvsp[-1]);
2979 #line 751 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2981 *(yyvsp[-4]) += " " + *(yyvsp[-3]) + " " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
2982 delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[0]);
2983 (yyval) = (yyvsp[-4]);
2988 #line 756 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2990 *(yyvsp[-4]) += " " + *(yyvsp[-3]) + " " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
2991 delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[0]);
2992 (yyval) = (yyvsp[-4]);
2997 #line 761 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
2999 *(yyvsp[-4]) += " " + *(yyvsp[-3]) + " " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
3000 delete (yyvsp[-3]); delete (yyvsp[-2]); delete (yyvsp[0]);
3001 (yyval) = (yyvsp[-4]);
3006 #line 766 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3008 *(yyvsp[-1]) += " " + *(yyvsp[0]);
3010 (yyval) = (yyvsp[-1]);
3015 #line 771 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3017 *(yyvsp[-3]) += " " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
3018 delete (yyvsp[-2]); delete (yyvsp[0]);
3019 (yyval) = (yyvsp[-3]);
3024 #line 776 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3026 *(yyvsp[-3]) += " " + *(yyvsp[-2]) + " " + *(yyvsp[-1]) + ", " + *(yyvsp[0]);
3027 delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
3028 (yyval) = (yyvsp[-3]);
3033 #line 781 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3035 *(yyvsp[-5]) += " " + *(yyvsp[-4]) + ", " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
3036 delete (yyvsp[-4]); delete (yyvsp[-2]); delete (yyvsp[0]);
3037 (yyval) = (yyvsp[-5]);
3042 #line 786 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3044 *(yyvsp[-3]) += " " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
3045 delete (yyvsp[-2]); delete (yyvsp[0]);
3046 (yyval) = (yyvsp[-3]);
3051 #line 791 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3053 *(yyvsp[-3]) += " " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
3054 delete (yyvsp[-2]); delete (yyvsp[0]);
3055 (yyval) = (yyvsp[-3]);
3060 #line 796 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3062 *(yyvsp[-5]) += " " + *(yyvsp[-4]) + ", " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
3063 delete (yyvsp[-4]); delete (yyvsp[-2]); delete (yyvsp[0]);
3064 (yyval) = (yyvsp[-5]);
3069 #line 801 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3071 *(yyvsp[-5]) += " " + *(yyvsp[-4]) + ", " + *(yyvsp[-2]) + ", " + *(yyvsp[0]);
3072 delete (yyvsp[-4]); delete (yyvsp[-2]); delete (yyvsp[0]);
3073 (yyval) = (yyvsp[-5]);
3078 #line 806 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3080 *(yyvsp[-1]) += " " + *(yyvsp[0]);
3082 (yyval) = (yyvsp[-1]);
3087 #line 811 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3089 if (!(yyvsp[-5])->empty())
3090 *(yyvsp[-6]) += " " + *(yyvsp[-5]);
3091 if (!(yyvsp[-6])->empty())
3092 *(yyvsp[-6]) += " ";
3093 *(yyvsp[-6]) += *(yyvsp[-4]) += " " + *(yyvsp[-3]) + "(" + *(yyvsp[-2]) + ")";
3094 delete (yyvsp[-5]); delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-1]);
3095 (yyval) = (yyvsp[-6]);
3100 #line 825 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3102 (yyvsp[0])->insert(0, ", ");
3103 (yyval) = (yyvsp[0]);
3108 #line 829 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3109 { (yyval) = new std::string(); ;}
3113 #line 834 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3114 { (yyval) = new std::string(); ;}
3118 #line 837 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3120 *(yyvsp[-2]) += " " + *(yyvsp[-1]);
3121 if (!(yyvsp[0])->empty())
3122 *(yyvsp[-2]) += " " + *(yyvsp[0]);
3123 delete (yyvsp[-1]); delete (yyvsp[0]);
3124 (yyval) = (yyvsp[-2]);
3129 #line 844 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3131 *(yyvsp[-5]) += " " + *(yyvsp[-4]) + ", " + *(yyvsp[-2]) + " " + *(yyvsp[-1]);
3132 if (!(yyvsp[0])->empty())
3133 *(yyvsp[-5]) += " " + *(yyvsp[0]);
3134 delete (yyvsp[-4]); delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
3135 (yyval) = (yyvsp[-5]);
3140 #line 851 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3142 *(yyvsp[-2]) += " " + *(yyvsp[-1]);
3143 if (!(yyvsp[0])->empty())
3144 *(yyvsp[-2]) += " " + *(yyvsp[0]);
3145 delete (yyvsp[-1]); delete (yyvsp[0]);
3146 (yyval) = (yyvsp[-2]);
3151 #line 858 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3153 *(yyvsp[-5]) += " " + *(yyvsp[-4]) + ", " + *(yyvsp[-2]) + " " + *(yyvsp[-1]);
3154 if (!(yyvsp[0])->empty())
3155 *(yyvsp[-5]) += " " + *(yyvsp[0]);
3156 delete (yyvsp[-4]); delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
3157 (yyval) = (yyvsp[-5]);
3162 #line 865 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3164 *(yyvsp[-1]) += " " + *(yyvsp[0]);
3166 (yyval) = (yyvsp[-1]);
3171 #line 870 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3173 if (!(yyvsp[-3])->empty())
3174 *(yyvsp[-3]) += " ";
3175 *(yyvsp[-3]) += *(yyvsp[-2]) + " " + *(yyvsp[-1]) + " " + *(yyvsp[0]);
3176 delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
3177 (yyval) = (yyvsp[-3]);
3182 #line 877 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3184 if (!(yyvsp[-5])->empty())
3185 *(yyvsp[-5]) += " ";
3186 *(yyvsp[-5]) += *(yyvsp[-4]) + " " + *(yyvsp[-3]) + ", " + *(yyvsp[-1]) + " " + *(yyvsp[0]);
3187 delete (yyvsp[-4]); delete (yyvsp[-3]); delete (yyvsp[-1]); delete (yyvsp[0]);
3188 (yyval) = (yyvsp[-5]);
3193 #line 884 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3195 *(yyvsp[-3]) += *(yyvsp[-2]) + " " + *(yyvsp[-1]) + " " + *(yyvsp[0]);
3196 delete (yyvsp[-2]); delete (yyvsp[-1]); delete (yyvsp[0]);
3197 (yyval) = (yyvsp[-3]);
3205 /* Line 1126 of yacc.c. */
3206 #line 3207 "UpgradeParser.tab.c"
3212 YY_STACK_PRINT (yyss, yyssp);
3217 /* Now `shift' the result of the reduction. Determine what state
3218 that goes to, based on the state we popped back to and the rule
3219 number reduced by. */
3223 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
3224 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
3225 yystate = yytable[yystate];
3227 yystate = yydefgoto[yyn - YYNTOKENS];
3232 /*------------------------------------.
3233 | yyerrlab -- here on detecting error |
3234 `------------------------------------*/
3236 /* If not already recovering from an error, report this error. */
3241 yyn = yypact[yystate];
3243 if (YYPACT_NINF < yyn && yyn < YYLAST)
3245 int yytype = YYTRANSLATE (yychar);
3246 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
3247 YYSIZE_T yysize = yysize0;
3249 int yysize_overflow = 0;
3251 # define YYERROR_VERBOSE_ARGS_MAXIMUM 5
3252 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3256 /* This is so xgettext sees the translatable formats that are
3257 constructed on the fly. */
3258 YY_("syntax error, unexpected %s");
3259 YY_("syntax error, unexpected %s, expecting %s");
3260 YY_("syntax error, unexpected %s, expecting %s or %s");
3261 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
3262 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
3266 static char const yyunexpected[] = "syntax error, unexpected %s";
3267 static char const yyexpecting[] = ", expecting %s";
3268 static char const yyor[] = " or %s";
3269 char yyformat[sizeof yyunexpected
3270 + sizeof yyexpecting - 1
3271 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
3272 * (sizeof yyor - 1))];
3273 char const *yyprefix = yyexpecting;
3275 /* Start YYX at -YYN if negative to avoid negative indexes in
3277 int yyxbegin = yyn < 0 ? -yyn : 0;
3279 /* Stay within bounds of both yycheck and yytname. */
3280 int yychecklim = YYLAST - yyn;
3281 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3284 yyarg[0] = yytname[yytype];
3285 yyfmt = yystpcpy (yyformat, yyunexpected);
3287 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3288 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
3290 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3294 yyformat[sizeof yyunexpected - 1] = '\0';
3297 yyarg[yycount++] = yytname[yyx];
3298 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
3299 yysize_overflow |= yysize1 < yysize;
3301 yyfmt = yystpcpy (yyfmt, yyprefix);
3305 yyf = YY_(yyformat);
3306 yysize1 = yysize + yystrlen (yyf);
3307 yysize_overflow |= yysize1 < yysize;
3310 if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM)
3311 yymsg = (char *) YYSTACK_ALLOC (yysize);
3314 /* Avoid sprintf, as that infringes on the user's name space.
3315 Don't have undefined behavior even if the translation
3316 produced a string with the wrong number of "%s"s. */
3319 while ((*yyp = *yyf))
3321 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
3323 yyp += yytnamerr (yyp, yyarg[yyi++]);
3333 YYSTACK_FREE (yymsg);
3337 yyerror (YY_("syntax error"));
3338 goto yyexhaustedlab;
3342 #endif /* YYERROR_VERBOSE */
3343 yyerror (YY_("syntax error"));
3348 if (yyerrstatus == 3)
3350 /* If just tried and failed to reuse look-ahead token after an
3351 error, discard it. */
3353 if (yychar <= YYEOF)
3355 /* Return failure if at end of input. */
3356 if (yychar == YYEOF)
3361 yydestruct ("Error: discarding", yytoken, &yylval);
3366 /* Else will try to reuse look-ahead token after shifting the error
3371 /*---------------------------------------------------.
3372 | yyerrorlab -- error raised explicitly by YYERROR. |
3373 `---------------------------------------------------*/
3376 /* Pacify compilers like GCC when the user code never invokes
3377 YYERROR and the label yyerrorlab therefore never appears in user
3388 /*-------------------------------------------------------------.
3389 | yyerrlab1 -- common code for both syntax error and YYERROR. |
3390 `-------------------------------------------------------------*/
3392 yyerrstatus = 3; /* Each real token shifted decrements this. */
3396 yyn = yypact[yystate];
3397 if (yyn != YYPACT_NINF)
3400 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
3408 /* Pop the current state because it cannot handle the error token. */
3413 yydestruct ("Error: popping", yystos[yystate], yyvsp);
3416 YY_STACK_PRINT (yyss, yyssp);
3425 /* Shift the error token. */
3426 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
3432 /*-------------------------------------.
3433 | yyacceptlab -- YYACCEPT comes here. |
3434 `-------------------------------------*/
3439 /*-----------------------------------.
3440 | yyabortlab -- YYABORT comes here. |
3441 `-----------------------------------*/
3447 /*-------------------------------------------------.
3448 | yyexhaustedlab -- memory exhaustion comes here. |
3449 `-------------------------------------------------*/
3451 yyerror (YY_("memory exhausted"));
3457 if (yychar != YYEOF && yychar != YYEMPTY)
3458 yydestruct ("Cleanup: discarding lookahead",
3460 while (yyssp != yyss)
3462 yydestruct ("Cleanup: popping",
3463 yystos[*yyssp], yyvsp);
3468 YYSTACK_FREE (yyss);
3474 #line 890 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
3477 int yyerror(const char *ErrorMsg) {
3479 = std::string((CurFilename == "-") ? std::string("<stdin>") : CurFilename)
3480 + ":" + llvm::utostr((unsigned) Upgradelineno) + ": ";
3481 std::string errMsg = std::string(ErrorMsg) + "\n" + where + " while reading ";
3482 if (yychar == YYEMPTY || yychar == 0)
3483 errMsg += "end-of-file.";
3485 errMsg += "token: '" + std::string(Upgradetext, Upgradeleng) + "'";
3486 std::cerr << errMsg << '\n';