[PATCH] fbbltone.c: Mark bitmasks as unsigned ints

Alan Coopersmith alan.coopersmith at oracle.com
Sun May 22 23:07:20 PDT 2011


On 05/22/11 04:17 PM, walter harms wrote:
> 
> 
> Am 22.05.2011 22:50, schrieb Alan Coopersmith:
>> Clears many Sun compiler warnings:
>> "fbbltone.c", line 491: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 491: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 491: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 491: warning: initializer will be sign-extended: -16777216
>> "fbbltone.c", line 491: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 491: warning: initializer will be sign-extended: -1
>> "fbbltone.c", line 495: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 495: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 495: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 495: warning: initializer will be sign-extended: -256
>> "fbbltone.c", line 495: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 495: warning: initializer will be sign-extended: -1
>> "fbbltone.c", line 499: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 499: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 499: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 499: warning: initializer will be sign-extended: -65536
>> "fbbltone.c", line 499: warning: integer overflow detected: op "<<"
>> "fbbltone.c", line 499: warning: initializer will be sign-extended: -1
>>
>> Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
>> ---
>>  fb/fbbltone.c |    4 ++--
>>  1 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/fb/fbbltone.c b/fb/fbbltone.c
>> index 0a91575..67e7853 100644
>> --- a/fb/fbbltone.c
>> +++ b/fb/fbbltone.c
>> @@ -428,8 +428,8 @@ fbBltOne (FbStip    *src,
>>  
>>  #define Mask24(x,r) (Mask24Pos(x,r) < FB_UNIT ? \
>>  		     (Mask24Pos(x,r) < 0 ? \
>> -		      0xffffff >> Mask24Neg (x,r) : \
>> -		      0xffffff << Mask24Check(x,r)) : 0)
>> +		      0xffffffU >> Mask24Neg (x,r) : \
>> +		      0xffffffU << Mask24Check(x,r)) : 0)
>>  
>>  #define SelMask24(b,n,r)	((((b) >> n) & 1) * Mask24(n,r))
>>  
> 
> The code is next to unreadable. Any change to make a function from it ?

I'm not going to touch that.   If someone else wants to break the long
tradition of *fb code being undecipherable by humans, they can poke the
wasps nest and try to avoid getting stung.

-- 
	-Alan Coopersmith-        alan.coopersmith at oracle.com
	 Oracle Solaris Platform Engineering: X Window System



More information about the xorg-devel mailing list