On 27 February 2006 17:00, [EMAIL PROTECTED] wrote: > "Dave Korn" <[EMAIL PROTECTED]> writes: > > [...] > >> It looks to me like the cygwin/newlib combination is not being compliant >> if it implements isnan as a function rather than a macro. I couldn't see >> anything in the standard that says it can be a function, and every >> reference to it describes it as a macro, not a function. It may be the >> case that libstdc++ is within its rights to assume that isnan is a macro >> after all. > > yes, isnan and friends are supposed to be macros only, not functions.
Thanks for the confirmation. I have yet to figure out whether this is specific to newlib-on-cygwin, or applies to other newlib configurations as well, but that rules out libstdc++ from being the underlying cause of the problem here. >> OTOH it may be that libstdc++ was only supposed to be shadowing those >> ctype macros that are guaranteed to have underlying function >> implementations; I don't know what the shadowing is for, so I can't >> comment. > > libstdc++ is supposed to shadow ctype macros -- and it also expect > them to have a function implementation. Ah, does that imply it is also /supposed/ to shadow math.h macros, but it does /not/ expect them to have a function implementation? Or that it is /not/ supposed to shadow math macros, only ctype ones, /because/ only they are guaranteed to have a function implementation as well/ cheers, DaveK -- Can't think of a witty .sigline today.... -- 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/