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