http://sourceware.org/bugzilla/show_bug.cgi?id=14950

             Bug #: 14950
           Summary: Compile error in opcodes/ppc-opc.c (binutils-2.23.1)
           Product: binutils
           Version: 2.23
            Status: NEW
          Severity: normal
          Priority: P2
         Component: binutils
        AssignedTo: unassig...@sourceware.org
        ReportedBy: llew...@raytheon.com
    Classification: Unclassified


When cross compiling under cygwin with GCC 3.4.4., two warnings in ppc-opc.c
cause a build failure.

ppc-opc.c: In function `insert_sci8':
ppc-opc.c:1644: warning: comparison between signed and unsigned
ppc-opc.c:1650: warning: comparison between signed and unsigned
Makefile:932: recipe for target `ppc-opc.lo' failed

The offending lines are:

   1644   else if ((value & 0xff0000) == (unsigned int)value)
   1645     {
   1646       scale_factor = 2;
   1647       ui8 = value >> 16;
   1648       fill = 0;
   1649     }
   1650   else if ((value & 0xff00) == (unsigned int)value)

The cast to unsigned int makes sense on line 1638 since 0xff000000 will be an
unsigned. But not on lines 1644 and 1650 where both 0xff0000 and 0xff00 are
signed. Changing to the following fixes the problem:

   1644   else if ((value & 0xff0000) == value)
   1645     {
   1646       scale_factor = 2;
   1647       ui8 = value >> 16;
   1648       fill = 0;
   1649     }
   1650   else if ((value & 0xff00) == value)

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to