Re: unitialised error

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

 



Ken Foskey <foskey@xxxxxxxxxxxxxxxx> writes:

> The following code gives me an uninitialised warning on nCol.  There is
> no possible default clause for this one.
>
> switch( nXIndex & 3 )
> {
> 	case 0 :
> 		nCol = *pTmp >> 6;
> 		break;
> 	case 1 :
> 		nCol = ( *pTmp >> 4 ) & 0x03 ;
> 		break;
>
> 	case 2 :
> 		nCol = ( *pTmp >> 2 ) & 0x03;
> 		break;
> 	case 3 :
> 		nCol = ( *pTmp++ ) & 0x03;
> 		break;
> }

There will always be cases where gcc guesses wrong on this; it is not
only very hard, but provably impossible to get it always right.

In this case however, it indicates an optimizer deficiency. You could
try to file a bug report about it.

By the way, please always post complete test cases and include version
and command line options.

-- 
	Falk

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux