IEEE Std 1003.1-2001 placed strcasecmp() in strings.h. Most (but not all) platforms also declare strcasecmp in string.h, so the lack of the strings.h include usually does not get noticed. The compile time problem I run into is http://trac.webkit.org/browser/trunk/WebCore/loader/TextResourceDecoder.cpp calls strcasecmp() but strings.h is not included. A similar case has been reported an solved in http://trac.webkit.org/changeset/38176/trunk/JavaScriptCore/runtime/DateMath.cpp. There are at least two options to consider - (a) continue including strings.h in each cpp where strcasecmp() is called or (b) include strings.h in StringExtras.h where strcasecmp() is implemented for Win. I feel that (b) might be a more future-proof (since Win ports are well maintained). Patch follows.
Created attachment 29009 [details] Include strings.h in StringExtras.h if available
Comment on attachment 29009 [details] Include strings.h in StringExtras.h if available r=me
Landed in r42037