Home | History | Annotate | Line # | Download | only in compiler
aslprimaries.y revision 1.1.1.4.2.2
      1  1.1.1.4.2.2  jdolecek NoEcho('
      2  1.1.1.4.2.2  jdolecek /******************************************************************************
      3  1.1.1.4.2.2  jdolecek  *
      4  1.1.1.4.2.2  jdolecek  * Module Name: aslprimaries.y - Rules for primary ASL operators
      5  1.1.1.4.2.2  jdolecek  *                             - Keep this file synched with the
      6  1.1.1.4.2.2  jdolecek  *                               CvParseOpBlockType function in cvcompiler.c
      7  1.1.1.4.2.2  jdolecek  *
      8  1.1.1.4.2.2  jdolecek  *****************************************************************************/
      9  1.1.1.4.2.2  jdolecek 
     10  1.1.1.4.2.2  jdolecek /*
     11  1.1.1.4.2.2  jdolecek  * Copyright (C) 2000 - 2017, Intel Corp.
     12  1.1.1.4.2.2  jdolecek  * All rights reserved.
     13  1.1.1.4.2.2  jdolecek  *
     14  1.1.1.4.2.2  jdolecek  * Redistribution and use in source and binary forms, with or without
     15  1.1.1.4.2.2  jdolecek  * modification, are permitted provided that the following conditions
     16  1.1.1.4.2.2  jdolecek  * are met:
     17  1.1.1.4.2.2  jdolecek  * 1. Redistributions of source code must retain the above copyright
     18  1.1.1.4.2.2  jdolecek  *    notice, this list of conditions, and the following disclaimer,
     19  1.1.1.4.2.2  jdolecek  *    without modification.
     20  1.1.1.4.2.2  jdolecek  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
     21  1.1.1.4.2.2  jdolecek  *    substantially similar to the "NO WARRANTY" disclaimer below
     22  1.1.1.4.2.2  jdolecek  *    ("Disclaimer") and any redistribution must be conditioned upon
     23  1.1.1.4.2.2  jdolecek  *    including a substantially similar Disclaimer requirement for further
     24  1.1.1.4.2.2  jdolecek  *    binary redistribution.
     25  1.1.1.4.2.2  jdolecek  * 3. Neither the names of the above-listed copyright holders nor the names
     26  1.1.1.4.2.2  jdolecek  *    of any contributors may be used to endorse or promote products derived
     27  1.1.1.4.2.2  jdolecek  *    from this software without specific prior written permission.
     28  1.1.1.4.2.2  jdolecek  *
     29  1.1.1.4.2.2  jdolecek  * Alternatively, this software may be distributed under the terms of the
     30  1.1.1.4.2.2  jdolecek  * GNU General Public License ("GPL") version 2 as published by the Free
     31  1.1.1.4.2.2  jdolecek  * Software Foundation.
     32  1.1.1.4.2.2  jdolecek  *
     33  1.1.1.4.2.2  jdolecek  * NO WARRANTY
     34  1.1.1.4.2.2  jdolecek  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     35  1.1.1.4.2.2  jdolecek  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     36  1.1.1.4.2.2  jdolecek  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
     37  1.1.1.4.2.2  jdolecek  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     38  1.1.1.4.2.2  jdolecek  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     39  1.1.1.4.2.2  jdolecek  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     40  1.1.1.4.2.2  jdolecek  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     41  1.1.1.4.2.2  jdolecek  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     42  1.1.1.4.2.2  jdolecek  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
     43  1.1.1.4.2.2  jdolecek  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     44  1.1.1.4.2.2  jdolecek  * POSSIBILITY OF SUCH DAMAGES.
     45  1.1.1.4.2.2  jdolecek  */
     46  1.1.1.4.2.2  jdolecek 
     47  1.1.1.4.2.2  jdolecek ')
     48  1.1.1.4.2.2  jdolecek 
     49  1.1.1.4.2.2  jdolecek 
     50  1.1.1.4.2.2  jdolecek /*******************************************************************************
     51  1.1.1.4.2.2  jdolecek  *
     52  1.1.1.4.2.2  jdolecek  * ASL Primary Terms
     53  1.1.1.4.2.2  jdolecek  *
     54  1.1.1.4.2.2  jdolecek  ******************************************************************************/
     55  1.1.1.4.2.2  jdolecek 
     56  1.1.1.4.2.2  jdolecek AccessAsTerm
     57  1.1.1.4.2.2  jdolecek     : PARSEOP_ACCESSAS
     58  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
     59  1.1.1.4.2.2  jdolecek         AccessTypeKeyword
     60  1.1.1.4.2.2  jdolecek         OptionalAccessAttribTerm
     61  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrCreateOp (PARSEOP_ACCESSAS,2,$3,$4);}
     62  1.1.1.4.2.2  jdolecek     | PARSEOP_ACCESSAS
     63  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
     64  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
     65  1.1.1.4.2.2  jdolecek     ;
     66  1.1.1.4.2.2  jdolecek 
     67  1.1.1.4.2.2  jdolecek AcquireTerm
     68  1.1.1.4.2.2  jdolecek     : PARSEOP_ACQUIRE
     69  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp(PARSEOP_ACQUIRE);}
     70  1.1.1.4.2.2  jdolecek         SuperName
     71  1.1.1.4.2.2  jdolecek         ',' WordConstExpr
     72  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$6);}
     73  1.1.1.4.2.2  jdolecek     | PARSEOP_ACQUIRE
     74  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
     75  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
     76  1.1.1.4.2.2  jdolecek     ;
     77  1.1.1.4.2.2  jdolecek 
     78  1.1.1.4.2.2  jdolecek AddTerm
     79  1.1.1.4.2.2  jdolecek     : PARSEOP_ADD
     80  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_ADD);}
     81  1.1.1.4.2.2  jdolecek         TermArg
     82  1.1.1.4.2.2  jdolecek         TermArgItem
     83  1.1.1.4.2.2  jdolecek         Target
     84  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
     85  1.1.1.4.2.2  jdolecek     | PARSEOP_ADD
     86  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
     87  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
     88  1.1.1.4.2.2  jdolecek     ;
     89  1.1.1.4.2.2  jdolecek 
     90  1.1.1.4.2.2  jdolecek AliasTerm
     91  1.1.1.4.2.2  jdolecek     : PARSEOP_ALIAS
     92  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_ALIAS);}
     93  1.1.1.4.2.2  jdolecek         NameString
     94  1.1.1.4.2.2  jdolecek         NameStringItem
     95  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,
     96  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($5, OP_IS_NAME_DECLARATION));}
     97  1.1.1.4.2.2  jdolecek     | PARSEOP_ALIAS
     98  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
     99  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    100  1.1.1.4.2.2  jdolecek     ;
    101  1.1.1.4.2.2  jdolecek 
    102  1.1.1.4.2.2  jdolecek AndTerm
    103  1.1.1.4.2.2  jdolecek     : PARSEOP_AND
    104  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_AND);}
    105  1.1.1.4.2.2  jdolecek         TermArg
    106  1.1.1.4.2.2  jdolecek         TermArgItem
    107  1.1.1.4.2.2  jdolecek         Target
    108  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    109  1.1.1.4.2.2  jdolecek     | PARSEOP_AND
    110  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    111  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    112  1.1.1.4.2.2  jdolecek     ;
    113  1.1.1.4.2.2  jdolecek 
    114  1.1.1.4.2.2  jdolecek ArgTerm
    115  1.1.1.4.2.2  jdolecek     : PARSEOP_ARG0                  {$$ = TrCreateLeafOp (PARSEOP_ARG0);}
    116  1.1.1.4.2.2  jdolecek     | PARSEOP_ARG1                  {$$ = TrCreateLeafOp (PARSEOP_ARG1);}
    117  1.1.1.4.2.2  jdolecek     | PARSEOP_ARG2                  {$$ = TrCreateLeafOp (PARSEOP_ARG2);}
    118  1.1.1.4.2.2  jdolecek     | PARSEOP_ARG3                  {$$ = TrCreateLeafOp (PARSEOP_ARG3);}
    119  1.1.1.4.2.2  jdolecek     | PARSEOP_ARG4                  {$$ = TrCreateLeafOp (PARSEOP_ARG4);}
    120  1.1.1.4.2.2  jdolecek     | PARSEOP_ARG5                  {$$ = TrCreateLeafOp (PARSEOP_ARG5);}
    121  1.1.1.4.2.2  jdolecek     | PARSEOP_ARG6                  {$$ = TrCreateLeafOp (PARSEOP_ARG6);}
    122  1.1.1.4.2.2  jdolecek     ;
    123  1.1.1.4.2.2  jdolecek 
    124  1.1.1.4.2.2  jdolecek BankFieldTerm
    125  1.1.1.4.2.2  jdolecek     : PARSEOP_BANKFIELD
    126  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_BANKFIELD);}
    127  1.1.1.4.2.2  jdolecek         NameString
    128  1.1.1.4.2.2  jdolecek         NameStringItem
    129  1.1.1.4.2.2  jdolecek         TermArgItem
    130  1.1.1.4.2.2  jdolecek         ',' AccessTypeKeyword
    131  1.1.1.4.2.2  jdolecek         ',' LockRuleKeyword
    132  1.1.1.4.2.2  jdolecek         ',' UpdateRuleKeyword
    133  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    134  1.1.1.4.2.2  jdolecek             FieldUnitList '}'       {$$ = TrLinkOpChildren ($<n>3,7,
    135  1.1.1.4.2.2  jdolecek                                         $4,$5,$6,$8,$10,$12,$15);}
    136  1.1.1.4.2.2  jdolecek     | PARSEOP_BANKFIELD
    137  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    138  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN
    139  1.1.1.4.2.2  jdolecek         '{' error '}'               {$$ = AslDoError(); yyclearin;}
    140  1.1.1.4.2.2  jdolecek     ;
    141  1.1.1.4.2.2  jdolecek 
    142  1.1.1.4.2.2  jdolecek BreakTerm
    143  1.1.1.4.2.2  jdolecek     : PARSEOP_BREAK                 {$$ = TrCreateOp (PARSEOP_BREAK, 0);}
    144  1.1.1.4.2.2  jdolecek     ;
    145  1.1.1.4.2.2  jdolecek 
    146  1.1.1.4.2.2  jdolecek BreakPointTerm
    147  1.1.1.4.2.2  jdolecek     : PARSEOP_BREAKPOINT            {$$ = TrCreateOp (PARSEOP_BREAKPOINT, 0);}
    148  1.1.1.4.2.2  jdolecek     ;
    149  1.1.1.4.2.2  jdolecek 
    150  1.1.1.4.2.2  jdolecek BufferTerm
    151  1.1.1.4.2.2  jdolecek     : PARSEOP_BUFFER                {$<n>$ = TrCreateLeafOp (PARSEOP_BUFFER); COMMENT_CAPTURE_OFF; }
    152  1.1.1.4.2.2  jdolecek         OptionalDataCount
    153  1.1.1.4.2.2  jdolecek         '{' BufferTermData '}'      {$$ = TrLinkOpChildren ($<n>2,2,$3,$5); COMMENT_CAPTURE_ON;}
    154  1.1.1.4.2.2  jdolecek     ;
    155  1.1.1.4.2.2  jdolecek 
    156  1.1.1.4.2.2  jdolecek BufferTermData
    157  1.1.1.4.2.2  jdolecek     : ByteList                      {}
    158  1.1.1.4.2.2  jdolecek     | StringData                    {}
    159  1.1.1.4.2.2  jdolecek     ;
    160  1.1.1.4.2.2  jdolecek 
    161  1.1.1.4.2.2  jdolecek CaseTerm
    162  1.1.1.4.2.2  jdolecek     : PARSEOP_CASE
    163  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CASE);}
    164  1.1.1.4.2.2  jdolecek         DataObject
    165  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    166  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
    167  1.1.1.4.2.2  jdolecek     | PARSEOP_CASE
    168  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    169  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    170  1.1.1.4.2.2  jdolecek     ;
    171  1.1.1.4.2.2  jdolecek 
    172  1.1.1.4.2.2  jdolecek ConcatTerm
    173  1.1.1.4.2.2  jdolecek     : PARSEOP_CONCATENATE
    174  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CONCATENATE);}
    175  1.1.1.4.2.2  jdolecek         TermArg
    176  1.1.1.4.2.2  jdolecek         TermArgItem
    177  1.1.1.4.2.2  jdolecek         Target
    178  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    179  1.1.1.4.2.2  jdolecek     | PARSEOP_CONCATENATE
    180  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    181  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    182  1.1.1.4.2.2  jdolecek     ;
    183  1.1.1.4.2.2  jdolecek 
    184  1.1.1.4.2.2  jdolecek ConcatResTerm
    185  1.1.1.4.2.2  jdolecek     : PARSEOP_CONCATENATERESTEMPLATE
    186  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (
    187  1.1.1.4.2.2  jdolecek                                         PARSEOP_CONCATENATERESTEMPLATE);}
    188  1.1.1.4.2.2  jdolecek         TermArg
    189  1.1.1.4.2.2  jdolecek         TermArgItem
    190  1.1.1.4.2.2  jdolecek         Target
    191  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    192  1.1.1.4.2.2  jdolecek     | PARSEOP_CONCATENATERESTEMPLATE
    193  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    194  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    195  1.1.1.4.2.2  jdolecek     ;
    196  1.1.1.4.2.2  jdolecek 
    197  1.1.1.4.2.2  jdolecek CondRefOfTerm
    198  1.1.1.4.2.2  jdolecek     : PARSEOP_CONDREFOF
    199  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CONDREFOF);}
    200  1.1.1.4.2.2  jdolecek         CondRefOfSource
    201  1.1.1.4.2.2  jdolecek         Target
    202  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    203  1.1.1.4.2.2  jdolecek     | PARSEOP_CONDREFOF
    204  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    205  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    206  1.1.1.4.2.2  jdolecek     ;
    207  1.1.1.4.2.2  jdolecek 
    208  1.1.1.4.2.2  jdolecek ConnectionTerm
    209  1.1.1.4.2.2  jdolecek     : PARSEOP_CONNECTION
    210  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    211  1.1.1.4.2.2  jdolecek         NameString
    212  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrCreateOp (PARSEOP_CONNECTION,1,$3);}
    213  1.1.1.4.2.2  jdolecek     | PARSEOP_CONNECTION
    214  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CONNECTION);}
    215  1.1.1.4.2.2  jdolecek         ResourceMacroTerm
    216  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3, 1,
    217  1.1.1.4.2.2  jdolecek                                         TrLinkOpChildren (
    218  1.1.1.4.2.2  jdolecek                                             TrCreateLeafOp (PARSEOP_RESOURCETEMPLATE), 3,
    219  1.1.1.4.2.2  jdolecek                                             TrCreateLeafOp (PARSEOP_DEFAULT_ARG),
    220  1.1.1.4.2.2  jdolecek                                             TrCreateLeafOp (PARSEOP_DEFAULT_ARG),
    221  1.1.1.4.2.2  jdolecek                                             $4));}
    222  1.1.1.4.2.2  jdolecek     | PARSEOP_CONNECTION
    223  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    224  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    225  1.1.1.4.2.2  jdolecek     ;
    226  1.1.1.4.2.2  jdolecek 
    227  1.1.1.4.2.2  jdolecek ContinueTerm
    228  1.1.1.4.2.2  jdolecek     : PARSEOP_CONTINUE              {$$ = TrCreateOp (PARSEOP_CONTINUE, 0);}
    229  1.1.1.4.2.2  jdolecek     ;
    230  1.1.1.4.2.2  jdolecek 
    231  1.1.1.4.2.2  jdolecek CopyObjectTerm
    232  1.1.1.4.2.2  jdolecek     : PARSEOP_COPYOBJECT
    233  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_COPYOBJECT);}
    234  1.1.1.4.2.2  jdolecek         TermArg
    235  1.1.1.4.2.2  jdolecek         ',' SimpleName
    236  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,
    237  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($6, OP_IS_TARGET));}
    238  1.1.1.4.2.2  jdolecek     | PARSEOP_COPYOBJECT
    239  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    240  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    241  1.1.1.4.2.2  jdolecek     ;
    242  1.1.1.4.2.2  jdolecek 
    243  1.1.1.4.2.2  jdolecek CreateBitFieldTerm
    244  1.1.1.4.2.2  jdolecek     : PARSEOP_CREATEBITFIELD
    245  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEBITFIELD);}
    246  1.1.1.4.2.2  jdolecek         TermArg
    247  1.1.1.4.2.2  jdolecek         TermArgItem
    248  1.1.1.4.2.2  jdolecek         NameStringItem
    249  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
    250  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
    251  1.1.1.4.2.2  jdolecek     | PARSEOP_CREATEBITFIELD
    252  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    253  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    254  1.1.1.4.2.2  jdolecek     ;
    255  1.1.1.4.2.2  jdolecek 
    256  1.1.1.4.2.2  jdolecek CreateByteFieldTerm
    257  1.1.1.4.2.2  jdolecek     : PARSEOP_CREATEBYTEFIELD
    258  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEBYTEFIELD);}
    259  1.1.1.4.2.2  jdolecek         TermArg
    260  1.1.1.4.2.2  jdolecek         TermArgItem
    261  1.1.1.4.2.2  jdolecek         NameStringItem
    262  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
    263  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
    264  1.1.1.4.2.2  jdolecek     | PARSEOP_CREATEBYTEFIELD
    265  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    266  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    267  1.1.1.4.2.2  jdolecek     ;
    268  1.1.1.4.2.2  jdolecek 
    269  1.1.1.4.2.2  jdolecek CreateDWordFieldTerm
    270  1.1.1.4.2.2  jdolecek     : PARSEOP_CREATEDWORDFIELD
    271  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEDWORDFIELD);}
    272  1.1.1.4.2.2  jdolecek         TermArg
    273  1.1.1.4.2.2  jdolecek         TermArgItem
    274  1.1.1.4.2.2  jdolecek         NameStringItem
    275  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
    276  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
    277  1.1.1.4.2.2  jdolecek     | PARSEOP_CREATEDWORDFIELD
    278  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    279  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    280  1.1.1.4.2.2  jdolecek     ;
    281  1.1.1.4.2.2  jdolecek 
    282  1.1.1.4.2.2  jdolecek CreateFieldTerm
    283  1.1.1.4.2.2  jdolecek     : PARSEOP_CREATEFIELD
    284  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEFIELD);}
    285  1.1.1.4.2.2  jdolecek         TermArg
    286  1.1.1.4.2.2  jdolecek         TermArgItem
    287  1.1.1.4.2.2  jdolecek         TermArgItem
    288  1.1.1.4.2.2  jdolecek         NameStringItem
    289  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,4,$4,$5,$6,
    290  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($7, OP_IS_NAME_DECLARATION));}
    291  1.1.1.4.2.2  jdolecek     | PARSEOP_CREATEFIELD
    292  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    293  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    294  1.1.1.4.2.2  jdolecek     ;
    295  1.1.1.4.2.2  jdolecek 
    296  1.1.1.4.2.2  jdolecek CreateQWordFieldTerm
    297  1.1.1.4.2.2  jdolecek     : PARSEOP_CREATEQWORDFIELD
    298  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEQWORDFIELD);}
    299  1.1.1.4.2.2  jdolecek         TermArg
    300  1.1.1.4.2.2  jdolecek         TermArgItem
    301  1.1.1.4.2.2  jdolecek         NameStringItem
    302  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
    303  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
    304  1.1.1.4.2.2  jdolecek     | PARSEOP_CREATEQWORDFIELD
    305  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    306  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    307  1.1.1.4.2.2  jdolecek     ;
    308  1.1.1.4.2.2  jdolecek 
    309  1.1.1.4.2.2  jdolecek CreateWordFieldTerm
    310  1.1.1.4.2.2  jdolecek     : PARSEOP_CREATEWORDFIELD
    311  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEWORDFIELD);}
    312  1.1.1.4.2.2  jdolecek         TermArg
    313  1.1.1.4.2.2  jdolecek         TermArgItem
    314  1.1.1.4.2.2  jdolecek         NameStringItem
    315  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
    316  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
    317  1.1.1.4.2.2  jdolecek     | PARSEOP_CREATEWORDFIELD
    318  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    319  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    320  1.1.1.4.2.2  jdolecek     ;
    321  1.1.1.4.2.2  jdolecek 
    322  1.1.1.4.2.2  jdolecek DataRegionTerm
    323  1.1.1.4.2.2  jdolecek     : PARSEOP_DATATABLEREGION
    324  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_DATATABLEREGION);}
    325  1.1.1.4.2.2  jdolecek         NameString
    326  1.1.1.4.2.2  jdolecek         TermArgItem
    327  1.1.1.4.2.2  jdolecek         TermArgItem
    328  1.1.1.4.2.2  jdolecek         TermArgItem
    329  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,4,
    330  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$5,$6,$7);}
    331  1.1.1.4.2.2  jdolecek     | PARSEOP_DATATABLEREGION
    332  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    333  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    334  1.1.1.4.2.2  jdolecek     ;
    335  1.1.1.4.2.2  jdolecek 
    336  1.1.1.4.2.2  jdolecek DebugTerm
    337  1.1.1.4.2.2  jdolecek     : PARSEOP_DEBUG                 {$$ = TrCreateLeafOp (PARSEOP_DEBUG);}
    338  1.1.1.4.2.2  jdolecek     ;
    339  1.1.1.4.2.2  jdolecek 
    340  1.1.1.4.2.2  jdolecek DecTerm
    341  1.1.1.4.2.2  jdolecek     : PARSEOP_DECREMENT
    342  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_DECREMENT);}
    343  1.1.1.4.2.2  jdolecek         SuperName
    344  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
    345  1.1.1.4.2.2  jdolecek     | PARSEOP_DECREMENT
    346  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    347  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    348  1.1.1.4.2.2  jdolecek     ;
    349  1.1.1.4.2.2  jdolecek 
    350  1.1.1.4.2.2  jdolecek DefaultTerm
    351  1.1.1.4.2.2  jdolecek     : PARSEOP_DEFAULT '{'           {$<n>$ = TrCreateLeafOp (PARSEOP_DEFAULT);}
    352  1.1.1.4.2.2  jdolecek         TermList '}'                {$$ = TrLinkOpChildren ($<n>3,1,$4);}
    353  1.1.1.4.2.2  jdolecek     | PARSEOP_DEFAULT '{'
    354  1.1.1.4.2.2  jdolecek         error '}'                   {$$ = AslDoError(); yyclearin;}
    355  1.1.1.4.2.2  jdolecek     ;
    356  1.1.1.4.2.2  jdolecek 
    357  1.1.1.4.2.2  jdolecek DerefOfTerm
    358  1.1.1.4.2.2  jdolecek     : PARSEOP_DEREFOF
    359  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_DEREFOF);}
    360  1.1.1.4.2.2  jdolecek         DerefOfSource
    361  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
    362  1.1.1.4.2.2  jdolecek     | PARSEOP_DEREFOF
    363  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    364  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    365  1.1.1.4.2.2  jdolecek     ;
    366  1.1.1.4.2.2  jdolecek 
    367  1.1.1.4.2.2  jdolecek DeviceTerm
    368  1.1.1.4.2.2  jdolecek     : PARSEOP_DEVICE
    369  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_DEVICE);}
    370  1.1.1.4.2.2  jdolecek         NameString
    371  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    372  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,2,
    373  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$7);}
    374  1.1.1.4.2.2  jdolecek     | PARSEOP_DEVICE
    375  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    376  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    377  1.1.1.4.2.2  jdolecek     ;
    378  1.1.1.4.2.2  jdolecek 
    379  1.1.1.4.2.2  jdolecek DivideTerm
    380  1.1.1.4.2.2  jdolecek     : PARSEOP_DIVIDE
    381  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_DIVIDE);}
    382  1.1.1.4.2.2  jdolecek         TermArg
    383  1.1.1.4.2.2  jdolecek         TermArgItem
    384  1.1.1.4.2.2  jdolecek         Target
    385  1.1.1.4.2.2  jdolecek         Target
    386  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,4,$4,$5,$6,$7);}
    387  1.1.1.4.2.2  jdolecek     | PARSEOP_DIVIDE
    388  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    389  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    390  1.1.1.4.2.2  jdolecek     ;
    391  1.1.1.4.2.2  jdolecek 
    392  1.1.1.4.2.2  jdolecek EISAIDTerm
    393  1.1.1.4.2.2  jdolecek     : PARSEOP_EISAID
    394  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    395  1.1.1.4.2.2  jdolecek         StringData
    396  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrSetOpIntegerValue (PARSEOP_EISAID, $3);}
    397  1.1.1.4.2.2  jdolecek     | PARSEOP_EISAID
    398  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    399  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    400  1.1.1.4.2.2  jdolecek     ;
    401  1.1.1.4.2.2  jdolecek 
    402  1.1.1.4.2.2  jdolecek ElseIfTerm
    403  1.1.1.4.2.2  jdolecek     : IfTerm ElseTerm               {$$ = TrLinkPeerOp ($1,$2);}
    404  1.1.1.4.2.2  jdolecek     ;
    405  1.1.1.4.2.2  jdolecek 
    406  1.1.1.4.2.2  jdolecek ElseTerm
    407  1.1.1.4.2.2  jdolecek     :                               {$$ = NULL;}
    408  1.1.1.4.2.2  jdolecek     | PARSEOP_ELSE '{'
    409  1.1.1.4.2.2  jdolecek         TermList           {$<n>$ = TrCreateLeafOp (PARSEOP_ELSE);}
    410  1.1.1.4.2.2  jdolecek         '}'                {$$ = TrLinkOpChildren ($<n>4,1,$3);}
    411  1.1.1.4.2.2  jdolecek 
    412  1.1.1.4.2.2  jdolecek     | PARSEOP_ELSE '{'
    413  1.1.1.4.2.2  jdolecek         error '}'                   {$$ = AslDoError(); yyclearin;}
    414  1.1.1.4.2.2  jdolecek 
    415  1.1.1.4.2.2  jdolecek     | PARSEOP_ELSE
    416  1.1.1.4.2.2  jdolecek         error                       {$$ = AslDoError(); yyclearin;}
    417  1.1.1.4.2.2  jdolecek 
    418  1.1.1.4.2.2  jdolecek     | PARSEOP_ELSEIF
    419  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_ELSE);}
    420  1.1.1.4.2.2  jdolecek         TermArg                     {$<n>$ = TrCreateLeafOp (PARSEOP_IF);}
    421  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    422  1.1.1.4.2.2  jdolecek             TermList '}'            {TrLinkOpChildren ($<n>5,2,$4,$8);}
    423  1.1.1.4.2.2  jdolecek         ElseTerm                    {TrLinkPeerOp ($<n>5,$11);}
    424  1.1.1.4.2.2  jdolecek                                     {$$ = TrLinkOpChildren ($<n>3,1,$<n>5);}
    425  1.1.1.4.2.2  jdolecek 
    426  1.1.1.4.2.2  jdolecek     | PARSEOP_ELSEIF
    427  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    428  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    429  1.1.1.4.2.2  jdolecek 
    430  1.1.1.4.2.2  jdolecek     | PARSEOP_ELSEIF
    431  1.1.1.4.2.2  jdolecek         error                       {$$ = AslDoError(); yyclearin;}
    432  1.1.1.4.2.2  jdolecek     ;
    433  1.1.1.4.2.2  jdolecek 
    434  1.1.1.4.2.2  jdolecek EventTerm
    435  1.1.1.4.2.2  jdolecek     : PARSEOP_EVENT
    436  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_EVENT);}
    437  1.1.1.4.2.2  jdolecek         NameString
    438  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,
    439  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION));}
    440  1.1.1.4.2.2  jdolecek     | PARSEOP_EVENT
    441  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    442  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    443  1.1.1.4.2.2  jdolecek     ;
    444  1.1.1.4.2.2  jdolecek 
    445  1.1.1.4.2.2  jdolecek ExternalTerm
    446  1.1.1.4.2.2  jdolecek     : PARSEOP_EXTERNAL
    447  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    448  1.1.1.4.2.2  jdolecek         NameString
    449  1.1.1.4.2.2  jdolecek         OptionalObjectTypeKeyword
    450  1.1.1.4.2.2  jdolecek         OptionalParameterTypePackage
    451  1.1.1.4.2.2  jdolecek         OptionalParameterTypesPackage
    452  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrCreateOp (PARSEOP_EXTERNAL,4,$3,$4,$5,$6);}
    453  1.1.1.4.2.2  jdolecek     | PARSEOP_EXTERNAL
    454  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    455  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    456  1.1.1.4.2.2  jdolecek     ;
    457  1.1.1.4.2.2  jdolecek 
    458  1.1.1.4.2.2  jdolecek FatalTerm
    459  1.1.1.4.2.2  jdolecek     : PARSEOP_FATAL
    460  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_FATAL);}
    461  1.1.1.4.2.2  jdolecek         ByteConstExpr
    462  1.1.1.4.2.2  jdolecek         ',' DWordConstExpr
    463  1.1.1.4.2.2  jdolecek         TermArgItem
    464  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$6,$7);}
    465  1.1.1.4.2.2  jdolecek     | PARSEOP_FATAL
    466  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    467  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    468  1.1.1.4.2.2  jdolecek     ;
    469  1.1.1.4.2.2  jdolecek 
    470  1.1.1.4.2.2  jdolecek FieldTerm
    471  1.1.1.4.2.2  jdolecek     : PARSEOP_FIELD
    472  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_FIELD);}
    473  1.1.1.4.2.2  jdolecek         NameString
    474  1.1.1.4.2.2  jdolecek         ',' AccessTypeKeyword
    475  1.1.1.4.2.2  jdolecek         ',' LockRuleKeyword
    476  1.1.1.4.2.2  jdolecek         ',' UpdateRuleKeyword
    477  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    478  1.1.1.4.2.2  jdolecek             FieldUnitList '}'       {$$ = TrLinkOpChildren ($<n>3,5,$4,$6,$8,$10,$13);}
    479  1.1.1.4.2.2  jdolecek     | PARSEOP_FIELD
    480  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    481  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN
    482  1.1.1.4.2.2  jdolecek         '{' error '}'               {$$ = AslDoError(); yyclearin;}
    483  1.1.1.4.2.2  jdolecek     ;
    484  1.1.1.4.2.2  jdolecek 
    485  1.1.1.4.2.2  jdolecek FindSetLeftBitTerm
    486  1.1.1.4.2.2  jdolecek     : PARSEOP_FINDSETLEFTBIT
    487  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_FINDSETLEFTBIT);}
    488  1.1.1.4.2.2  jdolecek         TermArg
    489  1.1.1.4.2.2  jdolecek         Target
    490  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    491  1.1.1.4.2.2  jdolecek     | PARSEOP_FINDSETLEFTBIT
    492  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    493  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    494  1.1.1.4.2.2  jdolecek     ;
    495  1.1.1.4.2.2  jdolecek 
    496  1.1.1.4.2.2  jdolecek FindSetRightBitTerm
    497  1.1.1.4.2.2  jdolecek     : PARSEOP_FINDSETRIGHTBIT
    498  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_FINDSETRIGHTBIT);}
    499  1.1.1.4.2.2  jdolecek         TermArg
    500  1.1.1.4.2.2  jdolecek         Target
    501  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    502  1.1.1.4.2.2  jdolecek     | PARSEOP_FINDSETRIGHTBIT
    503  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    504  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    505  1.1.1.4.2.2  jdolecek     ;
    506  1.1.1.4.2.2  jdolecek 
    507  1.1.1.4.2.2  jdolecek     /* Convert a For() loop to a While() loop */
    508  1.1.1.4.2.2  jdolecek ForTerm
    509  1.1.1.4.2.2  jdolecek     : PARSEOP_FOR
    510  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_WHILE);}
    511  1.1.1.4.2.2  jdolecek         OptionalTermArg ','         {}
    512  1.1.1.4.2.2  jdolecek         OptionalPredicate ','
    513  1.1.1.4.2.2  jdolecek         OptionalTermArg             {$<n>$ = TrLinkPeerOp ($4,$<n>3);
    514  1.1.1.4.2.2  jdolecek                                             TrSetOpParent ($9,$<n>3);}                /* New parent is WHILE */
    515  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN
    516  1.1.1.4.2.2  jdolecek         '{' TermList '}'            {$<n>$ = TrLinkOpChildren ($<n>3,2,$7,$13);}
    517  1.1.1.4.2.2  jdolecek                                     {$<n>$ = TrLinkPeerOp ($13,$9);
    518  1.1.1.4.2.2  jdolecek                                         $$ = $<n>10;}
    519  1.1.1.4.2.2  jdolecek     ;
    520  1.1.1.4.2.2  jdolecek 
    521  1.1.1.4.2.2  jdolecek OptionalPredicate
    522  1.1.1.4.2.2  jdolecek     :                               {$$ = TrCreateValuedLeafOp (PARSEOP_INTEGER, 1);}
    523  1.1.1.4.2.2  jdolecek     | TermArg                       {$$ = $1;}
    524  1.1.1.4.2.2  jdolecek     ;
    525  1.1.1.4.2.2  jdolecek 
    526  1.1.1.4.2.2  jdolecek FprintfTerm
    527  1.1.1.4.2.2  jdolecek     : PARSEOP_FPRINTF
    528  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_FPRINTF);}
    529  1.1.1.4.2.2  jdolecek         TermArg ','
    530  1.1.1.4.2.2  jdolecek         StringData
    531  1.1.1.4.2.2  jdolecek         PrintfArgList
    532  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$6,$7);}
    533  1.1.1.4.2.2  jdolecek     | PARSEOP_FPRINTF
    534  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    535  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    536  1.1.1.4.2.2  jdolecek     ;
    537  1.1.1.4.2.2  jdolecek 
    538  1.1.1.4.2.2  jdolecek FromBCDTerm
    539  1.1.1.4.2.2  jdolecek     : PARSEOP_FROMBCD
    540  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_FROMBCD);}
    541  1.1.1.4.2.2  jdolecek         TermArg
    542  1.1.1.4.2.2  jdolecek         Target
    543  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    544  1.1.1.4.2.2  jdolecek     | PARSEOP_FROMBCD
    545  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    546  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    547  1.1.1.4.2.2  jdolecek     ;
    548  1.1.1.4.2.2  jdolecek 
    549  1.1.1.4.2.2  jdolecek FunctionTerm
    550  1.1.1.4.2.2  jdolecek     : PARSEOP_FUNCTION
    551  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {COMMENT_CAPTURE_OFF; $<n>$ = TrCreateLeafOp (PARSEOP_METHOD); }
    552  1.1.1.4.2.2  jdolecek         NameString
    553  1.1.1.4.2.2  jdolecek         OptionalParameterTypePackage
    554  1.1.1.4.2.2  jdolecek         OptionalParameterTypesPackage
    555  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'     {COMMENT_CAPTURE_ON; }
    556  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,7,
    557  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
    558  1.1.1.4.2.2  jdolecek                                         TrCreateValuedLeafOp (PARSEOP_BYTECONST, 0),
    559  1.1.1.4.2.2  jdolecek                                         TrCreateLeafOp (PARSEOP_SERIALIZERULE_NOTSERIAL),
    560  1.1.1.4.2.2  jdolecek                                         TrCreateValuedLeafOp (PARSEOP_BYTECONST, 0),$5,$6,$10);}
    561  1.1.1.4.2.2  jdolecek     | PARSEOP_FUNCTION
    562  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    563  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    564  1.1.1.4.2.2  jdolecek     ;
    565  1.1.1.4.2.2  jdolecek 
    566  1.1.1.4.2.2  jdolecek IfTerm
    567  1.1.1.4.2.2  jdolecek     : PARSEOP_IF
    568  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_IF);}
    569  1.1.1.4.2.2  jdolecek         TermArg
    570  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    571  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
    572  1.1.1.4.2.2  jdolecek 
    573  1.1.1.4.2.2  jdolecek     | PARSEOP_IF
    574  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    575  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    576  1.1.1.4.2.2  jdolecek     ;
    577  1.1.1.4.2.2  jdolecek 
    578  1.1.1.4.2.2  jdolecek IncludeTerm
    579  1.1.1.4.2.2  jdolecek     : PARSEOP_INCLUDE
    580  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    581  1.1.1.4.2.2  jdolecek         String
    582  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrSetOpIntegerValue (PARSEOP_INCLUDE, $3);
    583  1.1.1.4.2.2  jdolecek                                         FlOpenIncludeFile ($3);}
    584  1.1.1.4.2.2  jdolecek     ;
    585  1.1.1.4.2.2  jdolecek 
    586  1.1.1.4.2.2  jdolecek IncludeEndTerm
    587  1.1.1.4.2.2  jdolecek     : PARSEOP_INCLUDE_END           {$<n>$ = TrCreateLeafOp (PARSEOP_INCLUDE_END);
    588  1.1.1.4.2.2  jdolecek                                         TrSetOpCurrentFilename ($$);}
    589  1.1.1.4.2.2  jdolecek     ;
    590  1.1.1.4.2.2  jdolecek 
    591  1.1.1.4.2.2  jdolecek IncTerm
    592  1.1.1.4.2.2  jdolecek     : PARSEOP_INCREMENT
    593  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_INCREMENT);}
    594  1.1.1.4.2.2  jdolecek         SuperName
    595  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
    596  1.1.1.4.2.2  jdolecek     | PARSEOP_INCREMENT
    597  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    598  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    599  1.1.1.4.2.2  jdolecek     ;
    600  1.1.1.4.2.2  jdolecek 
    601  1.1.1.4.2.2  jdolecek IndexFieldTerm
    602  1.1.1.4.2.2  jdolecek     : PARSEOP_INDEXFIELD
    603  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_INDEXFIELD);}
    604  1.1.1.4.2.2  jdolecek         NameString
    605  1.1.1.4.2.2  jdolecek         NameStringItem
    606  1.1.1.4.2.2  jdolecek         ',' AccessTypeKeyword
    607  1.1.1.4.2.2  jdolecek         ',' LockRuleKeyword
    608  1.1.1.4.2.2  jdolecek         ',' UpdateRuleKeyword
    609  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    610  1.1.1.4.2.2  jdolecek             FieldUnitList '}'       {$$ = TrLinkOpChildren ($<n>3,6,$4,$5,$7,$9,$11,$14);}
    611  1.1.1.4.2.2  jdolecek     | PARSEOP_INDEXFIELD
    612  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    613  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN
    614  1.1.1.4.2.2  jdolecek         '{' error '}'               {$$ = AslDoError(); yyclearin;}
    615  1.1.1.4.2.2  jdolecek     ;
    616  1.1.1.4.2.2  jdolecek 
    617  1.1.1.4.2.2  jdolecek IndexTerm
    618  1.1.1.4.2.2  jdolecek     : PARSEOP_INDEX
    619  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_INDEX);}
    620  1.1.1.4.2.2  jdolecek         TermArg
    621  1.1.1.4.2.2  jdolecek         TermArgItem
    622  1.1.1.4.2.2  jdolecek         Target
    623  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    624  1.1.1.4.2.2  jdolecek     | PARSEOP_INDEX
    625  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    626  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    627  1.1.1.4.2.2  jdolecek     ;
    628  1.1.1.4.2.2  jdolecek 
    629  1.1.1.4.2.2  jdolecek LAndTerm
    630  1.1.1.4.2.2  jdolecek     : PARSEOP_LAND
    631  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LAND);}
    632  1.1.1.4.2.2  jdolecek         TermArg
    633  1.1.1.4.2.2  jdolecek         TermArgItem
    634  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    635  1.1.1.4.2.2  jdolecek     | PARSEOP_LAND
    636  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    637  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    638  1.1.1.4.2.2  jdolecek     ;
    639  1.1.1.4.2.2  jdolecek 
    640  1.1.1.4.2.2  jdolecek LEqualTerm
    641  1.1.1.4.2.2  jdolecek     : PARSEOP_LEQUAL
    642  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LEQUAL);}
    643  1.1.1.4.2.2  jdolecek         TermArg
    644  1.1.1.4.2.2  jdolecek         TermArgItem
    645  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    646  1.1.1.4.2.2  jdolecek     | PARSEOP_LEQUAL
    647  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    648  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    649  1.1.1.4.2.2  jdolecek     ;
    650  1.1.1.4.2.2  jdolecek 
    651  1.1.1.4.2.2  jdolecek LGreaterEqualTerm
    652  1.1.1.4.2.2  jdolecek     : PARSEOP_LGREATEREQUAL
    653  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LLESS);}
    654  1.1.1.4.2.2  jdolecek         TermArg
    655  1.1.1.4.2.2  jdolecek         TermArgItem
    656  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrCreateOp (PARSEOP_LNOT, 1,
    657  1.1.1.4.2.2  jdolecek                                         TrLinkOpChildren ($<n>3,2,$4,$5));}
    658  1.1.1.4.2.2  jdolecek     | PARSEOP_LGREATEREQUAL
    659  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    660  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    661  1.1.1.4.2.2  jdolecek     ;
    662  1.1.1.4.2.2  jdolecek 
    663  1.1.1.4.2.2  jdolecek LGreaterTerm
    664  1.1.1.4.2.2  jdolecek     : PARSEOP_LGREATER
    665  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LGREATER);}
    666  1.1.1.4.2.2  jdolecek         TermArg
    667  1.1.1.4.2.2  jdolecek         TermArgItem
    668  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    669  1.1.1.4.2.2  jdolecek     | PARSEOP_LGREATER
    670  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    671  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    672  1.1.1.4.2.2  jdolecek     ;
    673  1.1.1.4.2.2  jdolecek 
    674  1.1.1.4.2.2  jdolecek LLessEqualTerm
    675  1.1.1.4.2.2  jdolecek     : PARSEOP_LLESSEQUAL
    676  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LGREATER);}
    677  1.1.1.4.2.2  jdolecek         TermArg
    678  1.1.1.4.2.2  jdolecek         TermArgItem
    679  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrCreateOp (PARSEOP_LNOT, 1,
    680  1.1.1.4.2.2  jdolecek                                         TrLinkOpChildren ($<n>3,2,$4,$5));}
    681  1.1.1.4.2.2  jdolecek     | PARSEOP_LLESSEQUAL
    682  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    683  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    684  1.1.1.4.2.2  jdolecek     ;
    685  1.1.1.4.2.2  jdolecek 
    686  1.1.1.4.2.2  jdolecek LLessTerm
    687  1.1.1.4.2.2  jdolecek     : PARSEOP_LLESS
    688  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LLESS);}
    689  1.1.1.4.2.2  jdolecek         TermArg
    690  1.1.1.4.2.2  jdolecek         TermArgItem
    691  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    692  1.1.1.4.2.2  jdolecek     | PARSEOP_LLESS
    693  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    694  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    695  1.1.1.4.2.2  jdolecek     ;
    696  1.1.1.4.2.2  jdolecek 
    697  1.1.1.4.2.2  jdolecek LNotEqualTerm
    698  1.1.1.4.2.2  jdolecek     : PARSEOP_LNOTEQUAL
    699  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LEQUAL);}
    700  1.1.1.4.2.2  jdolecek         TermArg
    701  1.1.1.4.2.2  jdolecek         TermArgItem
    702  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrCreateOp (PARSEOP_LNOT, 1,
    703  1.1.1.4.2.2  jdolecek                                         TrLinkOpChildren ($<n>3,2,$4,$5));}
    704  1.1.1.4.2.2  jdolecek     | PARSEOP_LNOTEQUAL
    705  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    706  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    707  1.1.1.4.2.2  jdolecek     ;
    708  1.1.1.4.2.2  jdolecek 
    709  1.1.1.4.2.2  jdolecek LNotTerm
    710  1.1.1.4.2.2  jdolecek     : PARSEOP_LNOT
    711  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LNOT);}
    712  1.1.1.4.2.2  jdolecek         TermArg
    713  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
    714  1.1.1.4.2.2  jdolecek     | PARSEOP_LNOT
    715  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    716  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    717  1.1.1.4.2.2  jdolecek     ;
    718  1.1.1.4.2.2  jdolecek 
    719  1.1.1.4.2.2  jdolecek LoadTableTerm
    720  1.1.1.4.2.2  jdolecek     : PARSEOP_LOADTABLE
    721  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LOADTABLE);}
    722  1.1.1.4.2.2  jdolecek         TermArg
    723  1.1.1.4.2.2  jdolecek         TermArgItem
    724  1.1.1.4.2.2  jdolecek         TermArgItem
    725  1.1.1.4.2.2  jdolecek         OptionalListString
    726  1.1.1.4.2.2  jdolecek         OptionalListString
    727  1.1.1.4.2.2  jdolecek         OptionalReference
    728  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,6,$4,$5,$6,$7,$8,$9);}
    729  1.1.1.4.2.2  jdolecek     | PARSEOP_LOADTABLE
    730  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    731  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    732  1.1.1.4.2.2  jdolecek     ;
    733  1.1.1.4.2.2  jdolecek 
    734  1.1.1.4.2.2  jdolecek LoadTerm
    735  1.1.1.4.2.2  jdolecek     : PARSEOP_LOAD
    736  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LOAD);}
    737  1.1.1.4.2.2  jdolecek         NameString
    738  1.1.1.4.2.2  jdolecek         RequiredTarget
    739  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    740  1.1.1.4.2.2  jdolecek     | PARSEOP_LOAD
    741  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    742  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    743  1.1.1.4.2.2  jdolecek     ;
    744  1.1.1.4.2.2  jdolecek 
    745  1.1.1.4.2.2  jdolecek LocalTerm
    746  1.1.1.4.2.2  jdolecek     : PARSEOP_LOCAL0                {$$ = TrCreateLeafOp (PARSEOP_LOCAL0);}
    747  1.1.1.4.2.2  jdolecek     | PARSEOP_LOCAL1                {$$ = TrCreateLeafOp (PARSEOP_LOCAL1);}
    748  1.1.1.4.2.2  jdolecek     | PARSEOP_LOCAL2                {$$ = TrCreateLeafOp (PARSEOP_LOCAL2);}
    749  1.1.1.4.2.2  jdolecek     | PARSEOP_LOCAL3                {$$ = TrCreateLeafOp (PARSEOP_LOCAL3);}
    750  1.1.1.4.2.2  jdolecek     | PARSEOP_LOCAL4                {$$ = TrCreateLeafOp (PARSEOP_LOCAL4);}
    751  1.1.1.4.2.2  jdolecek     | PARSEOP_LOCAL5                {$$ = TrCreateLeafOp (PARSEOP_LOCAL5);}
    752  1.1.1.4.2.2  jdolecek     | PARSEOP_LOCAL6                {$$ = TrCreateLeafOp (PARSEOP_LOCAL6);}
    753  1.1.1.4.2.2  jdolecek     | PARSEOP_LOCAL7                {$$ = TrCreateLeafOp (PARSEOP_LOCAL7);}
    754  1.1.1.4.2.2  jdolecek     ;
    755  1.1.1.4.2.2  jdolecek 
    756  1.1.1.4.2.2  jdolecek LOrTerm
    757  1.1.1.4.2.2  jdolecek     : PARSEOP_LOR
    758  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_LOR);}
    759  1.1.1.4.2.2  jdolecek         TermArg
    760  1.1.1.4.2.2  jdolecek         TermArgItem
    761  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    762  1.1.1.4.2.2  jdolecek     | PARSEOP_LOR
    763  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    764  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    765  1.1.1.4.2.2  jdolecek     ;
    766  1.1.1.4.2.2  jdolecek 
    767  1.1.1.4.2.2  jdolecek MatchTerm
    768  1.1.1.4.2.2  jdolecek     : PARSEOP_MATCH
    769  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_MATCH);}
    770  1.1.1.4.2.2  jdolecek         TermArg
    771  1.1.1.4.2.2  jdolecek         ',' MatchOpKeyword
    772  1.1.1.4.2.2  jdolecek         TermArgItem
    773  1.1.1.4.2.2  jdolecek         ',' MatchOpKeyword
    774  1.1.1.4.2.2  jdolecek         TermArgItem
    775  1.1.1.4.2.2  jdolecek         TermArgItem
    776  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,6,$4,$6,$7,$9,$10,$11);}
    777  1.1.1.4.2.2  jdolecek     | PARSEOP_MATCH
    778  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    779  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    780  1.1.1.4.2.2  jdolecek     ;
    781  1.1.1.4.2.2  jdolecek 
    782  1.1.1.4.2.2  jdolecek MethodTerm
    783  1.1.1.4.2.2  jdolecek     : PARSEOP_METHOD
    784  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_METHOD); COMMENT_CAPTURE_OFF;}
    785  1.1.1.4.2.2  jdolecek         NameString
    786  1.1.1.4.2.2  jdolecek         OptionalByteConstExpr       {UtCheckIntegerRange ($5, 0, 7);}
    787  1.1.1.4.2.2  jdolecek         OptionalSerializeRuleKeyword
    788  1.1.1.4.2.2  jdolecek         OptionalByteConstExpr
    789  1.1.1.4.2.2  jdolecek         OptionalParameterTypePackage
    790  1.1.1.4.2.2  jdolecek         OptionalParameterTypesPackage
    791  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'     {COMMENT_CAPTURE_ON;}
    792  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,7,
    793  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
    794  1.1.1.4.2.2  jdolecek                                         $5,$7,$8,$9,$10,$14);}
    795  1.1.1.4.2.2  jdolecek     | PARSEOP_METHOD
    796  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    797  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    798  1.1.1.4.2.2  jdolecek     ;
    799  1.1.1.4.2.2  jdolecek 
    800  1.1.1.4.2.2  jdolecek MidTerm
    801  1.1.1.4.2.2  jdolecek     : PARSEOP_MID
    802  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_MID);}
    803  1.1.1.4.2.2  jdolecek         TermArg
    804  1.1.1.4.2.2  jdolecek         TermArgItem
    805  1.1.1.4.2.2  jdolecek         TermArgItem
    806  1.1.1.4.2.2  jdolecek         Target
    807  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,4,$4,$5,$6,$7);}
    808  1.1.1.4.2.2  jdolecek     | PARSEOP_MID
    809  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    810  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    811  1.1.1.4.2.2  jdolecek     ;
    812  1.1.1.4.2.2  jdolecek 
    813  1.1.1.4.2.2  jdolecek ModTerm
    814  1.1.1.4.2.2  jdolecek     : PARSEOP_MOD
    815  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_MOD);}
    816  1.1.1.4.2.2  jdolecek         TermArg
    817  1.1.1.4.2.2  jdolecek         TermArgItem
    818  1.1.1.4.2.2  jdolecek         Target
    819  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    820  1.1.1.4.2.2  jdolecek     | PARSEOP_MOD
    821  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    822  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    823  1.1.1.4.2.2  jdolecek     ;
    824  1.1.1.4.2.2  jdolecek 
    825  1.1.1.4.2.2  jdolecek MultiplyTerm
    826  1.1.1.4.2.2  jdolecek     : PARSEOP_MULTIPLY
    827  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_MULTIPLY);}
    828  1.1.1.4.2.2  jdolecek         TermArg
    829  1.1.1.4.2.2  jdolecek         TermArgItem
    830  1.1.1.4.2.2  jdolecek         Target
    831  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    832  1.1.1.4.2.2  jdolecek     | PARSEOP_MULTIPLY
    833  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    834  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    835  1.1.1.4.2.2  jdolecek     ;
    836  1.1.1.4.2.2  jdolecek 
    837  1.1.1.4.2.2  jdolecek MutexTerm
    838  1.1.1.4.2.2  jdolecek     : PARSEOP_MUTEX
    839  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_MUTEX);}
    840  1.1.1.4.2.2  jdolecek         NameString
    841  1.1.1.4.2.2  jdolecek         ',' ByteConstExpr
    842  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,
    843  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$6);}
    844  1.1.1.4.2.2  jdolecek     | PARSEOP_MUTEX
    845  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    846  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    847  1.1.1.4.2.2  jdolecek     ;
    848  1.1.1.4.2.2  jdolecek 
    849  1.1.1.4.2.2  jdolecek NameTerm
    850  1.1.1.4.2.2  jdolecek     : PARSEOP_NAME
    851  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_NAME);}
    852  1.1.1.4.2.2  jdolecek         NameString
    853  1.1.1.4.2.2  jdolecek         ',' DataObject
    854  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,
    855  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$6);}
    856  1.1.1.4.2.2  jdolecek     | PARSEOP_NAME
    857  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    858  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    859  1.1.1.4.2.2  jdolecek     ;
    860  1.1.1.4.2.2  jdolecek 
    861  1.1.1.4.2.2  jdolecek NAndTerm
    862  1.1.1.4.2.2  jdolecek     : PARSEOP_NAND
    863  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_NAND);}
    864  1.1.1.4.2.2  jdolecek         TermArg
    865  1.1.1.4.2.2  jdolecek         TermArgItem
    866  1.1.1.4.2.2  jdolecek         Target
    867  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    868  1.1.1.4.2.2  jdolecek     | PARSEOP_NAND
    869  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    870  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    871  1.1.1.4.2.2  jdolecek     ;
    872  1.1.1.4.2.2  jdolecek 
    873  1.1.1.4.2.2  jdolecek NoOpTerm
    874  1.1.1.4.2.2  jdolecek     : PARSEOP_NOOP                  {$$ = TrCreateOp (PARSEOP_NOOP, 0);}
    875  1.1.1.4.2.2  jdolecek     ;
    876  1.1.1.4.2.2  jdolecek 
    877  1.1.1.4.2.2  jdolecek NOrTerm
    878  1.1.1.4.2.2  jdolecek     : PARSEOP_NOR
    879  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_NOR);}
    880  1.1.1.4.2.2  jdolecek         TermArg
    881  1.1.1.4.2.2  jdolecek         TermArgItem
    882  1.1.1.4.2.2  jdolecek         Target
    883  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    884  1.1.1.4.2.2  jdolecek     | PARSEOP_NOR
    885  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    886  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    887  1.1.1.4.2.2  jdolecek     ;
    888  1.1.1.4.2.2  jdolecek 
    889  1.1.1.4.2.2  jdolecek NotifyTerm
    890  1.1.1.4.2.2  jdolecek     : PARSEOP_NOTIFY
    891  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_NOTIFY);}
    892  1.1.1.4.2.2  jdolecek         SuperName
    893  1.1.1.4.2.2  jdolecek         TermArgItem
    894  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    895  1.1.1.4.2.2  jdolecek     | PARSEOP_NOTIFY
    896  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    897  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    898  1.1.1.4.2.2  jdolecek     ;
    899  1.1.1.4.2.2  jdolecek 
    900  1.1.1.4.2.2  jdolecek NotTerm
    901  1.1.1.4.2.2  jdolecek     : PARSEOP_NOT
    902  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_NOT);}
    903  1.1.1.4.2.2  jdolecek         TermArg
    904  1.1.1.4.2.2  jdolecek         Target
    905  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    906  1.1.1.4.2.2  jdolecek     | PARSEOP_NOT
    907  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    908  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    909  1.1.1.4.2.2  jdolecek     ;
    910  1.1.1.4.2.2  jdolecek 
    911  1.1.1.4.2.2  jdolecek ObjectTypeTerm
    912  1.1.1.4.2.2  jdolecek     : PARSEOP_OBJECTTYPE
    913  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_OBJECTTYPE);}
    914  1.1.1.4.2.2  jdolecek         ObjectTypeSource
    915  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
    916  1.1.1.4.2.2  jdolecek     | PARSEOP_OBJECTTYPE
    917  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    918  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    919  1.1.1.4.2.2  jdolecek     ;
    920  1.1.1.4.2.2  jdolecek 
    921  1.1.1.4.2.2  jdolecek OffsetTerm
    922  1.1.1.4.2.2  jdolecek     : PARSEOP_OFFSET
    923  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    924  1.1.1.4.2.2  jdolecek         AmlPackageLengthTerm
    925  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrCreateOp (PARSEOP_OFFSET,1,$3);}
    926  1.1.1.4.2.2  jdolecek     | PARSEOP_OFFSET
    927  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    928  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    929  1.1.1.4.2.2  jdolecek     ;
    930  1.1.1.4.2.2  jdolecek 
    931  1.1.1.4.2.2  jdolecek OpRegionTerm
    932  1.1.1.4.2.2  jdolecek     : PARSEOP_OPERATIONREGION
    933  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_OPERATIONREGION);}
    934  1.1.1.4.2.2  jdolecek         NameString
    935  1.1.1.4.2.2  jdolecek         ',' OpRegionSpaceIdTerm
    936  1.1.1.4.2.2  jdolecek         TermArgItem
    937  1.1.1.4.2.2  jdolecek         TermArgItem
    938  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,4,
    939  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
    940  1.1.1.4.2.2  jdolecek                                         $6,$7,$8);}
    941  1.1.1.4.2.2  jdolecek     | PARSEOP_OPERATIONREGION
    942  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    943  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    944  1.1.1.4.2.2  jdolecek     ;
    945  1.1.1.4.2.2  jdolecek 
    946  1.1.1.4.2.2  jdolecek OpRegionSpaceIdTerm
    947  1.1.1.4.2.2  jdolecek     : RegionSpaceKeyword            {}
    948  1.1.1.4.2.2  jdolecek     | ByteConst                     {$$ = UtCheckIntegerRange ($1, 0x80, 0xFF);}
    949  1.1.1.4.2.2  jdolecek     ;
    950  1.1.1.4.2.2  jdolecek 
    951  1.1.1.4.2.2  jdolecek OrTerm
    952  1.1.1.4.2.2  jdolecek     : PARSEOP_OR
    953  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_OR);}
    954  1.1.1.4.2.2  jdolecek         TermArg
    955  1.1.1.4.2.2  jdolecek         TermArgItem
    956  1.1.1.4.2.2  jdolecek         Target
    957  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
    958  1.1.1.4.2.2  jdolecek     | PARSEOP_OR
    959  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    960  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    961  1.1.1.4.2.2  jdolecek     ;
    962  1.1.1.4.2.2  jdolecek 
    963  1.1.1.4.2.2  jdolecek PackageTerm
    964  1.1.1.4.2.2  jdolecek     : PARSEOP_PACKAGE               {$<n>$ = TrCreateLeafOp (PARSEOP_VAR_PACKAGE);}
    965  1.1.1.4.2.2  jdolecek         OptionalDataCount
    966  1.1.1.4.2.2  jdolecek         '{' PackageList '}'         {$$ = TrLinkOpChildren ($<n>2,2,$3,$5);}
    967  1.1.1.4.2.2  jdolecek 
    968  1.1.1.4.2.2  jdolecek PowerResTerm
    969  1.1.1.4.2.2  jdolecek     : PARSEOP_POWERRESOURCE
    970  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_POWERRESOURCE);}
    971  1.1.1.4.2.2  jdolecek         NameString
    972  1.1.1.4.2.2  jdolecek         ',' ByteConstExpr
    973  1.1.1.4.2.2  jdolecek         ',' WordConstExpr
    974  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
    975  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,4,
    976  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
    977  1.1.1.4.2.2  jdolecek                                         $6,$8,$11);}
    978  1.1.1.4.2.2  jdolecek     | PARSEOP_POWERRESOURCE
    979  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    980  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    981  1.1.1.4.2.2  jdolecek     ;
    982  1.1.1.4.2.2  jdolecek 
    983  1.1.1.4.2.2  jdolecek PrintfTerm
    984  1.1.1.4.2.2  jdolecek     : PARSEOP_PRINTF
    985  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_PRINTF);}
    986  1.1.1.4.2.2  jdolecek         StringData
    987  1.1.1.4.2.2  jdolecek         PrintfArgList
    988  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
    989  1.1.1.4.2.2  jdolecek     | PARSEOP_PRINTF
    990  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
    991  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
    992  1.1.1.4.2.2  jdolecek     ;
    993  1.1.1.4.2.2  jdolecek 
    994  1.1.1.4.2.2  jdolecek PrintfArgList
    995  1.1.1.4.2.2  jdolecek     :                               {$$ = NULL;}
    996  1.1.1.4.2.2  jdolecek     | TermArg                       {$$ = $1;}
    997  1.1.1.4.2.2  jdolecek     | PrintfArgList ','
    998  1.1.1.4.2.2  jdolecek        TermArg                      {$$ = TrLinkPeerOp ($1, $3);}
    999  1.1.1.4.2.2  jdolecek     ;
   1000  1.1.1.4.2.2  jdolecek 
   1001  1.1.1.4.2.2  jdolecek ProcessorTerm
   1002  1.1.1.4.2.2  jdolecek     : PARSEOP_PROCESSOR
   1003  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_PROCESSOR);}
   1004  1.1.1.4.2.2  jdolecek         NameString
   1005  1.1.1.4.2.2  jdolecek         ',' ByteConstExpr
   1006  1.1.1.4.2.2  jdolecek         OptionalDWordConstExpr
   1007  1.1.1.4.2.2  jdolecek         OptionalByteConstExpr
   1008  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
   1009  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,5,
   1010  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
   1011  1.1.1.4.2.2  jdolecek                                         $6,$7,$8,$11);}
   1012  1.1.1.4.2.2  jdolecek     | PARSEOP_PROCESSOR
   1013  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1014  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1015  1.1.1.4.2.2  jdolecek     ;
   1016  1.1.1.4.2.2  jdolecek 
   1017  1.1.1.4.2.2  jdolecek RawDataBufferTerm
   1018  1.1.1.4.2.2  jdolecek     : PARSEOP_DATABUFFER
   1019  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_DATABUFFER);}
   1020  1.1.1.4.2.2  jdolecek         OptionalWordConst
   1021  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
   1022  1.1.1.4.2.2  jdolecek             ByteList '}'            {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
   1023  1.1.1.4.2.2  jdolecek     | PARSEOP_DATABUFFER
   1024  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1025  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1026  1.1.1.4.2.2  jdolecek     ;
   1027  1.1.1.4.2.2  jdolecek 
   1028  1.1.1.4.2.2  jdolecek /*
   1029  1.1.1.4.2.2  jdolecek  * In RefOf, the node isn't really a target, but we can't keep track of it after
   1030  1.1.1.4.2.2  jdolecek  * we've taken a pointer to it. (hard to tell if a local becomes initialized this way.)
   1031  1.1.1.4.2.2  jdolecek  */
   1032  1.1.1.4.2.2  jdolecek RefOfTerm
   1033  1.1.1.4.2.2  jdolecek     : PARSEOP_REFOF
   1034  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_REFOF);}
   1035  1.1.1.4.2.2  jdolecek         RefOfSource
   1036  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,
   1037  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_TARGET));}
   1038  1.1.1.4.2.2  jdolecek     | PARSEOP_REFOF
   1039  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1040  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1041  1.1.1.4.2.2  jdolecek     ;
   1042  1.1.1.4.2.2  jdolecek 
   1043  1.1.1.4.2.2  jdolecek ReleaseTerm
   1044  1.1.1.4.2.2  jdolecek     : PARSEOP_RELEASE
   1045  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_RELEASE);}
   1046  1.1.1.4.2.2  jdolecek         SuperName
   1047  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1048  1.1.1.4.2.2  jdolecek     | PARSEOP_RELEASE
   1049  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1050  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1051  1.1.1.4.2.2  jdolecek     ;
   1052  1.1.1.4.2.2  jdolecek 
   1053  1.1.1.4.2.2  jdolecek ResetTerm
   1054  1.1.1.4.2.2  jdolecek     : PARSEOP_RESET
   1055  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_RESET);}
   1056  1.1.1.4.2.2  jdolecek         SuperName
   1057  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1058  1.1.1.4.2.2  jdolecek     | PARSEOP_RESET
   1059  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1060  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1061  1.1.1.4.2.2  jdolecek     ;
   1062  1.1.1.4.2.2  jdolecek 
   1063  1.1.1.4.2.2  jdolecek ReturnTerm
   1064  1.1.1.4.2.2  jdolecek     : PARSEOP_RETURN
   1065  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_RETURN);}
   1066  1.1.1.4.2.2  jdolecek         OptionalReturnArg
   1067  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1068  1.1.1.4.2.2  jdolecek     | PARSEOP_RETURN                {$$ = TrLinkOpChildren (
   1069  1.1.1.4.2.2  jdolecek                                         TrCreateLeafOp (PARSEOP_RETURN),1,
   1070  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags (TrCreateLeafOp (PARSEOP_ZERO),
   1071  1.1.1.4.2.2  jdolecek                                             OP_IS_NULL_RETURN));}
   1072  1.1.1.4.2.2  jdolecek     | PARSEOP_RETURN
   1073  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1074  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1075  1.1.1.4.2.2  jdolecek     ;
   1076  1.1.1.4.2.2  jdolecek 
   1077  1.1.1.4.2.2  jdolecek ScopeTerm
   1078  1.1.1.4.2.2  jdolecek     : PARSEOP_SCOPE
   1079  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SCOPE);}
   1080  1.1.1.4.2.2  jdolecek         NameString
   1081  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
   1082  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,2,
   1083  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$7);}
   1084  1.1.1.4.2.2  jdolecek     | PARSEOP_SCOPE
   1085  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1086  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1087  1.1.1.4.2.2  jdolecek     ;
   1088  1.1.1.4.2.2  jdolecek 
   1089  1.1.1.4.2.2  jdolecek ShiftLeftTerm
   1090  1.1.1.4.2.2  jdolecek     : PARSEOP_SHIFTLEFT
   1091  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SHIFTLEFT);}
   1092  1.1.1.4.2.2  jdolecek         TermArg
   1093  1.1.1.4.2.2  jdolecek         TermArgItem
   1094  1.1.1.4.2.2  jdolecek         Target
   1095  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
   1096  1.1.1.4.2.2  jdolecek     | PARSEOP_SHIFTLEFT
   1097  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1098  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1099  1.1.1.4.2.2  jdolecek     ;
   1100  1.1.1.4.2.2  jdolecek 
   1101  1.1.1.4.2.2  jdolecek ShiftRightTerm
   1102  1.1.1.4.2.2  jdolecek     : PARSEOP_SHIFTRIGHT
   1103  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SHIFTRIGHT);}
   1104  1.1.1.4.2.2  jdolecek         TermArg
   1105  1.1.1.4.2.2  jdolecek         TermArgItem
   1106  1.1.1.4.2.2  jdolecek         Target
   1107  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
   1108  1.1.1.4.2.2  jdolecek     | PARSEOP_SHIFTRIGHT
   1109  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1110  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1111  1.1.1.4.2.2  jdolecek     ;
   1112  1.1.1.4.2.2  jdolecek 
   1113  1.1.1.4.2.2  jdolecek SignalTerm
   1114  1.1.1.4.2.2  jdolecek     : PARSEOP_SIGNAL
   1115  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SIGNAL);}
   1116  1.1.1.4.2.2  jdolecek         SuperName
   1117  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1118  1.1.1.4.2.2  jdolecek     | PARSEOP_SIGNAL
   1119  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1120  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1121  1.1.1.4.2.2  jdolecek     ;
   1122  1.1.1.4.2.2  jdolecek 
   1123  1.1.1.4.2.2  jdolecek SizeOfTerm
   1124  1.1.1.4.2.2  jdolecek     : PARSEOP_SIZEOF
   1125  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SIZEOF);}
   1126  1.1.1.4.2.2  jdolecek         SuperName
   1127  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1128  1.1.1.4.2.2  jdolecek     | PARSEOP_SIZEOF
   1129  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1130  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1131  1.1.1.4.2.2  jdolecek     ;
   1132  1.1.1.4.2.2  jdolecek 
   1133  1.1.1.4.2.2  jdolecek SleepTerm
   1134  1.1.1.4.2.2  jdolecek     : PARSEOP_SLEEP
   1135  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SLEEP);}
   1136  1.1.1.4.2.2  jdolecek         TermArg
   1137  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1138  1.1.1.4.2.2  jdolecek     | PARSEOP_SLEEP
   1139  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1140  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1141  1.1.1.4.2.2  jdolecek     ;
   1142  1.1.1.4.2.2  jdolecek 
   1143  1.1.1.4.2.2  jdolecek StallTerm
   1144  1.1.1.4.2.2  jdolecek     : PARSEOP_STALL
   1145  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_STALL);}
   1146  1.1.1.4.2.2  jdolecek         TermArg
   1147  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1148  1.1.1.4.2.2  jdolecek     | PARSEOP_STALL
   1149  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1150  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1151  1.1.1.4.2.2  jdolecek     ;
   1152  1.1.1.4.2.2  jdolecek 
   1153  1.1.1.4.2.2  jdolecek StoreTerm
   1154  1.1.1.4.2.2  jdolecek     : PARSEOP_STORE
   1155  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_STORE);}
   1156  1.1.1.4.2.2  jdolecek         TermArg
   1157  1.1.1.4.2.2  jdolecek         ',' SuperName
   1158  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,
   1159  1.1.1.4.2.2  jdolecek                                             TrSetOpFlags ($6, OP_IS_TARGET));}
   1160  1.1.1.4.2.2  jdolecek     | PARSEOP_STORE
   1161  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1162  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1163  1.1.1.4.2.2  jdolecek     ;
   1164  1.1.1.4.2.2  jdolecek 
   1165  1.1.1.4.2.2  jdolecek SubtractTerm
   1166  1.1.1.4.2.2  jdolecek     : PARSEOP_SUBTRACT
   1167  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SUBTRACT);}
   1168  1.1.1.4.2.2  jdolecek         TermArg
   1169  1.1.1.4.2.2  jdolecek         TermArgItem
   1170  1.1.1.4.2.2  jdolecek         Target
   1171  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
   1172  1.1.1.4.2.2  jdolecek     | PARSEOP_SUBTRACT
   1173  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1174  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1175  1.1.1.4.2.2  jdolecek     ;
   1176  1.1.1.4.2.2  jdolecek 
   1177  1.1.1.4.2.2  jdolecek SwitchTerm
   1178  1.1.1.4.2.2  jdolecek     : PARSEOP_SWITCH
   1179  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_SWITCH);}
   1180  1.1.1.4.2.2  jdolecek         TermArg
   1181  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
   1182  1.1.1.4.2.2  jdolecek             CaseDefaultTermList '}' {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
   1183  1.1.1.4.2.2  jdolecek     | PARSEOP_SWITCH
   1184  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1185  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1186  1.1.1.4.2.2  jdolecek     ;
   1187  1.1.1.4.2.2  jdolecek 
   1188  1.1.1.4.2.2  jdolecek ThermalZoneTerm
   1189  1.1.1.4.2.2  jdolecek     : PARSEOP_THERMALZONE
   1190  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_THERMALZONE);}
   1191  1.1.1.4.2.2  jdolecek         NameString
   1192  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN '{'
   1193  1.1.1.4.2.2  jdolecek             TermList '}'            {$$ = TrLinkOpChildren ($<n>3,2,
   1194  1.1.1.4.2.2  jdolecek                                         TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$7);}
   1195  1.1.1.4.2.2  jdolecek     | PARSEOP_THERMALZONE
   1196  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1197  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1198  1.1.1.4.2.2  jdolecek     ;
   1199  1.1.1.4.2.2  jdolecek 
   1200  1.1.1.4.2.2  jdolecek TimerTerm
   1201  1.1.1.4.2.2  jdolecek     : PARSEOP_TIMER
   1202  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TIMER);}
   1203  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,0);}
   1204  1.1.1.4.2.2  jdolecek     | PARSEOP_TIMER                 {$$ = TrLinkOpChildren (
   1205  1.1.1.4.2.2  jdolecek                                         TrCreateLeafOp (PARSEOP_TIMER),0);}
   1206  1.1.1.4.2.2  jdolecek     | PARSEOP_TIMER
   1207  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1208  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1209  1.1.1.4.2.2  jdolecek     ;
   1210  1.1.1.4.2.2  jdolecek 
   1211  1.1.1.4.2.2  jdolecek ToBCDTerm
   1212  1.1.1.4.2.2  jdolecek     : PARSEOP_TOBCD
   1213  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TOBCD);}
   1214  1.1.1.4.2.2  jdolecek         TermArg
   1215  1.1.1.4.2.2  jdolecek         Target
   1216  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
   1217  1.1.1.4.2.2  jdolecek     | PARSEOP_TOBCD
   1218  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1219  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1220  1.1.1.4.2.2  jdolecek     ;
   1221  1.1.1.4.2.2  jdolecek 
   1222  1.1.1.4.2.2  jdolecek ToBufferTerm
   1223  1.1.1.4.2.2  jdolecek     : PARSEOP_TOBUFFER
   1224  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TOBUFFER);}
   1225  1.1.1.4.2.2  jdolecek         TermArg
   1226  1.1.1.4.2.2  jdolecek         Target
   1227  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
   1228  1.1.1.4.2.2  jdolecek     | PARSEOP_TOBUFFER
   1229  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1230  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1231  1.1.1.4.2.2  jdolecek     ;
   1232  1.1.1.4.2.2  jdolecek 
   1233  1.1.1.4.2.2  jdolecek ToDecimalStringTerm
   1234  1.1.1.4.2.2  jdolecek     : PARSEOP_TODECIMALSTRING
   1235  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TODECIMALSTRING);}
   1236  1.1.1.4.2.2  jdolecek         TermArg
   1237  1.1.1.4.2.2  jdolecek         Target
   1238  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
   1239  1.1.1.4.2.2  jdolecek     | PARSEOP_TODECIMALSTRING
   1240  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1241  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1242  1.1.1.4.2.2  jdolecek     ;
   1243  1.1.1.4.2.2  jdolecek 
   1244  1.1.1.4.2.2  jdolecek ToHexStringTerm
   1245  1.1.1.4.2.2  jdolecek     : PARSEOP_TOHEXSTRING
   1246  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TOHEXSTRING);}
   1247  1.1.1.4.2.2  jdolecek         TermArg
   1248  1.1.1.4.2.2  jdolecek         Target
   1249  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
   1250  1.1.1.4.2.2  jdolecek     | PARSEOP_TOHEXSTRING
   1251  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1252  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1253  1.1.1.4.2.2  jdolecek     ;
   1254  1.1.1.4.2.2  jdolecek 
   1255  1.1.1.4.2.2  jdolecek ToIntegerTerm
   1256  1.1.1.4.2.2  jdolecek     : PARSEOP_TOINTEGER
   1257  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TOINTEGER);}
   1258  1.1.1.4.2.2  jdolecek         TermArg
   1259  1.1.1.4.2.2  jdolecek         Target
   1260  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
   1261  1.1.1.4.2.2  jdolecek     | PARSEOP_TOINTEGER
   1262  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1263  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1264  1.1.1.4.2.2  jdolecek     ;
   1265  1.1.1.4.2.2  jdolecek 
   1266  1.1.1.4.2.2  jdolecek ToPLDTerm
   1267  1.1.1.4.2.2  jdolecek     : PARSEOP_TOPLD
   1268  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TOPLD);}
   1269  1.1.1.4.2.2  jdolecek         PldKeywordList
   1270  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1271  1.1.1.4.2.2  jdolecek     | PARSEOP_TOPLD
   1272  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1273  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1274  1.1.1.4.2.2  jdolecek     ;
   1275  1.1.1.4.2.2  jdolecek 
   1276  1.1.1.4.2.2  jdolecek PldKeywordList
   1277  1.1.1.4.2.2  jdolecek     :                               {$$ = NULL;}
   1278  1.1.1.4.2.2  jdolecek     | PldKeyword
   1279  1.1.1.4.2.2  jdolecek         PARSEOP_EXP_EQUALS Integer  {$$ = TrLinkOpChildren ($1,1,$3);}
   1280  1.1.1.4.2.2  jdolecek     | PldKeyword
   1281  1.1.1.4.2.2  jdolecek         PARSEOP_EXP_EQUALS String   {$$ = TrLinkOpChildren ($1,1,$3);}
   1282  1.1.1.4.2.2  jdolecek     | PldKeywordList ','            /* Allows a trailing comma at list end */
   1283  1.1.1.4.2.2  jdolecek     | PldKeywordList ','
   1284  1.1.1.4.2.2  jdolecek         PldKeyword
   1285  1.1.1.4.2.2  jdolecek         PARSEOP_EXP_EQUALS Integer  {$$ = TrLinkPeerOp ($1,TrLinkOpChildren ($3,1,$5));}
   1286  1.1.1.4.2.2  jdolecek     | PldKeywordList ','
   1287  1.1.1.4.2.2  jdolecek         PldKeyword
   1288  1.1.1.4.2.2  jdolecek         PARSEOP_EXP_EQUALS String   {$$ = TrLinkPeerOp ($1,TrLinkOpChildren ($3,1,$5));}
   1289  1.1.1.4.2.2  jdolecek     ;
   1290  1.1.1.4.2.2  jdolecek 
   1291  1.1.1.4.2.2  jdolecek 
   1292  1.1.1.4.2.2  jdolecek ToStringTerm
   1293  1.1.1.4.2.2  jdolecek     : PARSEOP_TOSTRING
   1294  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_TOSTRING);}
   1295  1.1.1.4.2.2  jdolecek         TermArg
   1296  1.1.1.4.2.2  jdolecek         OptionalCount
   1297  1.1.1.4.2.2  jdolecek         Target
   1298  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
   1299  1.1.1.4.2.2  jdolecek     | PARSEOP_TOSTRING
   1300  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1301  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1302  1.1.1.4.2.2  jdolecek     ;
   1303  1.1.1.4.2.2  jdolecek 
   1304  1.1.1.4.2.2  jdolecek ToUUIDTerm
   1305  1.1.1.4.2.2  jdolecek     : PARSEOP_TOUUID
   1306  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1307  1.1.1.4.2.2  jdolecek         StringData
   1308  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrSetOpIntegerValue (PARSEOP_TOUUID, $3);}
   1309  1.1.1.4.2.2  jdolecek     | PARSEOP_TOUUID
   1310  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1311  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1312  1.1.1.4.2.2  jdolecek     ;
   1313  1.1.1.4.2.2  jdolecek 
   1314  1.1.1.4.2.2  jdolecek UnicodeTerm
   1315  1.1.1.4.2.2  jdolecek     : PARSEOP_UNICODE
   1316  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_UNICODE);}
   1317  1.1.1.4.2.2  jdolecek         StringData
   1318  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,0,$4);}
   1319  1.1.1.4.2.2  jdolecek     | PARSEOP_UNICODE
   1320  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1321  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1322  1.1.1.4.2.2  jdolecek     ;
   1323  1.1.1.4.2.2  jdolecek 
   1324  1.1.1.4.2.2  jdolecek UnloadTerm
   1325  1.1.1.4.2.2  jdolecek     : PARSEOP_UNLOAD
   1326  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_UNLOAD);}
   1327  1.1.1.4.2.2  jdolecek         SuperName
   1328  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,1,$4);}
   1329  1.1.1.4.2.2  jdolecek     | PARSEOP_UNLOAD
   1330  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1331  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1332  1.1.1.4.2.2  jdolecek     ;
   1333  1.1.1.4.2.2  jdolecek 
   1334  1.1.1.4.2.2  jdolecek WaitTerm
   1335  1.1.1.4.2.2  jdolecek     : PARSEOP_WAIT
   1336  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_WAIT);}
   1337  1.1.1.4.2.2  jdolecek         SuperName
   1338  1.1.1.4.2.2  jdolecek         TermArgItem
   1339  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
   1340  1.1.1.4.2.2  jdolecek     | PARSEOP_WAIT
   1341  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1342  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1343  1.1.1.4.2.2  jdolecek     ;
   1344  1.1.1.4.2.2  jdolecek 
   1345  1.1.1.4.2.2  jdolecek XOrTerm
   1346  1.1.1.4.2.2  jdolecek     : PARSEOP_XOR
   1347  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_XOR);}
   1348  1.1.1.4.2.2  jdolecek         TermArg
   1349  1.1.1.4.2.2  jdolecek         TermArgItem
   1350  1.1.1.4.2.2  jdolecek         Target
   1351  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN         {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
   1352  1.1.1.4.2.2  jdolecek     | PARSEOP_XOR
   1353  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1354  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1355  1.1.1.4.2.2  jdolecek     ;
   1356  1.1.1.4.2.2  jdolecek 
   1357  1.1.1.4.2.2  jdolecek WhileTerm
   1358  1.1.1.4.2.2  jdolecek     : PARSEOP_WHILE
   1359  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN          {$<n>$ = TrCreateLeafOp (PARSEOP_WHILE);}
   1360  1.1.1.4.2.2  jdolecek         TermArg
   1361  1.1.1.4.2.2  jdolecek         PARSEOP_CLOSE_PAREN
   1362  1.1.1.4.2.2  jdolecek             '{' TermList '}'        {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
   1363  1.1.1.4.2.2  jdolecek     | PARSEOP_WHILE
   1364  1.1.1.4.2.2  jdolecek         PARSEOP_OPEN_PAREN
   1365  1.1.1.4.2.2  jdolecek         error PARSEOP_CLOSE_PAREN   {$$ = AslDoError(); yyclearin;}
   1366  1.1.1.4.2.2  jdolecek     ;
   1367