unitialised error
llewelly@xmission.com
llewelly@xmission.com
Thu Jul 1 16:22:00 GMT 2004
Ken Foskey <foskey@optushome.com.au> 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;
> }
What version of gcc are you using? I don't get any such warning for this
code with gcc 2.95.3, 3.3.3 or 3.4 .
I completed it like this:
int main()
{
int nXIndex;
int nCol;
int Tmp;
int *pTmp;
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;
}
Tmp= nCol;
}
More information about the Gcc-help
mailing list