summaryrefslogtreecommitdiff
path: root/idlc/source/parser.y
diff options
context:
space:
mode:
Diffstat (limited to 'idlc/source/parser.y')
-rw-r--r--idlc/source/parser.y37
1 files changed, 9 insertions, 28 deletions
diff --git a/idlc/source/parser.y b/idlc/source/parser.y
index e0bc51e220ab..2b5997d00d2f 100644
--- a/idlc/source/parser.y
+++ b/idlc/source/parser.y
@@ -342,7 +342,6 @@ bool includes(AstDeclaration const * type1, AstDeclaration const * type2) {
%token IDL_IN
%token IDL_OUT
%token IDL_INOUT
-%token IDL_ONEWAY
%token IDL_GET
%token IDL_SET
@@ -394,7 +393,7 @@ bool includes(AstDeclaration const * type1, AstDeclaration const * type2) {
%type <ihval> exception_header structure_header interfaceheader
-%type <ulval> flag_header opt_attrflags opt_attrflag operation_head
+%type <ulval> flag_header opt_attrflags opt_attrflag
%type <ulval> direction service_interface_header service_service_header
%type <llval> case_labels at_least_one_case_label
@@ -995,7 +994,6 @@ attribute_set_raises:
;
operation :
- operation_head
op_type_spec
{
idlc()->setParseState(PS_OpTypeSeen);
@@ -1003,7 +1001,7 @@ operation :
identifier
{
idlc()->setParseState(PS_OpIDSeen);
- checkIdentifier($4);
+ checkIdentifier($3);
AstInterface * pScope = static_cast< AstInterface * >(
idlc()->scopes()->top());
@@ -1013,15 +1011,15 @@ operation :
* Create a node representing an operation on an interface
* and add it to its enclosing scope
*/
- if ( pScope && $2 )
+ if ( pScope && $1 )
{
- AstType *pType = (AstType*)$2;
+ AstType *pType = (AstType*)$1;
if ( !pType || (pType->getNodeType() == NT_exception) )
{
// type ERROR
} else
{
- pOp = new AstOperation($1, pType, *$4, pScope);
+ pOp = new AstOperation(pType, *$3, pScope);
AstInterface::DoubleMemberDeclarations doubleMembers(
pScope->checkMemberClashes(pOp));
@@ -1032,7 +1030,7 @@ operation :
}
}
}
- delete $4;
+ delete $3;
/*
* Push the operation scope onto the scopes stack
*/
@@ -1062,9 +1060,9 @@ operation :
pOp = (AstOperation*)pScope;
if ( pOp )
- pOp->setExceptions($12);
+ pOp->setExceptions($11);
}
- delete $12;
+ delete $11;
/*
* Done with this operation. Pop its scope from the scopes stack
*/
@@ -1072,23 +1070,6 @@ operation :
}
;
-operation_head :
- '['
- IDL_ONEWAY
- {
- idlc()->setParseState(PS_OpOnewaySeen);
- }
- ']'
- {
- idlc()->setParseState(PS_OpHeadSeen);
- $$ = OP_ONEWAY;
- }
- | /* EMPTY */
- {
- $$ = OP_NONE;
- }
- ;
-
op_type_spec :
simple_type_spec
| IDL_VOID
@@ -2006,7 +1987,7 @@ constructor:
{
checkIdentifier($1);
AstScope * scope = idlc()->scopes()->top();
- AstOperation * ctor = new AstOperation(OP_NONE, 0, *$1, scope);
+ AstOperation * ctor = new AstOperation(0, *$1, scope);
delete $1;
scope->addDeclaration(ctor);
idlc()->scopes()->push(ctor);