Re: gcc-4.6.0-0.11.fc15.x86_64 breaks strcmp?

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

 



Richard W.M. Jones wrote:
> Compiling libguestfs using gcc-4.6.0-0.11.fc15.x86_64 gives lots of:
>
> error: assuming signed overflow does not occur when changing X +- C1 cmp C2 to X cmp C1 +- C2 [-Werror=strict-overflow]
>
> These seem to be associated with code that does 'if (strcmp (s1, s2) == 0)'
>
> For example:
>
> dir.c: In function âdo_rm_rfâ:
> dir.c:59:7: error: assuming signed overflow does not occur when changing X +- C1 cmp C2 to X cmp C1 +- C2 [-Werror=strict-overflow]
>
> ----------------------------------------------------------------------
> int
> do_rm_rf (const char *path)
> {
>   int r;
>   char *buf, *err;
>
>   if (STREQ (path, "/")) {                      <------ here
>     reply_with_error ("cannot remove root directory");
>     return -1;
>   }
> ----------------------------------------------------------------------
>
> where STREQ is a simple macro:
>
> #define STREQ(a,b) (strcmp((a),(b)) == 0)
>
> AFAIK this code should be correct?  I can't find anything at all about
> this specific error from Google.

Hi Rich,

I suspect that there was a problem with .11, perhaps one of these:

    * Fri Mar 04 2011 Jakub Jelinek <jakub@xxxxxxxxxx> 4.6.0-0.12
    - update from trunk
      - PRs c++/46159, c++/46282, c++/47200, c++/47774, c++/47851, c++/47950,
            c++/47974, c/47963, libstdc++/47913, middle-end/47283,
            rtl-optimization/47925, target/47935, tree-optimization/47890
    - rebuilt against ppl 0.11.2, reenable cloog-ppl Requires

because I can't reproduce that with the latest in rawhide,
gcc-4.6.0-0.12.fc15.x86_64:

    $ cat k.c                                                                  :
    #define STREQ(a,b) (strcmp((a),(b)) == 0)

    int
    do_rm_rf (const char *path)
    {
      int r;
      char *buf, *err;

      if (STREQ (path, "/"))
        {
          reply_with_error ("cannot remove root directory");
          return -1;
        }
    }
    $ gcc -O3 -c k.c -Werror=strict-overflow                                   :
-- 
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux