Don't set ATTR_IN or ATTR_OUT by default - this essentially reverts
rev. 1.21. The proxy code must explicitly add these if they're needed.
This commit is contained in:
parent
218281c42c
commit
21842318e9
|
@ -290,31 +290,19 @@ args: arg
|
|||
arg: attributes type pident array { $$ = $3;
|
||||
set_type($$, $2, $4);
|
||||
$$->attrs = $1;
|
||||
if (!is_attr($$->attrs, ATTR_OUT) &&
|
||||
!is_attr($$->attrs, ATTR_IN)) {
|
||||
attr_t *a = make_attr(ATTR_IN);
|
||||
LINK(a, $$->attrs); $$->attrs = a;
|
||||
}
|
||||
}
|
||||
| type pident array { $$ = $2;
|
||||
set_type($$, $1, $3);
|
||||
$$->attrs = make_attr(ATTR_IN);
|
||||
}
|
||||
| attributes type pident '(' m_args ')' { $$ = $3;
|
||||
$$->ptr_level--;
|
||||
set_type($$, $2, NULL);
|
||||
$$->attrs = $1;
|
||||
$$->args = $5;
|
||||
if (!is_attr($$->attrs, ATTR_OUT) &&
|
||||
!is_attr($$->attrs, ATTR_IN)) {
|
||||
attr_t *a = make_attr(ATTR_IN);
|
||||
LINK(a, $$->attrs); $$->attrs = a;
|
||||
}
|
||||
}
|
||||
| type pident '(' m_args ')' { $$ = $2;
|
||||
$$->ptr_level--;
|
||||
set_type($$, $1, NULL);
|
||||
$$->attrs = make_attr(ATTR_IN);
|
||||
$$->args = $4;
|
||||
}
|
||||
;
|
||||
|
@ -527,10 +515,6 @@ funcdef:
|
|||
if (is_attr($4->attrs, ATTR_IN)) {
|
||||
yyerror("Inapplicable attribute");
|
||||
}
|
||||
if (!is_attr($4->attrs, ATTR_OUT)) {
|
||||
attr_t *a = make_attr(ATTR_OUT);
|
||||
LINK(a, $4->attrs); $4->attrs = a;
|
||||
}
|
||||
}
|
||||
;
|
||||
|
||||
|
|
Loading…
Reference in New Issue