Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Commit

Permalink
Fixed bug 944
Browse files Browse the repository at this point in the history
 Tatu Kilappa      2010-02-11 12:13:20 PST

When compiling with -Wconversion, gcc complains about a cast in SDL_endian.h
that might change the result as we are casting from an int into an Uint16. This
is of course not visible unless we are on a non-x86 platform where the
assembler is not available.

While it's not really an error, the warning is really annoying. To fix, change
SDL_endian.h line 87 to:

  return(Uint16)((x<<8)|(x>>8));

Thank you.
  • Loading branch information
slouken committed Apr 14, 2010
1 parent d1032fa commit 2c6b80f
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions include/SDL_endian.h
Expand Up @@ -103,7 +103,7 @@ SDL_Swap16(Uint16 x)
static __inline__ Uint16
SDL_Swap16(Uint16 x)
{
return ((x << 8) | (x >> 8));
return (Uint16)((x << 8) | (x >> 8));
}
#endif

Expand Down Expand Up @@ -143,8 +143,8 @@ SDL_Swap32(Uint32 x)
static __inline__ Uint32
SDL_Swap32(Uint32 x)
{
return ((x << 24) | ((x << 8) & 0x00FF0000) | ((x >> 8) & 0x0000FF00) |
(x >> 24));
return (Uint32)((x << 24) | ((x << 8) & 0x00FF0000) |
((x >> 8) & 0x0000FF00) | (x >> 24));
}
#endif

Expand Down

0 comments on commit 2c6b80f

Please sign in to comment.