[PATCH 09/17] widl: Split the expr rule up into multiple rules to fix operator precedence.
Alexandre Julliard
julliard at winehq.org
Mon Apr 21 05:36:33 CDT 2008
Robert Shearman <rob at codeweavers.com> writes:
> @@ -263,8 +263,14 @@ static void add_explicit_handle_if_necessary(func_t *func);
> %type <attr> attribute
> %type <attr_list> m_attributes attributes attrib_list
> %type <str_list> str_list
> -%type <expr> m_expr expr expr_const
> -%type <expr_list> m_exprs /* exprs expr_list */ expr_list_const
> +%type <expr> m_expr expr_const expression conditional_expression
> +%type <expr> conditional_expression logical_OR_expression logical_AND_expression
> +%type <expr> inclusive_OR_expression exclusive_OR_expression AND_expression
> +%type <expr> equality_expression relational_expression shift_expression
> +%type <expr> additive_expression additive_expression multiplicative_expression
> +%type <expr> cast_expression unary_expression postfix_expression
> +%type <expr> primary_expression
> +%type <expr_list> m_exprs expr_list_const
> %type <array_dims> array array_list
> %type <ifinfo> interfacehdr
> %type <type> inherit interface interfacedef interfacedec
You shouldn't need that, the %left/%right declarations should define the
correct precedence already. Why doesn't this work for you?
--
Alexandre Julliard
julliard at winehq.org
More information about the wine-devel
mailing list