This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Revert "Make instr() a macro"
[perl5.git] / perly.h
diff --git a/perly.h b/perly.h
index b40a968..acbdaae 100644 (file)
--- a/perly.h
+++ b/perly.h
@@ -1,11 +1,17 @@
-#ifdef PERL_CORE
+/* -*- buffer-read-only: t -*-
+   !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
+   This file is built by regen_perly.pl from perly.y.
+   Any changes made here will be lost!
+ */
+
+#define PERL_BISON_VERSION  20007
 
-/* A Bison parser, made by GNU Bison 2.4.1.  */
+#ifdef PERL_CORE
+/* A Bison parser, made by GNU Bison 2.7.  */
 
-/* Skeleton interface for Bison's Yacc-like parsers in C
+/* Bison interface for Yacc-like parsers in C
    
-      Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
-   Free Software Foundation, Inc.
+      Copyright (C) 1984, 1989-1990, 2000-2012 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
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
+/* Enabling traces.  */
+#ifndef YYDEBUG
+# define YYDEBUG 0
+#endif
+#if YYDEBUG
+extern int yydebug;
+#endif
 
 /* Tokens.  */
 #ifndef YYTOKENTYPE
    /* Put the tokens into the symbol table, so that GDB and other debuggers
       know about them.  */
    enum yytokentype {
-     WORD = 258,
-     METHOD = 259,
-     FUNCMETH = 260,
-     THING = 261,
-     PMFUNC = 262,
-     PRIVATEREF = 263,
-     FUNC0SUB = 264,
-     UNIOPSUB = 265,
-     LSTOPSUB = 266,
-     PLUGEXPR = 267,
-     PLUGSTMT = 268,
-     LABEL = 269,
-     FORMAT = 270,
-     SUB = 271,
-     ANONSUB = 272,
-     PACKAGE = 273,
-     USE = 274,
-     WHILE = 275,
-     UNTIL = 276,
-     IF = 277,
-     UNLESS = 278,
-     ELSE = 279,
-     ELSIF = 280,
-     CONTINUE = 281,
-     FOR = 282,
-     GIVEN = 283,
-     WHEN = 284,
-     DEFAULT = 285,
-     LOOPEX = 286,
-     DOTDOT = 287,
-     YADAYADA = 288,
-     FUNC0 = 289,
-     FUNC1 = 290,
-     FUNC = 291,
-     UNIOP = 292,
-     LSTOP = 293,
-     RELOP = 294,
-     EQOP = 295,
-     MULOP = 296,
-     ADDOP = 297,
-     DOLSHARP = 298,
-     DO = 299,
-     HASHBRACK = 300,
-     NOAMP = 301,
-     LOCAL = 302,
-     MY = 303,
-     MYSUB = 304,
-     REQUIRE = 305,
-     COLONATTR = 306,
-     PREC_LOW = 307,
-     DOROP = 308,
-     OROP = 309,
-     ANDOP = 310,
-     NOTOP = 311,
-     ASSIGNOP = 312,
-     DORDOR = 313,
-     OROR = 314,
-     ANDAND = 315,
-     BITOROP = 316,
-     BITANDOP = 317,
-     SHIFTOP = 318,
-     MATCHOP = 319,
-     REFGEN = 320,
-     UMINUS = 321,
-     POWOP = 322,
-     POSTDEC = 323,
-     POSTINC = 324,
-     PREDEC = 325,
-     PREINC = 326,
-     ARROW = 327,
-     PEG = 328
+     GRAMPROG = 258,
+     GRAMEXPR = 259,
+     GRAMBLOCK = 260,
+     GRAMBARESTMT = 261,
+     GRAMFULLSTMT = 262,
+     GRAMSTMTSEQ = 263,
+     WORD = 264,
+     METHOD = 265,
+     FUNCMETH = 266,
+     THING = 267,
+     PMFUNC = 268,
+     PRIVATEREF = 269,
+     QWLIST = 270,
+     FUNC0OP = 271,
+     FUNC0SUB = 272,
+     UNIOPSUB = 273,
+     LSTOPSUB = 274,
+     PLUGEXPR = 275,
+     PLUGSTMT = 276,
+     LABEL = 277,
+     FORMAT = 278,
+     SUB = 279,
+     ANONSUB = 280,
+     PACKAGE = 281,
+     USE = 282,
+     WHILE = 283,
+     UNTIL = 284,
+     IF = 285,
+     UNLESS = 286,
+     ELSE = 287,
+     ELSIF = 288,
+     CONTINUE = 289,
+     FOR = 290,
+     GIVEN = 291,
+     WHEN = 292,
+     DEFAULT = 293,
+     LOOPEX = 294,
+     DOTDOT = 295,
+     YADAYADA = 296,
+     FUNC0 = 297,
+     FUNC1 = 298,
+     FUNC = 299,
+     UNIOP = 300,
+     LSTOP = 301,
+     RELOP = 302,
+     EQOP = 303,
+     MULOP = 304,
+     ADDOP = 305,
+     DOLSHARP = 306,
+     DO = 307,
+     HASHBRACK = 308,
+     NOAMP = 309,
+     LOCAL = 310,
+     MY = 311,
+     REQUIRE = 312,
+     COLONATTR = 313,
+     FORMLBRACK = 314,
+     FORMRBRACK = 315,
+     PREC_LOW = 316,
+     DOROP = 317,
+     OROP = 318,
+     ANDOP = 319,
+     NOTOP = 320,
+     ASSIGNOP = 321,
+     DORDOR = 322,
+     OROR = 323,
+     ANDAND = 324,
+     BITOROP = 325,
+     BITANDOP = 326,
+     SHIFTOP = 327,
+     MATCHOP = 328,
+     REFGEN = 329,
+     UMINUS = 330,
+     POWOP = 331,
+     POSTJOIN = 332,
+     POSTDEC = 333,
+     POSTINC = 334,
+     PREDEC = 335,
+     PREINC = 336,
+     ARROW = 337
    };
 #endif
 
 /* Tokens.  */
-#define WORD 258
-#define METHOD 259
-#define FUNCMETH 260
-#define THING 261
-#define PMFUNC 262
-#define PRIVATEREF 263
-#define FUNC0SUB 264
-#define UNIOPSUB 265
-#define LSTOPSUB 266
-#define PLUGEXPR 267
-#define PLUGSTMT 268
-#define LABEL 269
-#define FORMAT 270
-#define SUB 271
-#define ANONSUB 272
-#define PACKAGE 273
-#define USE 274
-#define WHILE 275
-#define UNTIL 276
-#define IF 277
-#define UNLESS 278
-#define ELSE 279
-#define ELSIF 280
-#define CONTINUE 281
-#define FOR 282
-#define GIVEN 283
-#define WHEN 284
-#define DEFAULT 285
-#define LOOPEX 286
-#define DOTDOT 287
-#define YADAYADA 288
-#define FUNC0 289
-#define FUNC1 290
-#define FUNC 291
-#define UNIOP 292
-#define LSTOP 293
-#define RELOP 294
-#define EQOP 295
-#define MULOP 296
-#define ADDOP 297
-#define DOLSHARP 298
-#define DO 299
-#define HASHBRACK 300
-#define NOAMP 301
-#define LOCAL 302
-#define MY 303
-#define MYSUB 304
-#define REQUIRE 305
-#define COLONATTR 306
-#define PREC_LOW 307
-#define DOROP 308
-#define OROP 309
-#define ANDOP 310
-#define NOTOP 311
-#define ASSIGNOP 312
-#define DORDOR 313
-#define OROR 314
-#define ANDAND 315
-#define BITOROP 316
-#define BITANDOP 317
-#define SHIFTOP 318
-#define MATCHOP 319
-#define REFGEN 320
-#define UMINUS 321
-#define POWOP 322
-#define POSTDEC 323
-#define POSTINC 324
-#define PREDEC 325
-#define PREINC 326
-#define ARROW 327
-#define PEG 328
-
+#define GRAMPROG 258
+#define GRAMEXPR 259
+#define GRAMBLOCK 260
+#define GRAMBARESTMT 261
+#define GRAMFULLSTMT 262
+#define GRAMSTMTSEQ 263
+#define WORD 264
+#define METHOD 265
+#define FUNCMETH 266
+#define THING 267
+#define PMFUNC 268
+#define PRIVATEREF 269
+#define QWLIST 270
+#define FUNC0OP 271
+#define FUNC0SUB 272
+#define UNIOPSUB 273
+#define LSTOPSUB 274
+#define PLUGEXPR 275
+#define PLUGSTMT 276
+#define LABEL 277
+#define FORMAT 278
+#define SUB 279
+#define ANONSUB 280
+#define PACKAGE 281
+#define USE 282
+#define WHILE 283
+#define UNTIL 284
+#define IF 285
+#define UNLESS 286
+#define ELSE 287
+#define ELSIF 288
+#define CONTINUE 289
+#define FOR 290
+#define GIVEN 291
+#define WHEN 292
+#define DEFAULT 293
+#define LOOPEX 294
+#define DOTDOT 295
+#define YADAYADA 296
+#define FUNC0 297
+#define FUNC1 298
+#define FUNC 299
+#define UNIOP 300
+#define LSTOP 301
+#define RELOP 302
+#define EQOP 303
+#define MULOP 304
+#define ADDOP 305
+#define DOLSHARP 306
+#define DO 307
+#define HASHBRACK 308
+#define NOAMP 309
+#define LOCAL 310
+#define MY 311
+#define REQUIRE 312
+#define COLONATTR 313
+#define FORMLBRACK 314
+#define FORMRBRACK 315
+#define PREC_LOW 316
+#define DOROP 317
+#define OROP 318
+#define ANDOP 319
+#define NOTOP 320
+#define ASSIGNOP 321
+#define DORDOR 322
+#define OROR 323
+#define ANDAND 324
+#define BITOROP 325
+#define BITANDOP 326
+#define SHIFTOP 327
+#define MATCHOP 328
+#define REFGEN 329
+#define UMINUS 330
+#define POWOP 331
+#define POSTJOIN 332
+#define POSTDEC 333
+#define POSTINC 334
+#define PREDEC 335
+#define PREINC 336
+#define ARROW 337
 
 
+#ifdef PERL_IN_TOKE_C
+static bool
+S_is_opval_token(int type) {
+    switch (type) {
+    case FUNC0OP:
+    case FUNC0SUB:
+    case FUNCMETH:
+    case LSTOPSUB:
+    case METHOD:
+    case PLUGEXPR:
+    case PLUGSTMT:
+    case PMFUNC:
+    case PRIVATEREF:
+    case QWLIST:
+    case THING:
+    case UNIOPSUB:
+    case WORD:
+       return 1;
+    }
+    return 0;
+}
+#endif /* PERL_IN_TOKE_C */
 #endif /* PERL_CORE */
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 typedef union YYSTYPE
 {
-
-/* Line 1676 of yacc.c  */
+/* Line 2058 of yacc.c  */
 
     I32        ival; /* __DEFAULT__ (marker for regen_perly.pl;
                                must always be 1st union member) */
     char *pval;
     OP *opval;
     GV *gvval;
-#ifdef PERL_IN_MADLY_C
-    TOKEN* p_tkval;
-    TOKEN* i_tkval;
-#else
-    char *p_tkval;
-    I32        i_tkval;
-#endif
-#ifdef PERL_MAD
-    TOKEN* tkval;
-#endif
 
 
-
-/* Line 1676 of yacc.c  */
+/* Line 2058 of yacc.c  */
 } YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
@@ -222,5 +262,22 @@ typedef union YYSTYPE
 #endif
 
 
+#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 */
 
 
+/* Generated from:
+ * 703ebd267cf8ca45f9dee9bc0f4b21511117a0c1dca1c8bc9438ce91950217ae perly.y
+ * a4923588f219644801577c514014847e1e5240f49413fa3b89d3306fa4874d07 regen_perly.pl
+ * ex: set ro: */