[asterisk-bugs] [Asterisk 0015017]: armv5tel: ast_expr2.c op_func.c implicit declerations
Asterisk Bug Tracker
noreply at bugs.digium.com
Tue Sep 15 19:32:25 CDT 2009
The following issue has been UPDATED.
======================================================================
https://issues.asterisk.org/view.php?id=15017
======================================================================
Reported By: tzafrir
Assigned To:
======================================================================
Project: Asterisk
Issue ID: 15017
Category: General
Reproducibility: have not tried
Severity: minor
Priority: normal
Status: new
Asterisk Version: SVN
Regression: No
SVN Branch (only for SVN checkouts, not tarball releases): trunk
SVN Revision (number only!): 191633
Request Review:
======================================================================
Date Submitted: 2009-05-02 10:15 CDT
Last Modified: 2009-09-15 19:32 CDT
======================================================================
Summary: armv5tel: ast_expr2.c op_func.c implicit
declerations
Description:
# uname -a
Linux watt 2.6.30-rc2 https://issues.asterisk.org/view.php?id=3 PREEMPT Fri Apr
24 01:50:30 UTC 2009 armv5tel
GNU/Linux
ast_expr2.y: In function 'op_func':
ast_expr2.y:802: warning: implicit declaration of function 'cosl'
ast_expr2.y:802: warning: incompatible implicit declaration of built-in
function 'cosl'
ast_expr2.y:813: warning: implicit declaration of function 'sinl'
ast_expr2.y:813: warning: incompatible implicit declaration of built-in
function 'sinl'
ast_expr2.y:824: warning: implicit declaration of function 'tanl'
ast_expr2.y:824: warning: incompatible implicit declaration of built-in
function 'tanl'
ast_expr2.y:835: warning: implicit declaration of function 'acosl'
ast_expr2.y:835: warning: incompatible implicit declaration of built-in
function 'acosl'
ast_expr2.y:846: warning: implicit declaration of function 'asinl'
ast_expr2.y:846: warning: incompatible implicit declaration of built-in
function 'asinl'
ast_expr2.y:857: warning: implicit declaration of function 'atanl'
ast_expr2.y:857: warning: incompatible implicit declaration of built-in
function 'atanl'
ast_expr2.y:869: warning: implicit declaration of function 'atan2l'
ast_expr2.y:869: warning: incompatible implicit declaration of built-in
function 'atan2l'
ast_expr2.y:881: warning: implicit declaration of function 'powl'
ast_expr2.y:881: warning: incompatible implicit declaration of built-in
function 'powl'
ast_expr2.y:892: warning: implicit declaration of function 'sqrtl'
ast_expr2.y:892: warning: incompatible implicit declaration of built-in
function 'sqrtl'
ast_expr2.y:903: warning: implicit declaration of function 'floorl'
ast_expr2.y:903: warning: incompatible implicit declaration of built-in
function 'floorl'
ast_expr2.y:914: warning: implicit declaration of function 'ceill'
ast_expr2.y:914: warning: incompatible implicit declaration of built-in
function 'ceill'
ast_expr2.y:925: warning: implicit declaration of function 'roundl'
ast_expr2.y:925: warning: incompatible implicit declaration of built-in
function 'roundl'
ast_expr2.y:936: warning: implicit declaration of function 'rintl'
ast_expr2.y:936: warning: incompatible implicit declaration of built-in
function 'rintl'
ast_expr2.y:947: warning: implicit declaration of function 'truncl'
ast_expr2.y:947: warning: incompatible implicit declaration of built-in
function 'truncl'
ast_expr2.y:958: warning: implicit declaration of function 'expl'
ast_expr2.y:958: warning: incompatible implicit declaration of built-in
function 'expl'
ast_expr2.y:969: warning: implicit declaration of function 'exp2l'
ast_expr2.y:969: warning: incompatible implicit declaration of built-in
function 'exp2l'
ast_expr2.y:980: warning: implicit declaration of function 'exp10l'
ast_expr2.y:980: warning: incompatible implicit declaration of built-in
function 'exp10l'
ast_expr2.y:991: warning: implicit declaration of function 'logl'
ast_expr2.y:991: warning: incompatible implicit declaration of built-in
function 'logl'
ast_expr2.y:1002: warning: implicit declaration of function 'log2l'
ast_expr2.y:1002: warning: incompatible implicit declaration of built-in
function 'log2l'
ast_expr2.y:1013: warning: implicit declaration of function 'log10l'
ast_expr2.y:1013: warning: incompatible implicit declaration of built-in
function 'log10l'
ast_expr2.y: In function 'op_rem':
ast_expr2.y:1526: warning: implicit declaration of function 'fmodl'
ast_expr2.y:1526: warning: incompatible implicit declaration of built-in
function 'fmodl
======================================================================
----------------------------------------------------------------------
(0110758) tzafrir (manager) - 2009-09-15 19:32
https://issues.asterisk.org/view.php?id=15017#c110758
----------------------------------------------------------------------
AC_CHECK_FUNCS is a test that technically checks if the symbol is
available. Not if it is available in any header.
And indeed:
$ cat /tmp/math.c
#include <math.h>
int main() {
return (int)fmodl(1, 2);
}
# on amd64:
$ gcc -o conftest -g -O2 /tmp/math.c -lm
(works fine)
# On armel:
$ gcc -o conftest -g -O2 /tmp/math.c -lm
/tmp/math.c: In function ‘main’:
/tmp/math.c:4: warning: incompatible implicit declaration of built-in
function ‘fmodl’
(Gives a compile-time warning but links just fine.
fmodl is not available on armel because __NO_LONG_DOUBLE_MATH is set there
(at least in glibc-2.7).
nm shows, however, that the symbol is available libm.so in both systems:
# amd64:
$ nm -D /lib/libm.so.6 | grep log10
0000000000028980 T __clog10
0000000000034350 T __clog10f
000000000003ca10 T __clog10l
0000000000028980 W clog10
0000000000034350 W clog10f
000000000003ca10 W clog10l
00000000000258a0 W log10
00000000000311c0 W log10f
0000000000039b10 W log10l
# armel:
$ nm -D /lib/libm.so.6 | grep log10
00051b08 T __clog10
0005eee4 T __clog10f
00051b08 T __clog10l
00051b08 W clog10
0005eee4 W clog10f
00051b08 W clog10l
0004dae8 W log10
0005bf34 W log10f
0004dae8 W log10l
Issue History
Date Modified Username Field Change
======================================================================
2009-09-15 19:32 tzafrir Note Added: 0110758
2009-09-15 19:32 tzafrir Status closed => new
2009-09-15 19:32 tzafrir Resolution suspended => reopened
======================================================================
More information about the asterisk-bugs
mailing list