dealing with built-in functions
Florian Gleixner
flo@redflo.de
Tue Jun 12 22:41:00 GMT 2007
Hi,
i try to fugure out what is the "best way". The following code throws a
warning:
#include <stdio.h>
#include <math.h>
int main(void)
{
double x=1.7;
printf("%f %f",x,round(x));
}
gcc r.c -lm
r.c: In function 'main':
r.c:9: warning: incompatible implicit declaration of built-in function
'round'
I can avoid this by using the compiler switch -fno-builtin. But as far
as i understand, the built in functions are optimized. So if i use
-fno-builtin, i lose some cycles?
I can also put at line 3:
extern double round(double);
and then i don't need the -fno-builtin. But what does that mean? Which
round() do i use then? Can i avoid the warning if i use other types of
variables - i don't know how the built-in round() is defined.
Other thoughts?
Thank you!
Flo
More information about the Gcc-help
mailing list