Close #15534: Fix a typo in the fast search function of the string library (_s => s)
Replace _s with ptr to avoid future confusion. Add also non regression tests.
diff --git a/Objects/stringlib/fastsearch.h b/Objects/stringlib/fastsearch.h
index f3e0461..5b8d5db 100644
--- a/Objects/stringlib/fastsearch.h
+++ b/Objects/stringlib/fastsearch.h
@@ -48,16 +48,16 @@
} while (0)
if (mode == FAST_SEARCH) {
- const STRINGLIB_CHAR *_s = s;
+ const STRINGLIB_CHAR *ptr = s;
const STRINGLIB_CHAR *e = s + n;
- while (_s < e) {
- DO_MEMCHR(memchr, _s, needle, e - _s);
+ while (ptr < e) {
+ DO_MEMCHR(memchr, ptr, needle, e - ptr);
if (found == NULL)
return -1;
if (sizeof(STRINGLIB_CHAR) == 1 || *found == ch)
- return (found - _s);
+ return (found - s);
/* False positive */
- _s = found + 1;
+ ptr = found + 1;
}
return -1;
}