/* 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 {
     REAL = 258,
     INTEGER = 259,
     CHAR_TOK = 260,
     STRING = 261,
     SIMPLE_IDENTIFIER = 262,
     IDENTIFIER = 263,
     TYPENAME_IDENTIFIER = 264,
     SCOPING = 265,
     TYPEDEFNAME = 266,
     ELLIPSIS = 267,
     OROR = 268,
     ANDAND = 269,
     EQCOMPARE = 270,
     NECOMPARE = 271,
     LECOMPARE = 272,
     GECOMPARE = 273,
     LSHIFT = 274,
     RSHIFT = 275,
     POINTSAT_STAR = 276,
     DOT_STAR = 277,
     UNARY = 278,
     UNARY_NOT = 279,
     UNARY_NEGATE = 280,
     UNARY_MINUS = 281,
     UNARY_STAR = 282,
     UNARY_REF = 283,
     POINTSAT = 284,
     SCOPE = 285,
     PLUSPLUS = 286,
     MINUSMINUS = 287,
     TIMESEQUAL = 288,
     DIVIDEEQUAL = 289,
     MODEQUAL = 290,
     PLUSEQUAL = 291,
     MINUSEQUAL = 292,
     OREQUAL = 293,
     ANDEQUAL = 294,
     XOREQUAL = 295,
     LSHIFTEQUAL = 296,
     RSHIFTEQUAL = 297,
     TOKENPASTE = 298,
     KW_BEGIN_PUBLISH = 299,
     KW_BLOCKING = 300,
     KW_BOOL = 301,
     KW_CATCH = 302,
     KW_CHAR = 303,
     KW_WCHAR_T = 304,
     KW_CLASS = 305,
     KW_CONST = 306,
     KW_DELETE = 307,
     KW_DOUBLE = 308,
     KW_DYNAMIC_CAST = 309,
     KW_ELSE = 310,
     KW_END_PUBLISH = 311,
     KW_ENUM = 312,
     KW_EXTERN = 313,
     KW_EXPLICIT = 314,
     KW_PUBLISHED = 315,
     KW_FALSE = 316,
     KW_FLOAT = 317,
     KW_FRIEND = 318,
     KW_FOR = 319,
     KW_GOTO = 320,
     KW_IF = 321,
     KW_INLINE = 322,
     KW_INT = 323,
     KW_LONG = 324,
     KW_LONGLONG = 325,
     KW_MUTABLE = 326,
     KW_NAMESPACE = 327,
     KW_NEW = 328,
     KW_OPERATOR = 329,
     KW_PRIVATE = 330,
     KW_PROTECTED = 331,
     KW_PUBLIC = 332,
     KW_REGISTER = 333,
     KW_RETURN = 334,
     KW_SHORT = 335,
     KW_SIGNED = 336,
     KW_SIZEOF = 337,
     KW_STATIC = 338,
     KW_STATIC_CAST = 339,
     KW_STRUCT = 340,
     KW_TEMPLATE = 341,
     KW_THROW = 342,
     KW_TRUE = 343,
     KW_TRY = 344,
     KW_TYPEDEF = 345,
     KW_TYPENAME = 346,
     KW_UNION = 347,
     KW_UNSIGNED = 348,
     KW_USING = 349,
     KW_VIRTUAL = 350,
     KW_VOID = 351,
     KW_VOLATILE = 352,
     KW_WHILE = 353,
     START_CPP = 354,
     START_CONST_EXPR = 355,
     START_TYPE = 356
   };
#endif
#define REAL 258
#define INTEGER 259
#define CHAR_TOK 260
#define STRING 261
#define SIMPLE_IDENTIFIER 262
#define IDENTIFIER 263
#define TYPENAME_IDENTIFIER 264
#define SCOPING 265
#define TYPEDEFNAME 266
#define ELLIPSIS 267
#define OROR 268
#define ANDAND 269
#define EQCOMPARE 270
#define NECOMPARE 271
#define LECOMPARE 272
#define GECOMPARE 273
#define LSHIFT 274
#define RSHIFT 275
#define POINTSAT_STAR 276
#define DOT_STAR 277
#define UNARY 278
#define UNARY_NOT 279
#define UNARY_NEGATE 280
#define UNARY_MINUS 281
#define UNARY_STAR 282
#define UNARY_REF 283
#define POINTSAT 284
#define SCOPE 285
#define PLUSPLUS 286
#define MINUSMINUS 287
#define TIMESEQUAL 288
#define DIVIDEEQUAL 289
#define MODEQUAL 290
#define PLUSEQUAL 291
#define MINUSEQUAL 292
#define OREQUAL 293
#define ANDEQUAL 294
#define XOREQUAL 295
#define LSHIFTEQUAL 296
#define RSHIFTEQUAL 297
#define TOKENPASTE 298
#define KW_BEGIN_PUBLISH 299
#define KW_BLOCKING 300
#define KW_BOOL 301
#define KW_CATCH 302
#define KW_CHAR 303
#define KW_WCHAR_T 304
#define KW_CLASS 305
#define KW_CONST 306
#define KW_DELETE 307
#define KW_DOUBLE 308
#define KW_DYNAMIC_CAST 309
#define KW_ELSE 310
#define KW_END_PUBLISH 311
#define KW_ENUM 312
#define KW_EXTERN 313
#define KW_EXPLICIT 314
#define KW_PUBLISHED 315
#define KW_FALSE 316
#define KW_FLOAT 317
#define KW_FRIEND 318
#define KW_FOR 319
#define KW_GOTO 320
#define KW_IF 321
#define KW_INLINE 322
#define KW_INT 323
#define KW_LONG 324
#define KW_LONGLONG 325
#define KW_MUTABLE 326
#define KW_NAMESPACE 327
#define KW_NEW 328
#define KW_OPERATOR 329
#define KW_PRIVATE 330
#define KW_PROTECTED 331
#define KW_PUBLIC 332
#define KW_REGISTER 333
#define KW_RETURN 334
#define KW_SHORT 335
#define KW_SIGNED 336
#define KW_SIZEOF 337
#define KW_STATIC 338
#define KW_STATIC_CAST 339
#define KW_STRUCT 340
#define KW_TEMPLATE 341
#define KW_THROW 342
#define KW_TRUE 343
#define KW_TRY 344
#define KW_TYPEDEF 345
#define KW_TYPENAME 346
#define KW_UNION 347
#define KW_UNSIGNED 348
#define KW_USING 349
#define KW_VIRTUAL 350
#define KW_VOID 351
#define KW_VOLATILE 352
#define KW_WHILE 353
#define START_CPP 354
#define START_CONST_EXPR 355
#define START_TYPE 356




#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
typedef int YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
#endif



#if ! defined (YYLTYPE) && ! defined (YYLTYPE_IS_DECLARED)
typedef struct YYLTYPE
{
  int first_line;
  int first_column;
  int last_line;
  int last_column;
} YYLTYPE;
# define yyltype YYLTYPE /* obsolescent; will be withdrawn */
# define YYLTYPE_IS_DECLARED 1
# define YYLTYPE_IS_TRIVIAL 1
#endif




