rb_enc_left_char_head(): take void*

Nobu doesn't like (char*) cast.
This commit is contained in:
卜部昌平 2021-10-05 11:39:05 +09:00
Родитель 499660b04f
Коммит f032c09bca
2 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -694,7 +694,7 @@ rb_enc_prev_char(const char *s, const char *p, const char *e, const rb_encoding
* @return Pointer to the head of the character that contains `p`.
*/
static inline char *
rb_enc_left_char_head(const char *s, const char *p, const char *e, const rb_encoding *enc)
rb_enc_left_char_head(const char *s, const void *p, const char *e, const rb_encoding *enc)
{
const OnigUChar *us = RBIMPL_CAST((const OnigUChar *)s);
const OnigUChar *up = RBIMPL_CAST((const OnigUChar *)p);

Просмотреть файл

@ -5738,7 +5738,7 @@ rb_str_setbyte(VALUE str, VALUE index, VALUE value)
ENC_CODERANGE_SET(str, ENC_CODERANGE_VALID);
goto end;
case ENC_CODERANGE_VALID:
left = rb_enc_left_char_head(head, (char *)ptr, head+len, enc);
left = rb_enc_left_char_head(head, ptr, head+len, enc);
width = rb_enc_precise_mbclen(left, head+len, enc);
*ptr = byte;
nlen = rb_enc_precise_mbclen(left, head+len, enc);