Norihiro Tanaka wrote:
However, first it is no longer portable after remove it.
"portable"? This issue is independent of platform, surely. By "portable" did you mean "robust in the presence of future changes?
Second if it is compiled with GCC 4.3 or later, the function is inlined by and "WCP == NULL &&" will be pruned.
True, but I wasn't worried so much about that. I was worried about the case where WCP != NULL: there, the inlined function will be slower because it won't use the faster approach of checking always_character_boundary[*p]: it'll always use the much-slower loop.