Bug#215260: /usr/include/math.h: No prototype for roundf()
On Sat, Oct 11, 2003 at 04:56:34PM +0200, Johan Walles wrote:
> Package: libc6-dev
> Version: 2.3.2-7
> Severity: normal
> File: /usr/include/math.h
>
> libm.so.6 has a roundf() function:
>
> johan@foo:~$ nm -D /lib/libm.so.6|grep roundf
> 00013180 W llroundf
> 000130e0 W lroundf
> 00011630 W roundf
>
> It is documented on the roundf(3) man page:
>
> johan@foo:~$ dpkg -S /usr/share/man/man3/roundf.3.gz
> manpages-dev: /usr/share/man/man3/roundf.3.gz
>
> But it has no prototype:
>
> johan@foo:~$ grep roundf /usr/include/ -r
> grep: warning: /usr/include/gnome-xml/libxml: recursive directory loop
> johan@foo:~$ echo $?
> 1
>
> This goes for truncf() and probably some other functions as well, but
> roundf() and truncf() are the ones I care about.
Grep's not a good way to check. Glibc uses a lot of preprocessor
macros.
<bits/mathcalls.h>:
#ifdef __USE_ISOC99
...
/* Round X to nearest integral value, rounding halfway cases away from
zero. */
__MATHCALLX (round,, (_Mdouble_ __x), (__const__));
Try using -D_GNU_SOURCE and then see if it's there. Or
-D_ISOC99_SOURCE, or gcc -std=c99.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
Reply to: