Document number: WG14 N648 (X3J11 97-011) Title: logb() in C9X Author: Zhishun Alex Liu, Douglas Walls, Date: January 12, 1997 Defining ilogb() as: int ilogb(long double); is in direct conflict with The Open Group, X/Open, standard specification, XPG4.2/XSH4.2, which is: int ilogb(double); Supporting conflicting prototypes bearing the exact same name is just causing no end of headaches. Particularly, when the two specifications are from widely accepted standards. In other portions of C9X, in particular Keld Simonsen's papers, WG14 is attempting to incorporate some of the XPG/Posix extensions to C89 into C9X. The X/Open specification is a widely accepted standard. XPG4.2 is built on top of C89, specifying functions which are not a part of C89. We do not understand how we can rationalize not following the prior art established by the XPG specification. Not doing so will invalidate code which compiles with the XPG specification. We would strongly urge WG14 to change the names of *all* function prototypes in direct conflict with e.g. XPG4.2/XSH4.2 to something else to help vendors who already adopted XPG4.2/XSH4.2 at this point.