On Wed, 2 Sep 2020 10:08:01 +0200 Philippe Mathieu-Daudé <phi...@redhat.com> wrote:
> This variable is used once in an assertion. Remove single > declaration and access directly in the assert(). > > See in "qemu/osdep.h": > > * [...] disable assertion is not > * supported upstream so the risk is all yours. Meanwhile, please > * submit patches to remove any side-effects inside an assertion, or > * fixing error handling that should use Error instead of assert. > > Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> > --- > util/qsp.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/util/qsp.c b/util/qsp.c > index 7d5147f1b20..1db044ecedd 100644 > --- a/util/qsp.c > +++ b/util/qsp.c > @@ -560,9 +560,7 @@ static void qsp_iter_diff(void *p, uint32_t hash, void > *htp) > > /* No point in reporting an empty entry */ > if (new->n_acqs == 0 && new->ns == 0) { > - bool removed = qht_remove(ht, new, hash); > - > - g_assert(removed); > + g_assert(qht_remove(ht, new, hash)); Urgh... this is doing exactly the opposite of the "qemu/osdep.h" recommandations above. We still want to remove new from the hash table even if QEMU was built without assertions. > g_free(new); > } > }