Subject: Re: [PATCH 5/5] cbtree.h: define cb_init() in terms of CBTREE_INIT

From: Junio C Hamano <[email-masked]>
Date: Tue, 28 Sep 2021 11:32:02 -0700

Jeff King <[email-masked]> writes:

>> >> +	memcpy(t, &blank, sizeof(*t));
>> >
>> > Is
>> > 	*t = blank;
>> >
>> > not a thing in C?
>
> It would be fine to use struct assignment here, and should be equivalent
> in most compilers. They know about memcpy() and will inline it as
> appropriate.

FWIW, I'd be fine with structure assignment, but we already have too
many such memcpy(<ptr>, &<struct>, sizeof(struct)), adding one more
is not giving us too much incremental burden for later clean-up.

> I think some C programmers tend to prefer memcpy() just because that's
> how they think. It also wasn't legal in old K&R compilers, but as far as
> I know was in C89.

I think so, too.