Re: [PATCH 16/16] fix handling of integer constant expressions

From: Josh Triplett
Date: Wed Jun 27 2007 - 10:50:35 EST


On Wed, 2007-06-27 at 14:18 +0100, Al Viro wrote:
> --- a/expand.c
> +++ b/expand.c
[...]
> @@ -488,12 +490,15 @@ static int expand_conditional(struct expression *expr)
>
> cond_cost = expand_expression(cond);
> if (cond->type == EXPR_VALUE) {
> + unsigned flags = expr->flags;
> if (!cond->value)
> true = false;
> if (!true)
> true = cond;
> + cost = expand_expression(*true);
> *expr = *true;
> - return expand_expression(expr);
> + expr->flags = flags;
> + return cost;

This passes an incorrect type to expand_expression; it wants a struct
expression *, but *true has type struct expression; did you want to pass
true rather than *true?

- Josh Triplett


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/