Re: [PATCH 06/13] reftable: (de)serialization for the polymorphic record type.
"Han-Wen Nienhuys via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 14 quoted lines
> +static void reftable_log_record_key(const void *r, struct strbuf *dest)
> +{
> + const struct reftable_log_record *rec =
> + (const struct reftable_log_record *)r;
> + int len = strlen(rec->refname);
> + uint8_t i64[8];
> + uint64_t ts = 0;
> + strbuf_reset(dest);
> + strbuf_add(dest, (uint8_t *)rec->refname, len + 1);
> +
> + ts = (~ts) - rec->update_index;
> + put_be64(&i64[0], ts);
> + strbuf_add(dest, i64, sizeof(i64));
> +}We seem to be getting
reftable/record.c: In function 'reftable_log_record_key':
reftable/record.c:578:2: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
put_be64(&i64[0], ts);
^
CC reftable/refname.owhen this series is merged to 'seen'.
cf. e.g. https://travis-ci.org/github/git/git/jobs/728655368
Thanks.