1NoEcho('
2/******************************************************************************
3 *
4 * Module Name: asltokens.y - Bison/Yacc token types
5 *
6 *****************************************************************************/
7
8/*
9 * Copyright (C) 2000 - 2016, Intel Corp.
10 * All rights reserved.
11 *
12 * Redistribution and use in source and binary forms, with or without
13 * modification, are permitted provided that the following conditions
14 * are met:
15 * 1. Redistributions of source code must retain the above copyright
16 *    notice, this list of conditions, and the following disclaimer,
17 *    without modification.
18 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
19 *    substantially similar to the "NO WARRANTY" disclaimer below
20 *    ("Disclaimer") and any redistribution must be conditioned upon
21 *    including a substantially similar Disclaimer requirement for further
22 *    binary redistribution.
23 * 3. Neither the names of the above-listed copyright holders nor the names
24 *    of any contributors may be used to endorse or promote products derived
25 *    from this software without specific prior written permission.
26 *
27 * Alternatively, this software may be distributed under the terms of the
28 * GNU General Public License ("GPL") version 2 as published by the Free
29 * Software Foundation.
30 *
31 * NO WARRANTY
32 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
35 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
36 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
37 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
38 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
39 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
40 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
41 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
42 * POSSIBILITY OF SUCH DAMAGES.
43 */
44
45')
46
47/******************************************************************************
48 *
49 * Token types: These are returned by the lexer
50 *
51 * NOTE: This list MUST match the AslKeywordMapping table found
52 *       in aslmap.c EXACTLY!  Double check any changes!
53 *
54 *****************************************************************************/
55
56%token <i> PARSEOP_ACCESSAS
57%token <i> PARSEOP_ACCESSATTRIB_BLOCK
58%token <i> PARSEOP_ACCESSATTRIB_BLOCK_CALL
59%token <i> PARSEOP_ACCESSATTRIB_BYTE
60%token <i> PARSEOP_ACCESSATTRIB_MULTIBYTE
61%token <i> PARSEOP_ACCESSATTRIB_QUICK
62%token <i> PARSEOP_ACCESSATTRIB_RAW_BYTES
63%token <i> PARSEOP_ACCESSATTRIB_RAW_PROCESS
64%token <i> PARSEOP_ACCESSATTRIB_SND_RCV
65%token <i> PARSEOP_ACCESSATTRIB_WORD
66%token <i> PARSEOP_ACCESSATTRIB_WORD_CALL
67%token <i> PARSEOP_ACCESSTYPE_ANY
68%token <i> PARSEOP_ACCESSTYPE_BUF
69%token <i> PARSEOP_ACCESSTYPE_BYTE
70%token <i> PARSEOP_ACCESSTYPE_DWORD
71%token <i> PARSEOP_ACCESSTYPE_QWORD
72%token <i> PARSEOP_ACCESSTYPE_WORD
73%token <i> PARSEOP_ACQUIRE
74%token <i> PARSEOP_ADD
75%token <i> PARSEOP_ADDRESSINGMODE_7BIT
76%token <i> PARSEOP_ADDRESSINGMODE_10BIT
77%token <i> PARSEOP_ADDRESSTYPE_ACPI
78%token <i> PARSEOP_ADDRESSTYPE_MEMORY
79%token <i> PARSEOP_ADDRESSTYPE_NVS
80%token <i> PARSEOP_ADDRESSTYPE_RESERVED
81%token <i> PARSEOP_ALIAS
82%token <i> PARSEOP_AND
83%token <i> PARSEOP_ARG0
84%token <i> PARSEOP_ARG1
85%token <i> PARSEOP_ARG2
86%token <i> PARSEOP_ARG3
87%token <i> PARSEOP_ARG4
88%token <i> PARSEOP_ARG5
89%token <i> PARSEOP_ARG6
90%token <i> PARSEOP_BANKFIELD
91%token <i> PARSEOP_BITSPERBYTE_EIGHT
92%token <i> PARSEOP_BITSPERBYTE_FIVE
93%token <i> PARSEOP_BITSPERBYTE_NINE
94%token <i> PARSEOP_BITSPERBYTE_SEVEN
95%token <i> PARSEOP_BITSPERBYTE_SIX
96%token <i> PARSEOP_BREAK
97%token <i> PARSEOP_BREAKPOINT
98%token <i> PARSEOP_BUFFER
99%token <i> PARSEOP_BUSMASTERTYPE_MASTER
100%token <i> PARSEOP_BUSMASTERTYPE_NOTMASTER
101%token <i> PARSEOP_BYTECONST
102%token <i> PARSEOP_CASE
103%token <i> PARSEOP_CLOCKPHASE_FIRST
104%token <i> PARSEOP_CLOCKPHASE_SECOND
105%token <i> PARSEOP_CLOCKPOLARITY_HIGH
106%token <i> PARSEOP_CLOCKPOLARITY_LOW
107%token <i> PARSEOP_CONCATENATE
108%token <i> PARSEOP_CONCATENATERESTEMPLATE
109%token <i> PARSEOP_CONDREFOF
110%token <i> PARSEOP_CONNECTION
111%token <i> PARSEOP_CONTINUE
112%token <i> PARSEOP_COPYOBJECT
113%token <i> PARSEOP_CREATEBITFIELD
114%token <i> PARSEOP_CREATEBYTEFIELD
115%token <i> PARSEOP_CREATEDWORDFIELD
116%token <i> PARSEOP_CREATEFIELD
117%token <i> PARSEOP_CREATEQWORDFIELD
118%token <i> PARSEOP_CREATEWORDFIELD
119%token <i> PARSEOP_DATABUFFER
120%token <i> PARSEOP_DATATABLEREGION
121%token <i> PARSEOP_DEBUG
122%token <i> PARSEOP_DECODETYPE_POS
123%token <i> PARSEOP_DECODETYPE_SUB
124%token <i> PARSEOP_DECREMENT
125%token <i> PARSEOP_DEFAULT
126%token <i> PARSEOP_DEFAULT_ARG
127%token <i> PARSEOP_DEFINITION_BLOCK
128%token <i> PARSEOP_DEREFOF
129%token <i> PARSEOP_DEVICE
130%token <i> PARSEOP_DEVICEPOLARITY_HIGH
131%token <i> PARSEOP_DEVICEPOLARITY_LOW
132%token <i> PARSEOP_DIVIDE
133%token <i> PARSEOP_DMA
134%token <i> PARSEOP_DMATYPE_A
135%token <i> PARSEOP_DMATYPE_COMPATIBILITY
136%token <i> PARSEOP_DMATYPE_B
137%token <i> PARSEOP_DMATYPE_F
138%token <i> PARSEOP_DWORDCONST
139%token <i> PARSEOP_DWORDIO
140%token <i> PARSEOP_DWORDMEMORY
141%token <i> PARSEOP_DWORDSPACE
142%token <i> PARSEOP_EISAID
143%token <i> PARSEOP_ELSE
144%token <i> PARSEOP_ELSEIF
145%token <i> PARSEOP_ENDDEPENDENTFN
146%token <i> PARSEOP_ENDIAN_BIG
147%token <i> PARSEOP_ENDIAN_LITTLE
148%token <i> PARSEOP_ENDTAG
149%token <i> PARSEOP_ERRORNODE
150%token <i> PARSEOP_EVENT
151%token <i> PARSEOP_EXTENDEDIO
152%token <i> PARSEOP_EXTENDEDMEMORY
153%token <i> PARSEOP_EXTENDEDSPACE
154%token <i> PARSEOP_EXTERNAL
155%token <i> PARSEOP_FATAL
156%token <i> PARSEOP_FIELD
157%token <i> PARSEOP_FINDSETLEFTBIT
158%token <i> PARSEOP_FINDSETRIGHTBIT
159%token <i> PARSEOP_FIXEDDMA
160%token <i> PARSEOP_FIXEDIO
161%token <i> PARSEOP_FLOWCONTROL_HW
162%token <i> PARSEOP_FLOWCONTROL_NONE
163%token <i> PARSEOP_FLOWCONTROL_SW
164%token <i> PARSEOP_FROMBCD
165%token <i> PARSEOP_FUNCTION
166%token <i> PARSEOP_GPIO_INT
167%token <i> PARSEOP_GPIO_IO
168%token <i> PARSEOP_I2C_SERIALBUS
169%token <i> PARSEOP_I2C_SERIALBUS_V2
170%token <i> PARSEOP_IF
171%token <i> PARSEOP_INCLUDE
172%token <i> PARSEOP_INCLUDE_END
173%token <i> PARSEOP_INCREMENT
174%token <i> PARSEOP_INDEX
175%token <i> PARSEOP_INDEXFIELD
176%token <i> PARSEOP_INTEGER
177%token <i> PARSEOP_INTERRUPT
178%token <i> PARSEOP_INTLEVEL_ACTIVEBOTH
179%token <i> PARSEOP_INTLEVEL_ACTIVEHIGH
180%token <i> PARSEOP_INTLEVEL_ACTIVELOW
181%token <i> PARSEOP_INTTYPE_EDGE
182%token <i> PARSEOP_INTTYPE_LEVEL
183%token <i> PARSEOP_IO
184%token <i> PARSEOP_IODECODETYPE_10
185%token <i> PARSEOP_IODECODETYPE_16
186%token <i> PARSEOP_IORESTRICT_IN
187%token <i> PARSEOP_IORESTRICT_NONE
188%token <i> PARSEOP_IORESTRICT_OUT
189%token <i> PARSEOP_IORESTRICT_PRESERVE
190%token <i> PARSEOP_IRQ
191%token <i> PARSEOP_IRQNOFLAGS
192%token <i> PARSEOP_LAND
193%token <i> PARSEOP_LEQUAL
194%token <i> PARSEOP_LGREATER
195%token <i> PARSEOP_LGREATEREQUAL
196%token <i> PARSEOP_LLESS
197%token <i> PARSEOP_LLESSEQUAL
198%token <i> PARSEOP_LNOT
199%token <i> PARSEOP_LNOTEQUAL
200%token <i> PARSEOP_LOAD
201%token <i> PARSEOP_LOADTABLE
202%token <i> PARSEOP_LOCAL0
203%token <i> PARSEOP_LOCAL1
204%token <i> PARSEOP_LOCAL2
205%token <i> PARSEOP_LOCAL3
206%token <i> PARSEOP_LOCAL4
207%token <i> PARSEOP_LOCAL5
208%token <i> PARSEOP_LOCAL6
209%token <i> PARSEOP_LOCAL7
210%token <i> PARSEOP_LOCKRULE_LOCK
211%token <i> PARSEOP_LOCKRULE_NOLOCK
212%token <i> PARSEOP_LOR
213%token <i> PARSEOP_MATCH
214%token <i> PARSEOP_MATCHTYPE_MEQ
215%token <i> PARSEOP_MATCHTYPE_MGE
216%token <i> PARSEOP_MATCHTYPE_MGT
217%token <i> PARSEOP_MATCHTYPE_MLE
218%token <i> PARSEOP_MATCHTYPE_MLT
219%token <i> PARSEOP_MATCHTYPE_MTR
220%token <i> PARSEOP_MAXTYPE_FIXED
221%token <i> PARSEOP_MAXTYPE_NOTFIXED
222%token <i> PARSEOP_MEMORY24
223%token <i> PARSEOP_MEMORY32
224%token <i> PARSEOP_MEMORY32FIXED
225%token <i> PARSEOP_MEMTYPE_CACHEABLE
226%token <i> PARSEOP_MEMTYPE_NONCACHEABLE
227%token <i> PARSEOP_MEMTYPE_PREFETCHABLE
228%token <i> PARSEOP_MEMTYPE_WRITECOMBINING
229%token <i> PARSEOP_METHOD
230%token <i> PARSEOP_METHODCALL
231%token <i> PARSEOP_MID
232%token <i> PARSEOP_MINTYPE_FIXED
233%token <i> PARSEOP_MINTYPE_NOTFIXED
234%token <i> PARSEOP_MOD
235%token <i> PARSEOP_MULTIPLY
236%token <i> PARSEOP_MUTEX
237%token <i> PARSEOP_NAME
238%token <s> PARSEOP_NAMESEG
239%token <s> PARSEOP_NAMESTRING
240%token <i> PARSEOP_NAND
241%token <i> PARSEOP_NOOP
242%token <i> PARSEOP_NOR
243%token <i> PARSEOP_NOT
244%token <i> PARSEOP_NOTIFY
245%token <i> PARSEOP_OBJECTTYPE
246%token <i> PARSEOP_OBJECTTYPE_BFF
247%token <i> PARSEOP_OBJECTTYPE_BUF
248%token <i> PARSEOP_OBJECTTYPE_DDB
249%token <i> PARSEOP_OBJECTTYPE_DEV
250%token <i> PARSEOP_OBJECTTYPE_EVT
251%token <i> PARSEOP_OBJECTTYPE_FLD
252%token <i> PARSEOP_OBJECTTYPE_INT
253%token <i> PARSEOP_OBJECTTYPE_MTH
254%token <i> PARSEOP_OBJECTTYPE_MTX
255%token <i> PARSEOP_OBJECTTYPE_OPR
256%token <i> PARSEOP_OBJECTTYPE_PKG
257%token <i> PARSEOP_OBJECTTYPE_POW
258%token <i> PARSEOP_OBJECTTYPE_PRO
259%token <i> PARSEOP_OBJECTTYPE_STR
260%token <i> PARSEOP_OBJECTTYPE_THZ
261%token <i> PARSEOP_OBJECTTYPE_UNK
262%token <i> PARSEOP_OFFSET
263%token <i> PARSEOP_ONE
264%token <i> PARSEOP_ONES
265%token <i> PARSEOP_OPERATIONREGION
266%token <i> PARSEOP_OR
267%token <i> PARSEOP_PACKAGE
268%token <i> PARSEOP_PACKAGE_LENGTH
269%token <i> PARSEOP_PARITYTYPE_EVEN
270%token <i> PARSEOP_PARITYTYPE_MARK
271%token <i> PARSEOP_PARITYTYPE_NONE
272%token <i> PARSEOP_PARITYTYPE_ODD
273%token <i> PARSEOP_PARITYTYPE_SPACE
274%token <i> PARSEOP_PIN_NOPULL
275%token <i> PARSEOP_PIN_PULLDEFAULT
276%token <i> PARSEOP_PIN_PULLDOWN
277%token <i> PARSEOP_PIN_PULLUP
278%token <i> PARSEOP_POWERRESOURCE
279%token <i> PARSEOP_PROCESSOR
280%token <i> PARSEOP_QWORDCONST
281%token <i> PARSEOP_QWORDIO
282%token <i> PARSEOP_QWORDMEMORY
283%token <i> PARSEOP_QWORDSPACE
284%token <i> PARSEOP_RANGETYPE_ENTIRE
285%token <i> PARSEOP_RANGETYPE_ISAONLY
286%token <i> PARSEOP_RANGETYPE_NONISAONLY
287%token <i> PARSEOP_RAW_DATA
288%token <i> PARSEOP_READWRITETYPE_BOTH
289%token <i> PARSEOP_READWRITETYPE_READONLY
290%token <i> PARSEOP_REFOF
291%token <i> PARSEOP_REGIONSPACE_CMOS
292%token <i> PARSEOP_REGIONSPACE_EC
293%token <i> PARSEOP_REGIONSPACE_FFIXEDHW
294%token <i> PARSEOP_REGIONSPACE_GPIO
295%token <i> PARSEOP_REGIONSPACE_GSBUS
296%token <i> PARSEOP_REGIONSPACE_IO
297%token <i> PARSEOP_REGIONSPACE_IPMI
298%token <i> PARSEOP_REGIONSPACE_MEM
299%token <i> PARSEOP_REGIONSPACE_PCC
300%token <i> PARSEOP_REGIONSPACE_PCI
301%token <i> PARSEOP_REGIONSPACE_PCIBAR
302%token <i> PARSEOP_REGIONSPACE_SMBUS
303%token <i> PARSEOP_REGISTER
304%token <i> PARSEOP_RELEASE
305%token <i> PARSEOP_RESERVED_BYTES
306%token <i> PARSEOP_RESET
307%token <i> PARSEOP_RESOURCETEMPLATE
308%token <i> PARSEOP_RESOURCETYPE_CONSUMER
309%token <i> PARSEOP_RESOURCETYPE_PRODUCER
310%token <i> PARSEOP_RETURN
311%token <i> PARSEOP_REVISION
312%token <i> PARSEOP_SCOPE
313%token <i> PARSEOP_SERIALIZERULE_NOTSERIAL
314%token <i> PARSEOP_SERIALIZERULE_SERIAL
315%token <i> PARSEOP_SHARETYPE_EXCLUSIVE
316%token <i> PARSEOP_SHARETYPE_EXCLUSIVEWAKE
317%token <i> PARSEOP_SHARETYPE_SHARED
318%token <i> PARSEOP_SHARETYPE_SHAREDWAKE
319%token <i> PARSEOP_SHIFTLEFT
320%token <i> PARSEOP_SHIFTRIGHT
321%token <i> PARSEOP_SIGNAL
322%token <i> PARSEOP_SIZEOF
323%token <i> PARSEOP_SLAVEMODE_CONTROLLERINIT
324%token <i> PARSEOP_SLAVEMODE_DEVICEINIT
325%token <i> PARSEOP_SLEEP
326%token <i> PARSEOP_SPI_SERIALBUS
327%token <i> PARSEOP_SPI_SERIALBUS_V2
328%token <i> PARSEOP_STALL
329%token <i> PARSEOP_STARTDEPENDENTFN
330%token <i> PARSEOP_STARTDEPENDENTFN_NOPRI
331%token <i> PARSEOP_STOPBITS_ONE
332%token <i> PARSEOP_STOPBITS_ONEPLUSHALF
333%token <i> PARSEOP_STOPBITS_TWO
334%token <i> PARSEOP_STOPBITS_ZERO
335%token <i> PARSEOP_STORE
336%token <s> PARSEOP_STRING_LITERAL
337%token <i> PARSEOP_SUBTRACT
338%token <i> PARSEOP_SWITCH
339%token <i> PARSEOP_THERMALZONE
340%token <i> PARSEOP_TIMER
341%token <i> PARSEOP_TOBCD
342%token <i> PARSEOP_TOBUFFER
343%token <i> PARSEOP_TODECIMALSTRING
344%token <i> PARSEOP_TOHEXSTRING
345%token <i> PARSEOP_TOINTEGER
346%token <i> PARSEOP_TOSTRING
347%token <i> PARSEOP_TOUUID
348%token <i> PARSEOP_TRANSLATIONTYPE_DENSE
349%token <i> PARSEOP_TRANSLATIONTYPE_SPARSE
350%token <i> PARSEOP_TYPE_STATIC
351%token <i> PARSEOP_TYPE_TRANSLATION
352%token <i> PARSEOP_UART_SERIALBUS
353%token <i> PARSEOP_UART_SERIALBUS_V2
354%token <i> PARSEOP_UNICODE
355%token <i> PARSEOP_UNLOAD
356%token <i> PARSEOP_UPDATERULE_ONES
357%token <i> PARSEOP_UPDATERULE_PRESERVE
358%token <i> PARSEOP_UPDATERULE_ZEROS
359%token <i> PARSEOP_VAR_PACKAGE
360%token <i> PARSEOP_VENDORLONG
361%token <i> PARSEOP_VENDORSHORT
362%token <i> PARSEOP_WAIT
363%token <i> PARSEOP_WHILE
364%token <i> PARSEOP_WIREMODE_FOUR
365%token <i> PARSEOP_WIREMODE_THREE
366%token <i> PARSEOP_WORDBUSNUMBER
367%token <i> PARSEOP_WORDCONST
368%token <i> PARSEOP_WORDIO
369%token <i> PARSEOP_WORDSPACE
370%token <i> PARSEOP_XFERSIZE_8
371%token <i> PARSEOP_XFERSIZE_16
372%token <i> PARSEOP_XFERSIZE_32
373%token <i> PARSEOP_XFERSIZE_64
374%token <i> PARSEOP_XFERSIZE_128
375%token <i> PARSEOP_XFERSIZE_256
376%token <i> PARSEOP_XFERTYPE_8
377%token <i> PARSEOP_XFERTYPE_8_16
378%token <i> PARSEOP_XFERTYPE_16
379%token <i> PARSEOP_XOR
380%token <i> PARSEOP_ZERO
381
382/* ToPld macro */
383
384%token <i> PARSEOP_TOPLD
385%token <i> PARSEOP_PLD_REVISION
386%token <i> PARSEOP_PLD_IGNORECOLOR
387%token <i> PARSEOP_PLD_RED
388%token <i> PARSEOP_PLD_GREEN
389%token <i> PARSEOP_PLD_BLUE
390%token <i> PARSEOP_PLD_WIDTH
391%token <i> PARSEOP_PLD_HEIGHT
392%token <i> PARSEOP_PLD_USERVISIBLE
393%token <i> PARSEOP_PLD_DOCK
394%token <i> PARSEOP_PLD_LID
395%token <i> PARSEOP_PLD_PANEL
396%token <i> PARSEOP_PLD_VERTICALPOSITION
397%token <i> PARSEOP_PLD_HORIZONTALPOSITION
398%token <i> PARSEOP_PLD_SHAPE
399%token <i> PARSEOP_PLD_GROUPORIENTATION
400%token <i> PARSEOP_PLD_GROUPTOKEN
401%token <i> PARSEOP_PLD_GROUPPOSITION
402%token <i> PARSEOP_PLD_BAY
403%token <i> PARSEOP_PLD_EJECTABLE
404%token <i> PARSEOP_PLD_EJECTREQUIRED
405%token <i> PARSEOP_PLD_CABINETNUMBER
406%token <i> PARSEOP_PLD_CARDCAGENUMBER
407%token <i> PARSEOP_PLD_REFERENCE
408%token <i> PARSEOP_PLD_ROTATION
409%token <i> PARSEOP_PLD_ORDER
410%token <i> PARSEOP_PLD_RESERVED
411%token <i> PARSEOP_PLD_VERTICALOFFSET
412%token <i> PARSEOP_PLD_HORIZONTALOFFSET
413
414/*
415 * C-style expression parser. These must appear after all of the
416 * standard ASL operators and keywords.
417 *
418 * Note: The order of these tokens implements the precedence rules
419 * (low precedence to high). See aslrules.y for an exhaustive list.
420 */
421%right <i> PARSEOP_EXP_EQUALS
422           PARSEOP_EXP_ADD_EQ
423           PARSEOP_EXP_SUB_EQ
424           PARSEOP_EXP_MUL_EQ
425           PARSEOP_EXP_DIV_EQ
426           PARSEOP_EXP_MOD_EQ
427           PARSEOP_EXP_SHL_EQ
428           PARSEOP_EXP_SHR_EQ
429           PARSEOP_EXP_AND_EQ
430           PARSEOP_EXP_XOR_EQ
431           PARSEOP_EXP_OR_EQ
432
433%left <i>  PARSEOP_EXP_LOGICAL_OR
434%left <i>  PARSEOP_EXP_LOGICAL_AND
435%left <i>  PARSEOP_EXP_OR
436%left <i>  PARSEOP_EXP_XOR
437%left <i>  PARSEOP_EXP_AND
438%left <i>  PARSEOP_EXP_EQUAL
439           PARSEOP_EXP_NOT_EQUAL
440%left <i>  PARSEOP_EXP_GREATER
441           PARSEOP_EXP_LESS
442           PARSEOP_EXP_GREATER_EQUAL
443           PARSEOP_EXP_LESS_EQUAL
444%left <i>  PARSEOP_EXP_SHIFT_RIGHT
445           PARSEOP_EXP_SHIFT_LEFT
446%left <i>  PARSEOP_EXP_ADD
447           PARSEOP_EXP_SUBTRACT
448%left <i>  PARSEOP_EXP_MULTIPLY
449           PARSEOP_EXP_DIVIDE
450           PARSEOP_EXP_MODULO
451
452%right <i> PARSEOP_EXP_NOT
453           PARSEOP_EXP_LOGICAL_NOT
454
455%left <i>  PARSEOP_EXP_INCREMENT
456           PARSEOP_EXP_DECREMENT
457
458/* Brackets for Index() support */
459
460%left <i>  PARSEOP_EXP_INDEX_LEFT
461%right <i> PARSEOP_EXP_INDEX_RIGHT
462
463/* Macros */
464
465%token <i> PARSEOP_PRINTF
466%token <i> PARSEOP_FPRINTF
467%token <i> PARSEOP_FOR
468
469/* Specific parentheses tokens are not used at this time */
470           /* PARSEOP_EXP_PAREN_OPEN */
471           /* PARSEOP_EXP_PAREN_CLOSE */
472
473
474%token <i> PARSEOP_ASL_CODE
475
476/*
477 * Special functions. These should probably stay at the end of this
478 * table.
479 */
480%token <i> PARSEOP___DATE__
481%token <i> PARSEOP___FILE__
482%token <i> PARSEOP___LINE__
483%token <i> PARSEOP___PATH__
484