diff options
Diffstat (limited to 'source/compiler/aslcompiler.y')
| -rw-r--r-- | source/compiler/aslcompiler.y | 15 | 
1 files changed, 14 insertions, 1 deletions
| diff --git a/source/compiler/aslcompiler.y b/source/compiler/aslcompiler.y index d1f47da3a3a5..f8c5cbbb8c71 100644 --- a/source/compiler/aslcompiler.y +++ b/source/compiler/aslcompiler.y @@ -661,6 +661,7 @@ void *                      AslLocalAllocate (unsigned int Size);  /* Types */  %type <n> SuperName +%type <n> ObjectTypeName  %type <n> ArgTerm  %type <n> LocalTerm  %type <n> DebugTerm @@ -1991,7 +1992,7 @@ NotTerm  ObjectTypeTerm      : PARSEOP_OBJECTTYPE '('        {$<n>$ = TrCreateLeafNode (PARSEOP_OBJECTTYPE);} -        SuperName +        ObjectTypeName          ')'                         {$$ = TrLinkChildren ($<n>3,1,$4);}      | PARSEOP_OBJECTTYPE '('          error ')'                   {$$ = AslDoError(); yyclearin;} @@ -2439,6 +2440,18 @@ SuperName      | LocalTerm                     {}      | DebugTerm                     {}      | Type6Opcode                   {} + +/* For ObjectType: SuperName except for UserTerm (method invocation) */ + +ObjectTypeName +    : NameString                    {} +    | ArgTerm                       {} +    | LocalTerm                     {} +    | DebugTerm                     {} +    | RefOfTerm                     {} +    | DerefOfTerm                   {} +    | IndexTerm                     {} +  /*    | UserTerm                      {} */  /* Caused reduce/reduce with Type6Opcode->UserTerm */      ; | 
