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

gcc compilation error with abs() affects sarge, etch, lenny, sid

Today I saw a thread on the linux-kernel list [1] about a gcc compilation 
issue that affects _all_ gcc versions in Debian after gcc-2.95.
I've filed bugs reports:
#452108 (gcc-4.2); #452113 (gcc-4.1); #452114 (gcc-3.3); #452115 (gcc-3.4)

The issue is that in some cases a negative const before an abs() function 
will be brought _inside_ the abs() function and will thus be converted to a  

The following test code shows the issue:
int main( void )
  int i=2;
  if( -10*abs(i-1) == 10*abs(i-1) )
    printf ("OMG,-10==10 in linux!\n");
    printf ("nothing special here\n") ;

  return 0 ;

A patch is available, but the question facing Debian is: should we do a scan 
of the archive to see if and which binary packages are affected?


[1] http://lkml.org/lkml/2007/11/19/493

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply to: