/* A Bison parser, made by GNU Bison 1.875b.  */

/* Skeleton parser for Yacc-like parsing with Bison,
   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 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., 59 Temple Place - Suite 330,
   Boston, MA 02111-1307, 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.  */

/* Tokens.  */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
   /* Put the tokens into the symbol table, so that GDB and other debuggers
      know about them.  */
   enum yytokentype {
     IF = 258,
     THEN = 259,
     ELSE = 260,
     ELIF = 261,
     FI = 262,
     CASE = 263,
     ESAC = 264,
     FOR = 265,
     SELECT = 266,
     WHILE = 267,
     UNTIL = 268,
     DO = 269,
     DONE = 270,
     FUNCTION = 271,
     IN = 272,
     BANG = 273,
     WORD = 274,
     ASSIGNMENT_WORD = 275,
     NUMBER = 276,
     AND_AND = 277,
     OR_OR = 278,
     GREATER_GREATER = 279,
     LESS_LESS = 280,
     LESS_AND = 281,
     GREATER_AND = 282,
     SEMI_SEMI = 283,
     LESS_LESS_MINUS = 284,
     AND_GREATER = 285,
     LESS_GREATER = 286,
     GREATER_BAR = 287,
     yacc_EOF = 288
   };
#endif
#define IF 258
#define THEN 259
#define ELSE 260
#define ELIF 261
#define FI 262
#define CASE 263
#define ESAC 264
#define FOR 265
#define SELECT 266
#define WHILE 267
#define UNTIL 268
#define DO 269
#define DONE 270
#define FUNCTION 271
#define IN 272
#define BANG 273
#define WORD 274
#define ASSIGNMENT_WORD 275
#define NUMBER 276
#define AND_AND 277
#define OR_OR 278
#define GREATER_GREATER 279
#define LESS_LESS 280
#define LESS_AND 281
#define GREATER_AND 282
#define SEMI_SEMI 283
#define LESS_LESS_MINUS 284
#define AND_GREATER 285
#define LESS_GREATER 286
#define GREATER_BAR 287
#define yacc_EOF 288




#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
#line 122 "./parse.y"
typedef union YYSTYPE {
  WORD_DESC *word;		/* the word that we read. */
  int number;			/* the number that we read. */
  WORD_LIST *word_list;
  COMMAND *command;
  REDIRECT *redirect;
  ELEMENT element;
  PATTERN_LIST *pattern;
} YYSTYPE;
/* Line 1252 of yacc.c.  */
#line 113 "y.tab.h"
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
#endif

extern YYSTYPE yylval;



