#include <math.h>
int foo(double x)
{
return round(x);
}
causes
$ gcc -c t.c
t.c: In function 'foo':
t.c:5: warning: incompatible implicit declaration of built-in function 'round'
the transformation of round to lround here done in convert_to_integer is
likely the cause for this. Compiling with -std=c99 makes the warning
go away.
--
Summary: [4.0/4.1/4.2 Regression] Invalid diagnostic about
implicitly defined built-in
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Keywords: diagnostic
Severity: normal
Priority: P3
Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rguenth at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25279