Re: bad asm goto ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ping, noticed you moving towards a 0.4.4 release and this was still not applied.

Harvey

On Mon, Oct 25, 2010 at 8:10 PM, Christopher Li <sparse@xxxxxxxxxxx> wrote:
> It seems that the error is not from the goto. It is from the malformed
> asm_clobber.
> For empty asm_clobber list, sparse currently add nil expr into the
> list. Evaluate will
> complain about the nil pointer thinking it has a bad type.
>
> Any way, this patch should fix it.
>
> Please let me know that help you or not. I am going to apply it after
> the 0.4.3 release.
>
> Chris
>
> diff --git a/evaluate.c b/evaluate.c
> index f8343c2..1fb03ed 100644
> --- a/evaluate.c
> +++ b/evaluate.c
> @@ -3221,7 +3221,7 @@ static void evaluate_asm_statement(struct statement *stmt)
>
>        FOR_EACH_PTR(stmt->asm_clobbers, expr) {
>                if (!expr) {
> -                       sparse_error(stmt->pos, "bad asm output");
> +                       sparse_error(stmt->pos, "bad asm clobbers");
>                        return;
>                }
>                if (expr->type == EXPR_STRING)
> diff --git a/parse.c b/parse.c
> index 537055f..6b7d656 100644
> --- a/parse.c
> +++ b/parse.c
> @@ -1894,7 +1894,8 @@ static struct token *parse_asm_clobbers(struct
> token *token, struct statement *s
>
>        do {
>                token = primary_expression(token->next, &expr);
> -               add_expression(clobbers, expr);
> +               if (expr)
> +                       add_expression(clobbers, expr);
>        } while (match_op(token, ','));
>        return token;
>  }
> --
> To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux