diff options
Diffstat (limited to 'binutils/defparse.c')
| -rw-r--r-- | binutils/defparse.c | 1777 | 
1 files changed, 0 insertions, 1777 deletions
| diff --git a/binutils/defparse.c b/binutils/defparse.c deleted file mode 100644 index de34ae0cfc1f..000000000000 --- a/binutils/defparse.c +++ /dev/null @@ -1,1777 +0,0 @@ -/* A Bison parser, made by GNU Bison 2.1.  */ - -/* Skeleton parser for Yacc-like parsing with Bison, -   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. - -   This program is free software; you can redistribute it and/or modify -   it under the terms of the GNU General Public License as published by -   the Free Software Foundation; either version 2, or (at your option) -   any later version. - -   This program is distributed in the hope that it will be useful, -   but WITHOUT ANY WARRANTY; without even the implied warranty of -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the -   GNU General Public License for more details. - -   You should have received a copy of the GNU General Public License -   along with this program; if not, write to the Free Software -   Foundation, Inc., 51 Franklin Street, Fifth Floor, -   Boston, MA 02110-1301, USA.  */ - -/* As a special exception, when this file is copied by Bison into a -   Bison output file, you may use that output file without restriction. -   This special exception was added by the Free Software Foundation -   in version 1.24 of Bison.  */ - -/* Written by Richard Stallman by simplifying the original so called -   ``semantic'' parser.  */ - -/* All symbols defined below should begin with yy or YY, to avoid -   infringing on user name space.  This should be done even for local -   variables, as they might otherwise be expanded by user macros. -   There are some unavoidable exceptions within include files to -   define necessary library symbols; they are noted "INFRINGES ON -   USER NAME SPACE" below.  */ - -/* Identify Bison output.  */ -#define YYBISON 1 - -/* Bison version.  */ -#define YYBISON_VERSION "2.1" - -/* Skeleton name.  */ -#define YYSKELETON_NAME "yacc.c" - -/* Pure parsers.  */ -#define YYPURE 0 - -/* Using locations.  */ -#define YYLSP_NEEDED 0 - - - -/* Tokens.  */ -#ifndef YYTOKENTYPE -# define YYTOKENTYPE -   /* Put the tokens into the symbol table, so that GDB and other debuggers -      know about them.  */ -   enum yytokentype { -     NAME = 258, -     LIBRARY = 259, -     DESCRIPTION = 260, -     STACKSIZE = 261, -     HEAPSIZE = 262, -     CODE = 263, -     DATA = 264, -     SECTIONS = 265, -     EXPORTS = 266, -     IMPORTS = 267, -     VERSIONK = 268, -     BASE = 269, -     CONSTANT = 270, -     READ = 271, -     WRITE = 272, -     EXECUTE = 273, -     SHARED = 274, -     NONSHARED = 275, -     NONAME = 276, -     PRIVATE = 277, -     SINGLE = 278, -     MULTIPLE = 279, -     INITINSTANCE = 280, -     INITGLOBAL = 281, -     TERMINSTANCE = 282, -     TERMGLOBAL = 283, -     ID = 284, -     NUMBER = 285 -   }; -#endif -/* Tokens.  */ -#define NAME 258 -#define LIBRARY 259 -#define DESCRIPTION 260 -#define STACKSIZE 261 -#define HEAPSIZE 262 -#define CODE 263 -#define DATA 264 -#define SECTIONS 265 -#define EXPORTS 266 -#define IMPORTS 267 -#define VERSIONK 268 -#define BASE 269 -#define CONSTANT 270 -#define READ 271 -#define WRITE 272 -#define EXECUTE 273 -#define SHARED 274 -#define NONSHARED 275 -#define NONAME 276 -#define PRIVATE 277 -#define SINGLE 278 -#define MULTIPLE 279 -#define INITINSTANCE 280 -#define INITGLOBAL 281 -#define TERMINSTANCE 282 -#define TERMGLOBAL 283 -#define ID 284 -#define NUMBER 285 - - - - -/* Copy the first part of user declarations.  */ -#line 1 "defparse.y" - /* defparse.y - parser for .def files */ - -/*  Copyright 1995, 1997, 1998, 1999, 2001, 2004 -    Free Software Foundation, Inc. - -    This file is part of GNU Binutils. - -    This program is free software; you can redistribute it and/or modify -    it under the terms of the GNU General Public License as published by -    the Free Software Foundation; either version 2 of the License, or -    (at your option) any later version. - -    This program is distributed in the hope that it will be useful, -    but WITHOUT ANY WARRANTY; without even the implied warranty of -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the -    GNU General Public License for more details. - -    You should have received a copy of the GNU General Public License -    along with this program; if not, write to the Free Software -    Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */ - -#include "bfd.h" -#include "bucomm.h" -#include "dlltool.h" - - -/* Enabling traces.  */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif - -/* Enabling verbose error messages.  */ -#ifdef YYERROR_VERBOSE -# undef YYERROR_VERBOSE -# define YYERROR_VERBOSE 1 -#else -# define YYERROR_VERBOSE 0 -#endif - -/* Enabling the token table.  */ -#ifndef YYTOKEN_TABLE -# define YYTOKEN_TABLE 0 -#endif - -#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -#line 27 "defparse.y" -typedef union YYSTYPE { -  char *id; -  int number; -} YYSTYPE; -/* Line 196 of yacc.c.  */ -#line 176 "defparse.c" -# define yystype YYSTYPE /* obsolescent; will be withdrawn */ -# define YYSTYPE_IS_DECLARED 1 -# define YYSTYPE_IS_TRIVIAL 1 -#endif - - - -/* Copy the second part of user declarations.  */ - - -/* Line 219 of yacc.c.  */ -#line 188 "defparse.c" - -#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) -# define YYSIZE_T __SIZE_TYPE__ -#endif -#if ! defined (YYSIZE_T) && defined (size_t) -# define YYSIZE_T size_t -#endif -#if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus)) -# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t -#endif -#if ! defined (YYSIZE_T) -# define YYSIZE_T unsigned int -#endif - -#ifndef YY_ -# if YYENABLE_NLS -#  if ENABLE_NLS -#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */ -#   define YY_(msgid) dgettext ("bison-runtime", msgid) -#  endif -# endif -# ifndef YY_ -#  define YY_(msgid) msgid -# endif -#endif - -#if ! defined (yyoverflow) || YYERROR_VERBOSE - -/* The parser invokes alloca or malloc; define the necessary symbols.  */ - -# ifdef YYSTACK_USE_ALLOCA -#  if YYSTACK_USE_ALLOCA -#   ifdef __GNUC__ -#    define YYSTACK_ALLOC __builtin_alloca -#   else -#    define YYSTACK_ALLOC alloca -#    if defined (__STDC__) || defined (__cplusplus) -#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -#     define YYINCLUDED_STDLIB_H -#    endif -#   endif -#  endif -# endif - -# ifdef YYSTACK_ALLOC -   /* Pacify GCC's `empty if-body' warning. */ -#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) -#  ifndef YYSTACK_ALLOC_MAXIMUM -    /* The OS might guarantee only one guard page at the bottom of the stack, -       and a page size can be as small as 4096 bytes.  So we cannot safely -       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number -       to allow for a few compiler-allocated temporary stack slots.  */ -#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */ -#  endif -# else -#  define YYSTACK_ALLOC YYMALLOC -#  define YYSTACK_FREE YYFREE -#  ifndef YYSTACK_ALLOC_MAXIMUM -#   define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1) -#  endif -#  ifdef __cplusplus -extern "C" { -#  endif -#  ifndef YYMALLOC -#   define YYMALLOC malloc -#   if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \ -	&& (defined (__STDC__) || defined (__cplusplus))) -void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ -#   endif -#  endif -#  ifndef YYFREE -#   define YYFREE free -#   if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \ -	&& (defined (__STDC__) || defined (__cplusplus))) -void free (void *); /* INFRINGES ON USER NAME SPACE */ -#   endif -#  endif -#  ifdef __cplusplus -} -#  endif -# endif -#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */ - - -#if (! defined (yyoverflow) \ -     && (! defined (__cplusplus) \ -	 || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL))) - -/* A type that is properly aligned for any stack member.  */ -union yyalloc -{ -  short int yyss; -  YYSTYPE yyvs; -  }; - -/* The size of the maximum gap between one aligned stack and the next.  */ -# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) - -/* The size of an array large to enough to hold all stacks, each with -   N elements.  */ -# define YYSTACK_BYTES(N) \ -     ((N) * (sizeof (short int) + sizeof (YYSTYPE))			\ -      + YYSTACK_GAP_MAXIMUM) - -/* Copy COUNT objects from FROM to TO.  The source and destination do -   not overlap.  */ -# ifndef YYCOPY -#  if defined (__GNUC__) && 1 < __GNUC__ -#   define YYCOPY(To, From, Count) \ -      __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -#  else -#   define YYCOPY(To, From, Count)		\ -      do					\ -	{					\ -	  YYSIZE_T yyi;				\ -	  for (yyi = 0; yyi < (Count); yyi++)	\ -	    (To)[yyi] = (From)[yyi];		\ -	}					\ -      while (0) -#  endif -# endif - -/* Relocate STACK from its old location to the new one.  The -   local variables YYSIZE and YYSTACKSIZE give the old and new number of -   elements in the stack, and YYPTR gives the new location of the -   stack.  Advance YYPTR to a properly aligned location for the next -   stack.  */ -# define YYSTACK_RELOCATE(Stack)					\ -    do									\ -      {									\ -	YYSIZE_T yynewbytes;						\ -	YYCOPY (&yyptr->Stack, Stack, yysize);				\ -	Stack = &yyptr->Stack;						\ -	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ -	yyptr += yynewbytes / sizeof (*yyptr);				\ -      }									\ -    while (0) - -#endif - -#if defined (__STDC__) || defined (__cplusplus) -   typedef signed char yysigned_char; -#else -   typedef short int yysigned_char; -#endif - -/* YYFINAL -- State number of the termination state. */ -#define YYFINAL  38 -/* YYLAST -- Last index in YYTABLE.  */ -#define YYLAST   114 - -/* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS  35 -/* YYNNTS -- Number of nonterminals. */ -#define YYNNTS  23 -/* YYNRULES -- Number of rules. */ -#define YYNRULES  68 -/* YYNRULES -- Number of states. */ -#define YYNSTATES  98 - -/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */ -#define YYUNDEFTOK  2 -#define YYMAXUTOK   285 - -#define YYTRANSLATE(YYX)						\ -  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) - -/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */ -static const unsigned char yytranslate[] = -{ -       0,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,    33,     2,    31,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,    32,     2,     2,    34,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     2,     2,     1,     2,     3,     4, -       5,     6,     7,     8,     9,    10,    11,    12,    13,    14, -      15,    16,    17,    18,    19,    20,    21,    22,    23,    24, -      25,    26,    27,    28,    29,    30 -}; - -#if YYDEBUG -/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in -   YYRHS.  */ -static const unsigned char yyprhs[] = -{ -       0,     0,     3,     6,     8,    12,    17,    20,    23,    27, -      31,    34,    37,    40,    43,    46,    51,    52,    55,    63, -      66,    68,    76,    84,    90,    96,   102,   108,   112,   116, -     119,   121,   124,   128,   130,   132,   133,   136,   137,   139, -     141,   143,   145,   147,   149,   151,   153,   154,   156,   157, -     159,   160,   162,   163,   165,   169,   170,   173,   174,   177, -     182,   183,   187,   188,   189,   193,   195,   197,   199 -}; - -/* YYRHS -- A `-1'-separated list of the rules' RHS. */ -static const yysigned_char yyrhs[] = -{ -      36,     0,    -1,    36,    37,    -1,    37,    -1,     3,    52, -      55,    -1,     4,    52,    55,    56,    -1,    11,    38,    -1, -       5,    29,    -1,     6,    30,    46,    -1,     7,    30,    46, -      -1,     8,    44,    -1,     9,    44,    -1,    10,    42,    -1, -      12,    40,    -1,    13,    30,    -1,    13,    30,    31,    30, -      -1,    -1,    38,    39,    -1,    29,    54,    53,    49,    48, -      50,    51,    -1,    40,    41,    -1,    41,    -1,    29,    32, -      29,    31,    29,    31,    29,    -1,    29,    32,    29,    31, -      29,    31,    30,    -1,    29,    32,    29,    31,    29,    -1, -      29,    32,    29,    31,    30,    -1,    29,    31,    29,    31, -      29,    -1,    29,    31,    29,    31,    30,    -1,    29,    31, -      29,    -1,    29,    31,    30,    -1,    42,    43,    -1,    43, -      -1,    29,    44,    -1,    44,    45,    47,    -1,    47,    -1, -      33,    -1,    -1,    33,    30,    -1,    -1,    16,    -1,    17, -      -1,    18,    -1,    19,    -1,    20,    -1,    23,    -1,    24, -      -1,    15,    -1,    -1,    21,    -1,    -1,     9,    -1,    -1, -      22,    -1,    -1,    29,    -1,    29,    31,    29,    -1,    -1, -      34,    30,    -1,    -1,    32,    29,    -1,    32,    29,    31, -      29,    -1,    -1,    14,    32,    30,    -1,    -1,    -1,    56, -      45,    57,    -1,    25,    -1,    26,    -1,    27,    -1,    28, -      -1 -}; - -/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */ -static const unsigned char yyrline[] = -{ -       0,    44,    44,    45,    49,    50,    51,    52,    53,    54, -      55,    56,    57,    58,    59,    60,    64,    66,    70,    74, -      75,    79,    80,    81,    82,    83,    84,    85,    86,    90, -      91,    95,    99,   100,   104,   105,   107,   108,   112,   113, -     114,   115,   116,   117,   118,   122,   123,   127,   128,   132, -     133,   137,   138,   141,   142,   148,   152,   153,   157,   158, -     164,   167,   168,   171,   173,   177,   178,   179,   180 -}; -#endif - -#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE -/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. -   First, the terminals, then, starting at YYNTOKENS, nonterminals. */ -static const char *const yytname[] = -{ -  "$end", "error", "$undefined", "NAME", "LIBRARY", "DESCRIPTION", -  "STACKSIZE", "HEAPSIZE", "CODE", "DATA", "SECTIONS", "EXPORTS", -  "IMPORTS", "VERSIONK", "BASE", "CONSTANT", "READ", "WRITE", "EXECUTE", -  "SHARED", "NONSHARED", "NONAME", "PRIVATE", "SINGLE", "MULTIPLE", -  "INITINSTANCE", "INITGLOBAL", "TERMINSTANCE", "TERMGLOBAL", "ID", -  "NUMBER", "'.'", "'='", "','", "'@'", "$accept", "start", "command", -  "explist", "expline", "implist", "impline", "seclist", "secline", -  "attr_list", "opt_comma", "opt_number", "attr", "opt_CONSTANT", -  "opt_NONAME", "opt_DATA", "opt_PRIVATE", "opt_name", "opt_ordinal", -  "opt_equal_name", "opt_base", "option_list", "option", 0 -}; -#endif - -# ifdef YYPRINT -/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to -   token YYLEX-NUM.  */ -static const unsigned short int yytoknum[] = -{ -       0,   256,   257,   258,   259,   260,   261,   262,   263,   264, -     265,   266,   267,   268,   269,   270,   271,   272,   273,   274, -     275,   276,   277,   278,   279,   280,   281,   282,   283,   284, -     285,    46,    61,    44,    64 -}; -# endif - -/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ -static const unsigned char yyr1[] = -{ -       0,    35,    36,    36,    37,    37,    37,    37,    37,    37, -      37,    37,    37,    37,    37,    37,    38,    38,    39,    40, -      40,    41,    41,    41,    41,    41,    41,    41,    41,    42, -      42,    43,    44,    44,    45,    45,    46,    46,    47,    47, -      47,    47,    47,    47,    47,    48,    48,    49,    49,    50, -      50,    51,    51,    52,    52,    52,    53,    53,    54,    54, -      54,    55,    55,    56,    56,    57,    57,    57,    57 -}; - -/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */ -static const unsigned char yyr2[] = -{ -       0,     2,     2,     1,     3,     4,     2,     2,     3,     3, -       2,     2,     2,     2,     2,     4,     0,     2,     7,     2, -       1,     7,     7,     5,     5,     5,     5,     3,     3,     2, -       1,     2,     3,     1,     1,     0,     2,     0,     1,     1, -       1,     1,     1,     1,     1,     1,     0,     1,     0,     1, -       0,     1,     0,     1,     3,     0,     2,     0,     2,     4, -       0,     3,     0,     0,     3,     1,     1,     1,     1 -}; - -/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state -   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero -   means the default is an error.  */ -static const unsigned char yydefact[] = -{ -       0,    55,    55,     0,     0,     0,     0,     0,     0,    16, -       0,     0,     0,     3,    53,    62,    62,     7,    37,    37, -      38,    39,    40,    41,    42,    43,    44,    10,    33,    11, -       0,    12,    30,     6,     0,    13,    20,    14,     1,     2, -       0,     0,     4,    63,     0,     8,     9,    34,     0,    31, -      29,    60,    17,     0,     0,    19,     0,    54,     0,     5, -      36,    32,     0,    57,    27,    28,     0,    15,    61,     0, -      58,     0,    48,     0,     0,    65,    66,    67,    68,    64, -       0,    56,    47,    46,    25,    26,    23,    24,    59,    45, -      50,     0,    49,    52,    21,    22,    51,    18 -}; - -/* YYDEFGOTO[NTERM-NUM]. */ -static const yysigned_char yydefgoto[] = -{ -      -1,    12,    13,    33,    52,    35,    36,    31,    32,    27, -      48,    45,    28,    90,    83,    93,    97,    15,    72,    63, -      42,    59,    79 -}; - -/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing -   STATE-NUM.  */ -#define YYPACT_NINF -26 -static const yysigned_char yypact[] = -{ -      32,   -12,   -12,    17,    -8,    33,    -4,    -4,    35,   -26, -      36,    37,    21,   -26,    38,    48,    48,   -26,    39,    39, -     -26,   -26,   -26,   -26,   -26,   -26,   -26,   -15,   -26,   -15, -      -4,    35,   -26,    41,   -25,    36,   -26,    40,   -26,   -26, -      44,    34,   -26,   -26,    45,   -26,   -26,   -26,    -4,   -15, -     -26,    42,   -26,   -19,    47,   -26,    49,   -26,    50,    22, -     -26,   -26,    52,    43,    51,   -26,    53,   -26,   -26,    26, -      54,    56,    57,    27,    29,   -26,   -26,   -26,   -26,   -26, -      58,   -26,   -26,    68,   -26,   -26,    59,   -26,   -26,   -26, -      79,    31,   -26,    46,   -26,   -26,   -26,   -26 -}; - -/* YYPGOTO[NTERM-NUM].  */ -static const yysigned_char yypgoto[] = -{ -     -26,   -26,    77,   -26,   -26,   -26,    60,   -26,    61,    -7, -      55,    72,    62,   -26,   -26,   -26,   -26,    91,   -26,   -26, -      78,   -26,   -26 -}; - -/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If -   positive, shift that token.  If negative, reduce the rule which -   number is the opposite.  If zero, do what YYDEFACT says. -   If YYTABLE_NINF, syntax error.  */ -#define YYTABLE_NINF -36 -static const yysigned_char yytable[] = -{ -      29,   -35,   -35,   -35,   -35,   -35,    53,    54,   -35,   -35, -      64,    65,    20,    21,    22,    23,    24,    14,    47,    25, -      26,    38,    18,    49,     1,     2,     3,     4,     5,     6, -       7,     8,     9,    10,    11,     1,     2,     3,     4,     5, -       6,     7,     8,     9,    10,    11,    17,   -35,   -35,   -35, -     -35,    75,    76,    77,    78,    47,    84,    85,    86,    87, -      94,    95,    41,    19,    30,    34,    58,    37,    96,    40, -      51,    56,    44,    57,    62,    60,    66,    71,    82,    67, -      68,    70,    73,    89,    74,    80,    81,    88,    92,    39, -      91,    46,    50,    16,    43,    55,     0,     0,     0,     0, -       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, -      61,     0,     0,     0,    69 -}; - -static const yysigned_char yycheck[] = -{ -       7,    16,    17,    18,    19,    20,    31,    32,    23,    24, -      29,    30,    16,    17,    18,    19,    20,    29,    33,    23, -      24,     0,    30,    30,     3,     4,     5,     6,     7,     8, -       9,    10,    11,    12,    13,     3,     4,     5,     6,     7, -       8,     9,    10,    11,    12,    13,    29,    25,    26,    27, -      28,    25,    26,    27,    28,    33,    29,    30,    29,    30, -      29,    30,    14,    30,    29,    29,    32,    30,    22,    31, -      29,    31,    33,    29,    32,    30,    29,    34,    21,    30, -      30,    29,    31,    15,    31,    31,    30,    29,     9,    12, -      31,    19,    31,     2,    16,    35,    -1,    -1,    -1,    -1, -      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      48,    -1,    -1,    -1,    59 -}; - -/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing -   symbol of state STATE-NUM.  */ -static const unsigned char yystos[] = -{ -       0,     3,     4,     5,     6,     7,     8,     9,    10,    11, -      12,    13,    36,    37,    29,    52,    52,    29,    30,    30, -      16,    17,    18,    19,    20,    23,    24,    44,    47,    44, -      29,    42,    43,    38,    29,    40,    41,    30,     0,    37, -      31,    14,    55,    55,    33,    46,    46,    33,    45,    44, -      43,    29,    39,    31,    32,    41,    31,    29,    32,    56, -      30,    47,    32,    54,    29,    30,    29,    30,    30,    45, -      29,    34,    53,    31,    31,    25,    26,    27,    28,    57, -      31,    30,    21,    49,    29,    30,    29,    30,    29,    15, -      48,    31,     9,    50,    29,    30,    22,    51 -}; - -#define yyerrok		(yyerrstatus = 0) -#define yyclearin	(yychar = YYEMPTY) -#define YYEMPTY		(-2) -#define YYEOF		0 - -#define YYACCEPT	goto yyacceptlab -#define YYABORT		goto yyabortlab -#define YYERROR		goto yyerrorlab - - -/* Like YYERROR except do call yyerror.  This remains here temporarily -   to ease the transition to the new meaning of YYERROR, for GCC. -   Once GCC version 2 has supplanted version 1, this can go.  */ - -#define YYFAIL		goto yyerrlab - -#define YYRECOVERING()  (!!yyerrstatus) - -#define YYBACKUP(Token, Value)					\ -do								\ -  if (yychar == YYEMPTY && yylen == 1)				\ -    {								\ -      yychar = (Token);						\ -      yylval = (Value);						\ -      yytoken = YYTRANSLATE (yychar);				\ -      YYPOPSTACK;						\ -      goto yybackup;						\ -    }								\ -  else								\ -    {								\ -      yyerror (YY_("syntax error: cannot back up")); \ -      YYERROR;							\ -    }								\ -while (0) - - -#define YYTERROR	1 -#define YYERRCODE	256 - - -/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. -   If N is 0, then set CURRENT to the empty location which ends -   the previous symbol: RHS[0] (always defined).  */ - -#define YYRHSLOC(Rhs, K) ((Rhs)[K]) -#ifndef YYLLOC_DEFAULT -# define YYLLOC_DEFAULT(Current, Rhs, N)				\ -    do									\ -      if (N)								\ -	{								\ -	  (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;	\ -	  (Current).first_column = YYRHSLOC (Rhs, 1).first_column;	\ -	  (Current).last_line    = YYRHSLOC (Rhs, N).last_line;		\ -	  (Current).last_column  = YYRHSLOC (Rhs, N).last_column;	\ -	}								\ -      else								\ -	{								\ -	  (Current).first_line   = (Current).last_line   =		\ -	    YYRHSLOC (Rhs, 0).last_line;				\ -	  (Current).first_column = (Current).last_column =		\ -	    YYRHSLOC (Rhs, 0).last_column;				\ -	}								\ -    while (0) -#endif - - -/* YY_LOCATION_PRINT -- Print the location on the stream. -   This macro was not mandated originally: define only if we know -   we won't break user code: when these are the locations we know.  */ - -#ifndef YY_LOCATION_PRINT -# if YYLTYPE_IS_TRIVIAL -#  define YY_LOCATION_PRINT(File, Loc)			\ -     fprintf (File, "%d.%d-%d.%d",			\ -              (Loc).first_line, (Loc).first_column,	\ -              (Loc).last_line,  (Loc).last_column) -# else -#  define YY_LOCATION_PRINT(File, Loc) ((void) 0) -# endif -#endif - - -/* YYLEX -- calling `yylex' with the right arguments.  */ - -#ifdef YYLEX_PARAM -# define YYLEX yylex (YYLEX_PARAM) -#else -# define YYLEX yylex () -#endif - -/* Enable debugging if requested.  */ -#if YYDEBUG - -# ifndef YYFPRINTF -#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */ -#  define YYFPRINTF fprintf -# endif - -# define YYDPRINTF(Args)			\ -do {						\ -  if (yydebug)					\ -    YYFPRINTF Args;				\ -} while (0) - -# define YY_SYMBOL_PRINT(Title, Type, Value, Location)		\ -do {								\ -  if (yydebug)							\ -    {								\ -      YYFPRINTF (stderr, "%s ", Title);				\ -      yysymprint (stderr,					\ -                  Type, Value);	\ -      YYFPRINTF (stderr, "\n");					\ -    }								\ -} while (0) - -/*------------------------------------------------------------------. -| yy_stack_print -- Print the state stack from its BOTTOM up to its | -| TOP (included).                                                   | -`------------------------------------------------------------------*/ - -#if defined (__STDC__) || defined (__cplusplus) -static void -yy_stack_print (short int *bottom, short int *top) -#else -static void -yy_stack_print (bottom, top) -    short int *bottom; -    short int *top; -#endif -{ -  YYFPRINTF (stderr, "Stack now"); -  for (/* Nothing. */; bottom <= top; ++bottom) -    YYFPRINTF (stderr, " %d", *bottom); -  YYFPRINTF (stderr, "\n"); -} - -# define YY_STACK_PRINT(Bottom, Top)				\ -do {								\ -  if (yydebug)							\ -    yy_stack_print ((Bottom), (Top));				\ -} while (0) - - -/*------------------------------------------------. -| Report that the YYRULE is going to be reduced.  | -`------------------------------------------------*/ - -#if defined (__STDC__) || defined (__cplusplus) -static void -yy_reduce_print (int yyrule) -#else -static void -yy_reduce_print (yyrule) -    int yyrule; -#endif -{ -  int yyi; -  unsigned long int yylno = yyrline[yyrule]; -  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ", -             yyrule - 1, yylno); -  /* Print the symbols being reduced, and their result.  */ -  for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++) -    YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]); -  YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]); -} - -# define YY_REDUCE_PRINT(Rule)		\ -do {					\ -  if (yydebug)				\ -    yy_reduce_print (Rule);		\ -} while (0) - -/* Nonzero means print parse trace.  It is left uninitialized so that -   multiple parsers can coexist.  */ -int yydebug; -#else /* !YYDEBUG */ -# define YYDPRINTF(Args) -# define YY_SYMBOL_PRINT(Title, Type, Value, Location) -# define YY_STACK_PRINT(Bottom, Top) -# define YY_REDUCE_PRINT(Rule) -#endif /* !YYDEBUG */ - - -/* YYINITDEPTH -- initial size of the parser's stacks.  */ -#ifndef	YYINITDEPTH -# define YYINITDEPTH 200 -#endif - -/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only -   if the built-in stack extension method is used). - -   Do not make this value too large; the results are undefined if -   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) -   evaluated with infinite-precision integer arithmetic.  */ - -#ifndef YYMAXDEPTH -# define YYMAXDEPTH 10000 -#endif - - - -#if YYERROR_VERBOSE - -# ifndef yystrlen -#  if defined (__GLIBC__) && defined (_STRING_H) -#   define yystrlen strlen -#  else -/* Return the length of YYSTR.  */ -static YYSIZE_T -#   if defined (__STDC__) || defined (__cplusplus) -yystrlen (const char *yystr) -#   else -yystrlen (yystr) -     const char *yystr; -#   endif -{ -  const char *yys = yystr; - -  while (*yys++ != '\0') -    continue; - -  return yys - yystr - 1; -} -#  endif -# endif - -# ifndef yystpcpy -#  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) -#   define yystpcpy stpcpy -#  else -/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in -   YYDEST.  */ -static char * -#   if defined (__STDC__) || defined (__cplusplus) -yystpcpy (char *yydest, const char *yysrc) -#   else -yystpcpy (yydest, yysrc) -     char *yydest; -     const char *yysrc; -#   endif -{ -  char *yyd = yydest; -  const char *yys = yysrc; - -  while ((*yyd++ = *yys++) != '\0') -    continue; - -  return yyd - 1; -} -#  endif -# endif - -# ifndef yytnamerr -/* Copy to YYRES the contents of YYSTR after stripping away unnecessary -   quotes and backslashes, so that it's suitable for yyerror.  The -   heuristic is that double-quoting is unnecessary unless the string -   contains an apostrophe, a comma, or backslash (other than -   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is -   null, do not copy; instead, return the length of what the result -   would have been.  */ -static YYSIZE_T -yytnamerr (char *yyres, const char *yystr) -{ -  if (*yystr == '"') -    { -      size_t yyn = 0; -      char const *yyp = yystr; - -      for (;;) -	switch (*++yyp) -	  { -	  case '\'': -	  case ',': -	    goto do_not_strip_quotes; - -	  case '\\': -	    if (*++yyp != '\\') -	      goto do_not_strip_quotes; -	    /* Fall through.  */ -	  default: -	    if (yyres) -	      yyres[yyn] = *yyp; -	    yyn++; -	    break; - -	  case '"': -	    if (yyres) -	      yyres[yyn] = '\0'; -	    return yyn; -	  } -    do_not_strip_quotes: ; -    } - -  if (! yyres) -    return yystrlen (yystr); - -  return yystpcpy (yyres, yystr) - yyres; -} -# endif - -#endif /* YYERROR_VERBOSE */ - - - -#if YYDEBUG -/*--------------------------------. -| Print this symbol on YYOUTPUT.  | -`--------------------------------*/ - -#if defined (__STDC__) || defined (__cplusplus) -static void -yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep) -#else -static void -yysymprint (yyoutput, yytype, yyvaluep) -    FILE *yyoutput; -    int yytype; -    YYSTYPE *yyvaluep; -#endif -{ -  /* Pacify ``unused variable'' warnings.  */ -  (void) yyvaluep; - -  if (yytype < YYNTOKENS) -    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); -  else -    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); - - -# ifdef YYPRINT -  if (yytype < YYNTOKENS) -    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); -# endif -  switch (yytype) -    { -      default: -        break; -    } -  YYFPRINTF (yyoutput, ")"); -} - -#endif /* ! YYDEBUG */ -/*-----------------------------------------------. -| Release the memory associated to this symbol.  | -`-----------------------------------------------*/ - -#if defined (__STDC__) || defined (__cplusplus) -static void -yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) -#else -static void -yydestruct (yymsg, yytype, yyvaluep) -    const char *yymsg; -    int yytype; -    YYSTYPE *yyvaluep; -#endif -{ -  /* Pacify ``unused variable'' warnings.  */ -  (void) yyvaluep; - -  if (!yymsg) -    yymsg = "Deleting"; -  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); - -  switch (yytype) -    { - -      default: -        break; -    } -} - - -/* Prevent warnings from -Wmissing-prototypes.  */ - -#ifdef YYPARSE_PARAM -# if defined (__STDC__) || defined (__cplusplus) -int yyparse (void *YYPARSE_PARAM); -# else -int yyparse (); -# endif -#else /* ! YYPARSE_PARAM */ -#if defined (__STDC__) || defined (__cplusplus) -int yyparse (void); -#else -int yyparse (); -#endif -#endif /* ! YYPARSE_PARAM */ - - - -/* The look-ahead symbol.  */ -int yychar; - -/* The semantic value of the look-ahead symbol.  */ -YYSTYPE yylval; - -/* Number of syntax errors so far.  */ -int yynerrs; - - - -/*----------. -| yyparse.  | -`----------*/ - -#ifdef YYPARSE_PARAM -# if defined (__STDC__) || defined (__cplusplus) -int yyparse (void *YYPARSE_PARAM) -# else -int yyparse (YYPARSE_PARAM) -  void *YYPARSE_PARAM; -# endif -#else /* ! YYPARSE_PARAM */ -#if defined (__STDC__) || defined (__cplusplus) -int -yyparse (void) -#else -int -yyparse () -    ; -#endif -#endif -{ -   -  int yystate; -  int yyn; -  int yyresult; -  /* Number of tokens to shift before error messages enabled.  */ -  int yyerrstatus; -  /* Look-ahead token as an internal (translated) token number.  */ -  int yytoken = 0; - -  /* Three stacks and their tools: -     `yyss': related to states, -     `yyvs': related to semantic values, -     `yyls': related to locations. - -     Refer to the stacks thru separate pointers, to allow yyoverflow -     to reallocate them elsewhere.  */ - -  /* The state stack.  */ -  short int yyssa[YYINITDEPTH]; -  short int *yyss = yyssa; -  short int *yyssp; - -  /* The semantic value stack.  */ -  YYSTYPE yyvsa[YYINITDEPTH]; -  YYSTYPE *yyvs = yyvsa; -  YYSTYPE *yyvsp; - - - -#define YYPOPSTACK   (yyvsp--, yyssp--) - -  YYSIZE_T yystacksize = YYINITDEPTH; - -  /* The variables used to return semantic value and location from the -     action routines.  */ -  YYSTYPE yyval; - - -  /* When reducing, the number of symbols on the RHS of the reduced -     rule.  */ -  int yylen; - -  YYDPRINTF ((stderr, "Starting parse\n")); - -  yystate = 0; -  yyerrstatus = 0; -  yynerrs = 0; -  yychar = YYEMPTY;		/* Cause a token to be read.  */ - -  /* Initialize stack pointers. -     Waste one element of value and location stack -     so that they stay on the same level as the state stack. -     The wasted elements are never initialized.  */ - -  yyssp = yyss; -  yyvsp = yyvs; - -  goto yysetstate; - -/*------------------------------------------------------------. -| yynewstate -- Push a new state, which is found in yystate.  | -`------------------------------------------------------------*/ - yynewstate: -  /* In all cases, when you get here, the value and location stacks -     have just been pushed. so pushing a state here evens the stacks. -     */ -  yyssp++; - - yysetstate: -  *yyssp = yystate; - -  if (yyss + yystacksize - 1 <= yyssp) -    { -      /* Get the current used size of the three stacks, in elements.  */ -      YYSIZE_T yysize = yyssp - yyss + 1; - -#ifdef yyoverflow -      { -	/* Give user a chance to reallocate the stack. Use copies of -	   these so that the &'s don't force the real ones into -	   memory.  */ -	YYSTYPE *yyvs1 = yyvs; -	short int *yyss1 = yyss; - - -	/* Each stack pointer address is followed by the size of the -	   data in use in that stack, in bytes.  This used to be a -	   conditional around just the two extra args, but that might -	   be undefined if yyoverflow is a macro.  */ -	yyoverflow (YY_("memory exhausted"), -		    &yyss1, yysize * sizeof (*yyssp), -		    &yyvs1, yysize * sizeof (*yyvsp), - -		    &yystacksize); - -	yyss = yyss1; -	yyvs = yyvs1; -      } -#else /* no yyoverflow */ -# ifndef YYSTACK_RELOCATE -      goto yyexhaustedlab; -# else -      /* Extend the stack our own way.  */ -      if (YYMAXDEPTH <= yystacksize) -	goto yyexhaustedlab; -      yystacksize *= 2; -      if (YYMAXDEPTH < yystacksize) -	yystacksize = YYMAXDEPTH; - -      { -	short int *yyss1 = yyss; -	union yyalloc *yyptr = -	  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); -	if (! yyptr) -	  goto yyexhaustedlab; -	YYSTACK_RELOCATE (yyss); -	YYSTACK_RELOCATE (yyvs); - -#  undef YYSTACK_RELOCATE -	if (yyss1 != yyssa) -	  YYSTACK_FREE (yyss1); -      } -# endif -#endif /* no yyoverflow */ - -      yyssp = yyss + yysize - 1; -      yyvsp = yyvs + yysize - 1; - - -      YYDPRINTF ((stderr, "Stack size increased to %lu\n", -		  (unsigned long int) yystacksize)); - -      if (yyss + yystacksize - 1 <= yyssp) -	YYABORT; -    } - -  YYDPRINTF ((stderr, "Entering state %d\n", yystate)); - -  goto yybackup; - -/*-----------. -| yybackup.  | -`-----------*/ -yybackup: - -/* Do appropriate processing given the current state.  */ -/* Read a look-ahead token if we need one and don't already have one.  */ -/* yyresume: */ - -  /* First try to decide what to do without reference to look-ahead token.  */ - -  yyn = yypact[yystate]; -  if (yyn == YYPACT_NINF) -    goto yydefault; - -  /* Not known => get a look-ahead token if don't already have one.  */ - -  /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */ -  if (yychar == YYEMPTY) -    { -      YYDPRINTF ((stderr, "Reading a token: ")); -      yychar = YYLEX; -    } - -  if (yychar <= YYEOF) -    { -      yychar = yytoken = YYEOF; -      YYDPRINTF ((stderr, "Now at end of input.\n")); -    } -  else -    { -      yytoken = YYTRANSLATE (yychar); -      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); -    } - -  /* If the proper action on seeing token YYTOKEN is to reduce or to -     detect an error, take that action.  */ -  yyn += yytoken; -  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) -    goto yydefault; -  yyn = yytable[yyn]; -  if (yyn <= 0) -    { -      if (yyn == 0 || yyn == YYTABLE_NINF) -	goto yyerrlab; -      yyn = -yyn; -      goto yyreduce; -    } - -  if (yyn == YYFINAL) -    YYACCEPT; - -  /* Shift the look-ahead token.  */ -  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - -  /* Discard the token being shifted unless it is eof.  */ -  if (yychar != YYEOF) -    yychar = YYEMPTY; - -  *++yyvsp = yylval; - - -  /* Count tokens shifted since error; after three, turn off error -     status.  */ -  if (yyerrstatus) -    yyerrstatus--; - -  yystate = yyn; -  goto yynewstate; - - -/*-----------------------------------------------------------. -| yydefault -- do the default action for the current state.  | -`-----------------------------------------------------------*/ -yydefault: -  yyn = yydefact[yystate]; -  if (yyn == 0) -    goto yyerrlab; -  goto yyreduce; - - -/*-----------------------------. -| yyreduce -- Do a reduction.  | -`-----------------------------*/ -yyreduce: -  /* yyn is the number of a rule to reduce with.  */ -  yylen = yyr2[yyn]; - -  /* If YYLEN is nonzero, implement the default value of the action: -     `$$ = $1'. - -     Otherwise, the following line sets YYVAL to garbage. -     This behavior is undocumented and Bison -     users should not rely upon it.  Assigning to YYVAL -     unconditionally makes the parser a bit smaller, and it avoids a -     GCC warning that YYVAL may be used uninitialized.  */ -  yyval = yyvsp[1-yylen]; - - -  YY_REDUCE_PRINT (yyn); -  switch (yyn) -    { -        case 4: -#line 49 "defparse.y" -    { def_name ((yyvsp[-1].id), (yyvsp[0].number)); } -    break; - -  case 5: -#line 50 "defparse.y" -    { def_library ((yyvsp[-2].id), (yyvsp[-1].number)); } -    break; - -  case 7: -#line 52 "defparse.y" -    { def_description ((yyvsp[0].id));} -    break; - -  case 8: -#line 53 "defparse.y" -    { def_stacksize ((yyvsp[-1].number), (yyvsp[0].number));} -    break; - -  case 9: -#line 54 "defparse.y" -    { def_heapsize ((yyvsp[-1].number), (yyvsp[0].number));} -    break; - -  case 10: -#line 55 "defparse.y" -    { def_code ((yyvsp[0].number));} -    break; - -  case 11: -#line 56 "defparse.y" -    { def_data ((yyvsp[0].number));} -    break; - -  case 14: -#line 59 "defparse.y" -    { def_version ((yyvsp[0].number),0);} -    break; - -  case 15: -#line 60 "defparse.y" -    { def_version ((yyvsp[-2].number),(yyvsp[0].number));} -    break; - -  case 18: -#line 71 "defparse.y" -    { def_exports ((yyvsp[-6].id), (yyvsp[-5].id), (yyvsp[-4].number), (yyvsp[-3].number), (yyvsp[-2].number), (yyvsp[-1].number), (yyvsp[0].number));} -    break; - -  case 21: -#line 79 "defparse.y" -    { def_import ((yyvsp[-6].id),(yyvsp[-4].id),(yyvsp[-2].id),(yyvsp[0].id), 0); } -    break; - -  case 22: -#line 80 "defparse.y" -    { def_import ((yyvsp[-6].id),(yyvsp[-4].id),(yyvsp[-2].id), 0,(yyvsp[0].number)); } -    break; - -  case 23: -#line 81 "defparse.y" -    { def_import ((yyvsp[-4].id),(yyvsp[-2].id), 0,(yyvsp[0].id), 0); } -    break; - -  case 24: -#line 82 "defparse.y" -    { def_import ((yyvsp[-4].id),(yyvsp[-2].id), 0, 0,(yyvsp[0].number)); } -    break; - -  case 25: -#line 83 "defparse.y" -    { def_import ( 0,(yyvsp[-4].id),(yyvsp[-2].id),(yyvsp[0].id), 0); } -    break; - -  case 26: -#line 84 "defparse.y" -    { def_import ( 0,(yyvsp[-4].id),(yyvsp[-2].id), 0,(yyvsp[0].number)); } -    break; - -  case 27: -#line 85 "defparse.y" -    { def_import ( 0,(yyvsp[-2].id), 0,(yyvsp[0].id), 0); } -    break; - -  case 28: -#line 86 "defparse.y" -    { def_import ( 0,(yyvsp[-2].id), 0, 0,(yyvsp[0].number)); } -    break; - -  case 31: -#line 95 "defparse.y" -    { def_section ((yyvsp[-1].id),(yyvsp[0].number));} -    break; - -  case 36: -#line 107 "defparse.y" -    { (yyval.number)=(yyvsp[0].number);} -    break; - -  case 37: -#line 108 "defparse.y" -    { (yyval.number)=-1;} -    break; - -  case 38: -#line 112 "defparse.y" -    { (yyval.number) = 1; } -    break; - -  case 39: -#line 113 "defparse.y" -    { (yyval.number) = 2; } -    break; - -  case 40: -#line 114 "defparse.y" -    { (yyval.number) = 4; } -    break; - -  case 41: -#line 115 "defparse.y" -    { (yyval.number) = 8; } -    break; - -  case 42: -#line 116 "defparse.y" -    { (yyval.number) = 0; } -    break; - -  case 43: -#line 117 "defparse.y" -    { (yyval.number) = 0; } -    break; - -  case 44: -#line 118 "defparse.y" -    { (yyval.number) = 0; } -    break; - -  case 45: -#line 122 "defparse.y" -    {(yyval.number)=1;} -    break; - -  case 46: -#line 123 "defparse.y" -    {(yyval.number)=0;} -    break; - -  case 47: -#line 127 "defparse.y" -    {(yyval.number)=1;} -    break; - -  case 48: -#line 128 "defparse.y" -    {(yyval.number)=0;} -    break; - -  case 49: -#line 132 "defparse.y" -    { (yyval.number) = 1; } -    break; - -  case 50: -#line 133 "defparse.y" -    { (yyval.number) = 0; } -    break; - -  case 51: -#line 137 "defparse.y" -    { (yyval.number) = 1; } -    break; - -  case 52: -#line 138 "defparse.y" -    { (yyval.number) = 0; } -    break; - -  case 53: -#line 141 "defparse.y" -    { (yyval.id) =(yyvsp[0].id); } -    break; - -  case 54: -#line 143 "defparse.y" -    {  -	    char *name = xmalloc (strlen ((yyvsp[-2].id)) + 1 + strlen ((yyvsp[0].id)) + 1); -	    sprintf (name, "%s.%s", (yyvsp[-2].id), (yyvsp[0].id)); -	    (yyval.id) = name; -	  } -    break; - -  case 55: -#line 148 "defparse.y" -    { (yyval.id)=""; } -    break; - -  case 56: -#line 152 "defparse.y" -    { (yyval.number)=(yyvsp[0].number);} -    break; - -  case 57: -#line 153 "defparse.y" -    { (yyval.number)=-1;} -    break; - -  case 58: -#line 157 "defparse.y" -    { (yyval.id) = (yyvsp[0].id); } -    break; - -  case 59: -#line 159 "defparse.y" -    {  -	    char *name = xmalloc (strlen ((yyvsp[-2].id)) + 1 + strlen ((yyvsp[0].id)) + 1); -	    sprintf (name, "%s.%s", (yyvsp[-2].id), (yyvsp[0].id)); -	    (yyval.id) = name; -	  } -    break; - -  case 60: -#line 164 "defparse.y" -    { (yyval.id) =  0; } -    break; - -  case 61: -#line 167 "defparse.y" -    { (yyval.number)= (yyvsp[0].number);} -    break; - -  case 62: -#line 168 "defparse.y" -    { (yyval.number)=-1;} -    break; - - -      default: break; -    } - -/* Line 1126 of yacc.c.  */ -#line 1510 "defparse.c" - -  yyvsp -= yylen; -  yyssp -= yylen; - - -  YY_STACK_PRINT (yyss, yyssp); - -  *++yyvsp = yyval; - - -  /* Now `shift' the result of the reduction.  Determine what state -     that goes to, based on the state we popped back to and the rule -     number reduced by.  */ - -  yyn = yyr1[yyn]; - -  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; -  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) -    yystate = yytable[yystate]; -  else -    yystate = yydefgoto[yyn - YYNTOKENS]; - -  goto yynewstate; - - -/*------------------------------------. -| yyerrlab -- here on detecting error | -`------------------------------------*/ -yyerrlab: -  /* If not already recovering from an error, report this error.  */ -  if (!yyerrstatus) -    { -      ++yynerrs; -#if YYERROR_VERBOSE -      yyn = yypact[yystate]; - -      if (YYPACT_NINF < yyn && yyn < YYLAST) -	{ -	  int yytype = YYTRANSLATE (yychar); -	  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); -	  YYSIZE_T yysize = yysize0; -	  YYSIZE_T yysize1; -	  int yysize_overflow = 0; -	  char *yymsg = 0; -#	  define YYERROR_VERBOSE_ARGS_MAXIMUM 5 -	  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; -	  int yyx; - -#if 0 -	  /* This is so xgettext sees the translatable formats that are -	     constructed on the fly.  */ -	  YY_("syntax error, unexpected %s"); -	  YY_("syntax error, unexpected %s, expecting %s"); -	  YY_("syntax error, unexpected %s, expecting %s or %s"); -	  YY_("syntax error, unexpected %s, expecting %s or %s or %s"); -	  YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -#endif -	  char *yyfmt; -	  char const *yyf; -	  static char const yyunexpected[] = "syntax error, unexpected %s"; -	  static char const yyexpecting[] = ", expecting %s"; -	  static char const yyor[] = " or %s"; -	  char yyformat[sizeof yyunexpected -			+ sizeof yyexpecting - 1 -			+ ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) -			   * (sizeof yyor - 1))]; -	  char const *yyprefix = yyexpecting; - -	  /* Start YYX at -YYN if negative to avoid negative indexes in -	     YYCHECK.  */ -	  int yyxbegin = yyn < 0 ? -yyn : 0; - -	  /* Stay within bounds of both yycheck and yytname.  */ -	  int yychecklim = YYLAST - yyn; -	  int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; -	  int yycount = 1; - -	  yyarg[0] = yytname[yytype]; -	  yyfmt = yystpcpy (yyformat, yyunexpected); - -	  for (yyx = yyxbegin; yyx < yyxend; ++yyx) -	    if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) -	      { -		if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) -		  { -		    yycount = 1; -		    yysize = yysize0; -		    yyformat[sizeof yyunexpected - 1] = '\0'; -		    break; -		  } -		yyarg[yycount++] = yytname[yyx]; -		yysize1 = yysize + yytnamerr (0, yytname[yyx]); -		yysize_overflow |= yysize1 < yysize; -		yysize = yysize1; -		yyfmt = yystpcpy (yyfmt, yyprefix); -		yyprefix = yyor; -	      } - -	  yyf = YY_(yyformat); -	  yysize1 = yysize + yystrlen (yyf); -	  yysize_overflow |= yysize1 < yysize; -	  yysize = yysize1; - -	  if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM) -	    yymsg = (char *) YYSTACK_ALLOC (yysize); -	  if (yymsg) -	    { -	      /* Avoid sprintf, as that infringes on the user's name space. -		 Don't have undefined behavior even if the translation -		 produced a string with the wrong number of "%s"s.  */ -	      char *yyp = yymsg; -	      int yyi = 0; -	      while ((*yyp = *yyf)) -		{ -		  if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) -		    { -		      yyp += yytnamerr (yyp, yyarg[yyi++]); -		      yyf += 2; -		    } -		  else -		    { -		      yyp++; -		      yyf++; -		    } -		} -	      yyerror (yymsg); -	      YYSTACK_FREE (yymsg); -	    } -	  else -	    { -	      yyerror (YY_("syntax error")); -	      goto yyexhaustedlab; -	    } -	} -      else -#endif /* YYERROR_VERBOSE */ -	yyerror (YY_("syntax error")); -    } - - - -  if (yyerrstatus == 3) -    { -      /* If just tried and failed to reuse look-ahead token after an -	 error, discard it.  */ - -      if (yychar <= YYEOF) -        { -	  /* Return failure if at end of input.  */ -	  if (yychar == YYEOF) -	    YYABORT; -        } -      else -	{ -	  yydestruct ("Error: discarding", yytoken, &yylval); -	  yychar = YYEMPTY; -	} -    } - -  /* Else will try to reuse look-ahead token after shifting the error -     token.  */ -  goto yyerrlab1; - - -/*---------------------------------------------------. -| yyerrorlab -- error raised explicitly by YYERROR.  | -`---------------------------------------------------*/ -yyerrorlab: - -  /* Pacify compilers like GCC when the user code never invokes -     YYERROR and the label yyerrorlab therefore never appears in user -     code.  */ -  if (0) -     goto yyerrorlab; - -yyvsp -= yylen; -  yyssp -= yylen; -  yystate = *yyssp; -  goto yyerrlab1; - - -/*-------------------------------------------------------------. -| yyerrlab1 -- common code for both syntax error and YYERROR.  | -`-------------------------------------------------------------*/ -yyerrlab1: -  yyerrstatus = 3;	/* Each real token shifted decrements this.  */ - -  for (;;) -    { -      yyn = yypact[yystate]; -      if (yyn != YYPACT_NINF) -	{ -	  yyn += YYTERROR; -	  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) -	    { -	      yyn = yytable[yyn]; -	      if (0 < yyn) -		break; -	    } -	} - -      /* Pop the current state because it cannot handle the error token.  */ -      if (yyssp == yyss) -	YYABORT; - - -      yydestruct ("Error: popping", yystos[yystate], yyvsp); -      YYPOPSTACK; -      yystate = *yyssp; -      YY_STACK_PRINT (yyss, yyssp); -    } - -  if (yyn == YYFINAL) -    YYACCEPT; - -  *++yyvsp = yylval; - - -  /* Shift the error token. */ -  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); - -  yystate = yyn; -  goto yynewstate; - - -/*-------------------------------------. -| yyacceptlab -- YYACCEPT comes here.  | -`-------------------------------------*/ -yyacceptlab: -  yyresult = 0; -  goto yyreturn; - -/*-----------------------------------. -| yyabortlab -- YYABORT comes here.  | -`-----------------------------------*/ -yyabortlab: -  yyresult = 1; -  goto yyreturn; - -#ifndef yyoverflow -/*-------------------------------------------------. -| yyexhaustedlab -- memory exhaustion comes here.  | -`-------------------------------------------------*/ -yyexhaustedlab: -  yyerror (YY_("memory exhausted")); -  yyresult = 2; -  /* Fall through.  */ -#endif - -yyreturn: -  if (yychar != YYEOF && yychar != YYEMPTY) -     yydestruct ("Cleanup: discarding lookahead", -		 yytoken, &yylval); -  while (yyssp != yyss) -    { -      yydestruct ("Cleanup: popping", -		  yystos[*yyssp], yyvsp); -      YYPOPSTACK; -    } -#ifndef yyoverflow -  if (yyss != yyssa) -    YYSTACK_FREE (yyss); -#endif -  return yyresult; -} - - - | 
