On Fri, Aug 12, 2005 at 12:31:14PM +0100, Peter Stephenson wrote: > But maybe it simply means if inline isn't available, we end up calling > two functions to get a simple strlen(). Yes, that's what my patch did. I had been thinking about optimizing that in the same way you suggested. I'm currently debating whether it might be enough to only use the inline functions if __GNUC__ is defined (since the value of the inline functions is at compile-time, not runtime). The only argument against this that I can come up with is that there may be some conditional code (at some point) that won't get compiled by gcc, and thus it won't get type-checked. The argument for only doing this with gcc is that we're sure that the inline functions are doing the right thing. Since it seems that we agree that this is a good thing for at least gcc, I've checked in a patch that uses inline functions for gcc and attached that patch to this email. If we want to extend this to use inline functions on every compiler that supports inline functions, the second attached patch should accomplish that -- it changes configure to add a new define, INLINE_AVAILABLE, if inline functions are possible. ..wayne..