This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
avoid mis-mangled name references on threaded C++ builds
[perl5.git] / perly.h
... / ...
CommitLineData
1/* -*- buffer-read-only: t -*-
2 !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
3 This file is built by regen_perly.pl from perly.y.
4 Any changes made here will be lost!
5 */
6
7#define PERL_BISON_VERSION 20007
8
9#ifdef PERL_CORE
10/* A Bison parser, made by GNU Bison 2.7. */
11
12/* Bison interface for Yacc-like parsers in C
13
14 Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
15
16 This program is free software: you can redistribute it and/or modify
17 it under the terms of the GNU General Public License as published by
18 the Free Software Foundation, either version 3 of the License, or
19 (at your option) any later version.
20
21 This program is distributed in the hope that it will be useful,
22 but WITHOUT ANY WARRANTY; without even the implied warranty of
23 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 GNU General Public License for more details.
25
26 You should have received a copy of the GNU General Public License
27 along with this program. If not, see <http://www.gnu.org/licenses/>. */
28
29/* As a special exception, you may create a larger work that contains
30 part or all of the Bison parser skeleton and distribute that work
31 under terms of your choice, so long as that work isn't itself a
32 parser generator using the skeleton or a modified version thereof
33 as a parser skeleton. Alternatively, if you modify or redistribute
34 the parser skeleton itself, you may (at your option) remove this
35 special exception, which will cause the skeleton and the resulting
36 Bison output files to be licensed under the GNU General Public
37 License without this special exception.
38
39 This special exception was added by the Free Software Foundation in
40 version 2.2 of Bison. */
41
42/* Enabling traces. */
43#ifndef YYDEBUG
44# define YYDEBUG 0
45#endif
46#if YYDEBUG
47extern int yydebug;
48#endif
49
50/* Tokens. */
51#ifndef YYTOKENTYPE
52# define YYTOKENTYPE
53 /* Put the tokens into the symbol table, so that GDB and other debuggers
54 know about them. */
55 enum yytokentype {
56 GRAMPROG = 258,
57 GRAMEXPR = 259,
58 GRAMBLOCK = 260,
59 GRAMBARESTMT = 261,
60 GRAMFULLSTMT = 262,
61 GRAMSTMTSEQ = 263,
62 WORD = 264,
63 METHOD = 265,
64 FUNCMETH = 266,
65 THING = 267,
66 PMFUNC = 268,
67 PRIVATEREF = 269,
68 QWLIST = 270,
69 FUNC0OP = 271,
70 FUNC0SUB = 272,
71 UNIOPSUB = 273,
72 LSTOPSUB = 274,
73 PLUGEXPR = 275,
74 PLUGSTMT = 276,
75 LABEL = 277,
76 FORMAT = 278,
77 SUB = 279,
78 ANONSUB = 280,
79 PACKAGE = 281,
80 USE = 282,
81 WHILE = 283,
82 UNTIL = 284,
83 IF = 285,
84 UNLESS = 286,
85 ELSE = 287,
86 ELSIF = 288,
87 CONTINUE = 289,
88 FOR = 290,
89 GIVEN = 291,
90 WHEN = 292,
91 DEFAULT = 293,
92 LOOPEX = 294,
93 DOTDOT = 295,
94 YADAYADA = 296,
95 FUNC0 = 297,
96 FUNC1 = 298,
97 FUNC = 299,
98 UNIOP = 300,
99 LSTOP = 301,
100 RELOP = 302,
101 EQOP = 303,
102 MULOP = 304,
103 ADDOP = 305,
104 DOLSHARP = 306,
105 DO = 307,
106 HASHBRACK = 308,
107 NOAMP = 309,
108 LOCAL = 310,
109 MY = 311,
110 REQUIRE = 312,
111 COLONATTR = 313,
112 FORMLBRACK = 314,
113 FORMRBRACK = 315,
114 PREC_LOW = 316,
115 DOROP = 317,
116 OROP = 318,
117 ANDOP = 319,
118 NOTOP = 320,
119 ASSIGNOP = 321,
120 DORDOR = 322,
121 OROR = 323,
122 ANDAND = 324,
123 BITOROP = 325,
124 BITANDOP = 326,
125 SHIFTOP = 327,
126 MATCHOP = 328,
127 REFGEN = 329,
128 UMINUS = 330,
129 POWOP = 331,
130 POSTJOIN = 332,
131 POSTDEC = 333,
132 POSTINC = 334,
133 PREDEC = 335,
134 PREINC = 336,
135 ARROW = 337
136 };
137#endif
138
139/* Tokens. */
140#define GRAMPROG 258
141#define GRAMEXPR 259
142#define GRAMBLOCK 260
143#define GRAMBARESTMT 261
144#define GRAMFULLSTMT 262
145#define GRAMSTMTSEQ 263
146#define WORD 264
147#define METHOD 265
148#define FUNCMETH 266
149#define THING 267
150#define PMFUNC 268
151#define PRIVATEREF 269
152#define QWLIST 270
153#define FUNC0OP 271
154#define FUNC0SUB 272
155#define UNIOPSUB 273
156#define LSTOPSUB 274
157#define PLUGEXPR 275
158#define PLUGSTMT 276
159#define LABEL 277
160#define FORMAT 278
161#define SUB 279
162#define ANONSUB 280
163#define PACKAGE 281
164#define USE 282
165#define WHILE 283
166#define UNTIL 284
167#define IF 285
168#define UNLESS 286
169#define ELSE 287
170#define ELSIF 288
171#define CONTINUE 289
172#define FOR 290
173#define GIVEN 291
174#define WHEN 292
175#define DEFAULT 293
176#define LOOPEX 294
177#define DOTDOT 295
178#define YADAYADA 296
179#define FUNC0 297
180#define FUNC1 298
181#define FUNC 299
182#define UNIOP 300
183#define LSTOP 301
184#define RELOP 302
185#define EQOP 303
186#define MULOP 304
187#define ADDOP 305
188#define DOLSHARP 306
189#define DO 307
190#define HASHBRACK 308
191#define NOAMP 309
192#define LOCAL 310
193#define MY 311
194#define REQUIRE 312
195#define COLONATTR 313
196#define FORMLBRACK 314
197#define FORMRBRACK 315
198#define PREC_LOW 316
199#define DOROP 317
200#define OROP 318
201#define ANDOP 319
202#define NOTOP 320
203#define ASSIGNOP 321
204#define DORDOR 322
205#define OROR 323
206#define ANDAND 324
207#define BITOROP 325
208#define BITANDOP 326
209#define SHIFTOP 327
210#define MATCHOP 328
211#define REFGEN 329
212#define UMINUS 330
213#define POWOP 331
214#define POSTJOIN 332
215#define POSTDEC 333
216#define POSTINC 334
217#define PREDEC 335
218#define PREINC 336
219#define ARROW 337
220
221
222#ifdef PERL_IN_TOKE_C
223static bool
224S_is_opval_token(int type) {
225 switch (type) {
226 case FUNC0OP:
227 case FUNC0SUB:
228 case FUNCMETH:
229 case LSTOPSUB:
230 case METHOD:
231 case PLUGEXPR:
232 case PLUGSTMT:
233 case PMFUNC:
234 case PRIVATEREF:
235 case QWLIST:
236 case THING:
237 case UNIOPSUB:
238 case WORD:
239 return 1;
240 }
241 return 0;
242}
243#endif /* PERL_IN_TOKE_C */
244#endif /* PERL_CORE */
245#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
246typedef union YYSTYPE
247{
248/* Line 2058 of yacc.c */
249
250 I32 ival; /* __DEFAULT__ (marker for regen_perly.pl;
251 must always be 1st union member) */
252 char *pval;
253 OP *opval;
254 GV *gvval;
255
256
257/* Line 2058 of yacc.c */
258} YYSTYPE;
259# define YYSTYPE_IS_TRIVIAL 1
260# define yystype YYSTYPE /* obsolescent; will be withdrawn */
261# define YYSTYPE_IS_DECLARED 1
262#endif
263
264
265#ifdef YYPARSE_PARAM
266#if defined __STDC__ || defined __cplusplus
267int yyparse (void *YYPARSE_PARAM);
268#else
269int yyparse ();
270#endif
271#else /* ! YYPARSE_PARAM */
272#if defined __STDC__ || defined __cplusplus
273int yyparse (void);
274#else
275int yyparse ();
276#endif
277#endif /* ! YYPARSE_PARAM */
278
279
280/* Generated from:
281 * 703ebd267cf8ca45f9dee9bc0f4b21511117a0c1dca1c8bc9438ce91950217ae perly.y
282 * a4923588f219644801577c514014847e1e5240f49413fa3b89d3306fa4874d07 regen_perly.pl
283 * ex: set ro: */