Skip to content

Commit eccee18

Browse files
committed
Merge branch 'jk/function-pointer-mismatches-fix'
Code clean-up to please clang-18. * jk/function-pointer-mismatches-fix: hashmap: use expected signatures for comparison functions
2 parents 23013a4 + beaa1d9 commit eccee18

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

compat/terminal.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -479,10 +479,13 @@ struct escape_sequence_entry {
479479
};
480480

481481
static int sequence_entry_cmp(const void *hashmap_cmp_fn_data UNUSED,
482-
const struct escape_sequence_entry *e1,
483-
const struct escape_sequence_entry *e2,
482+
const struct hashmap_entry *he1,
483+
const struct hashmap_entry *he2,
484484
const void *keydata)
485485
{
486+
const struct escape_sequence_entry
487+
*e1 = container_of(he1, const struct escape_sequence_entry, entry),
488+
*e2 = container_of(he2, const struct escape_sequence_entry, entry);
486489
return strcmp(e1->sequence, keydata ? keydata : e2->sequence);
487490
}
488491

@@ -496,8 +499,7 @@ static int is_known_escape_sequence(const char *sequence)
496499
struct strbuf buf = STRBUF_INIT;
497500
char *p, *eol;
498501

499-
hashmap_init(&sequences, (hashmap_cmp_fn)sequence_entry_cmp,
500-
NULL, 0);
502+
hashmap_init(&sequences, sequence_entry_cmp, NULL, 0);
501503

502504
strvec_pushl(&cp.args, "infocmp", "-L", "-1", NULL);
503505
if (pipe_command(&cp, NULL, 0, &buf, 0, NULL, 0))

range-diff.c

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -230,16 +230,19 @@ static int read_patches(const char *range, struct string_list *list,
230230
}
231231

232232
static int patch_util_cmp(const void *cmp_data UNUSED,
233-
const struct patch_util *a,
234-
const struct patch_util *b,
235-
const char *keydata)
233+
const struct hashmap_entry *ha,
234+
const struct hashmap_entry *hb,
235+
const void *keydata)
236236
{
237+
const struct patch_util
238+
*a = container_of(ha, const struct patch_util, e),
239+
*b = container_of(hb, const struct patch_util, e);
237240
return strcmp(a->diff, keydata ? keydata : b->diff);
238241
}
239242

240243
static void find_exact_matches(struct string_list *a, struct string_list *b)
241244
{
242-
struct hashmap map = HASHMAP_INIT((hashmap_cmp_fn)patch_util_cmp, NULL);
245+
struct hashmap map = HASHMAP_INIT(patch_util_cmp, NULL);
243246
int i;
244247

245248
/* First, add the patches of a to a hash map */

0 commit comments

Comments
 (0)