Skip to content

Commit 43bced3

Browse files
cosmo0920edsiper
authored andcommitted
regparse: Use concrete signatures of functions
Signed-off-by: Hiroshi Hatake <hiroshi@chronosphere.io>
1 parent 9e92a3d commit 43bced3

1 file changed

Lines changed: 13 additions & 5 deletions

File tree

regparse.c

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -501,8 +501,10 @@ onig_print_names(FILE* fp, regex_t* reg)
501501
# endif /* ONIG_DEBUG */
502502

503503
static int
504-
i_free_name_entry(UChar* key, NameEntry* e, void* arg ARG_UNUSED)
504+
i_free_name_entry(st_data_t vkey, st_data_t ve, st_data_t arg_data ARG_UNUSED, int existing ARG_UNUSED)
505505
{
506+
NameEntry* e = (NameEntry*)ve;
507+
UChar* key = (UChar*)vkey;
506508
xfree(e->name);
507509
if (IS_NOT_NULL(e->back_refs)) xfree(e->back_refs);
508510
xfree(key);
@@ -558,8 +560,12 @@ typedef struct {
558560
} INamesArg;
559561

560562
static int
561-
i_names(UChar* key ARG_UNUSED, NameEntry* e, INamesArg* arg)
563+
i_names(st_data_t key_data ARG_UNUSED, st_data_t value_data, st_data_t arg_data, int existing ARG_UNUSED)
562564
{
565+
/* Cast back to original types */
566+
NameEntry* e = (NameEntry*)value_data;
567+
INamesArg* arg = (INamesArg*)arg_data;
568+
563569
int r = (*(arg->func))(e->name,
564570
e->name + e->name_len,
565571
e->back_num,
@@ -585,16 +591,18 @@ onig_foreach_name(regex_t* reg,
585591
narg.reg = reg;
586592
narg.arg = arg;
587593
narg.enc = reg->enc; /* should be pattern encoding. */
588-
onig_st_foreach(t, i_names, (HashDataType )&narg);
594+
onig_st_foreach(t, i_names, (st_data_t)&narg);
589595
}
590596
return narg.ret;
591597
}
592598

593599
static int
594-
i_renumber_name(UChar* key ARG_UNUSED, NameEntry* e, GroupNumRemap* map)
600+
i_renumber_name(st_data_t key_data ARG_UNUSED, st_data_t ve, st_data_t vmap, int existing ARG_UNUSED)
595601
{
596602
int i;
597603

604+
NameEntry* e = (NameEntry*)ve;
605+
GroupNumRemap* map = (GroupNumRemap*)vmap;
598606
if (e->back_num > 1) {
599607
for (i = 0; i < e->back_num; i++) {
600608
e->back_refs[i] = map[e->back_refs[i]].new_val;
@@ -613,7 +621,7 @@ onig_renumber_name_table(regex_t* reg, GroupNumRemap* map)
613621
NameTable* t = (NameTable* )reg->name_table;
614622

615623
if (IS_NOT_NULL(t)) {
616-
onig_st_foreach(t, i_renumber_name, (HashDataType )map);
624+
onig_st_foreach(t, i_renumber_name, (st_data_t)map);
617625
}
618626
return 0;
619627
}

0 commit comments

Comments
 (0)