> +| expr '-' expr
> +{
> +     if (!compute_ids || (is_const($1.val) && is_const($3.val))) {
> +             assert($1.ids == NULL);
> +             assert($3.ids == NULL);
> +             $$.val = $1.val - $3.val;
> +             $$.ids = NULL;
> +     } else {
> +             /* LHS and/or RHS need computing from event IDs so union. */
> +             $$ = union_expr($1, $3);
> +     }

Can't this be all in a macro? It's still a lot of duplication.

I'm still not a fan, but I think with a macro it wouldn't be too bad.


-Andi

Reply via email to