On Mar 23 20:19, Andy Koppe wrote: > >> Oh, btw., the isnormal macro exists in math.h. > > > > Thanks. But for some reason it's not getting picked up: > > > > gcc -c -I. -I/usr/local/include -I/home/reynolds-gregg/include > > -I/usr/local/include -DNDEBUG -D_GNU_SOURCE=1 -D_REENTRANT > > -D__EXTENSIONS__ -D_TC_PREFIX="\"/usr/local\"" > > -D_TC_INCLUDEDIR="\"/usr/local/include\"" > > -D_TC_LIBDIR="\"/usr/local/lib\"" -D_TC_BINDIR="\"/usr/local/bin\"" > > -D_TC_LIBEXECDIR="\"/usr/local/libexec\"" > > -D_TC_APPINC="\"-I/usr/local/include\"" > > -D_TC_APPLIBS="\"-L/usr/local/lib -ltokyocabinet -lbz2 -lz -lpthread > > -lm -lc \"" -I/usr/include -std=c99 -Wall -fPIC -fsigned-char -O2 > > tcutil.c > > > > result: > > > > tcutil.c:4948: warning: implicit declaration of function `isnormal' > > isnormal() and a load of other things are guarded by > '#if !defined(__STRICT_ANSI__)' in math.h, and __STRICT_ANSI__ does > get defined for -std=c99. > > It's definitely in the C99 standard though, so either the header is > wrong or __STRICT_ANSI__ shouldn't be defined.
It's a bug in the math.h header which is fixed in CVS, so the patch will be in Cygwin 1.7. The old header guards the functions with #if !defined(__STRICT_ANSI__) || defined(__cplusplus) The latest version of math.h guards them correctly with #if !defined(__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L We don't update the 1.5.x release anymore, so I suggest either to give Cygwin 1.7 a test, or to tweak your math.h locally for now. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/

