Re: [PATCH v2 10/10] add UNLEAK annotation for reducing leak false positives
- From
- Jonathan Tan <jonathantanmy@google.com>
- Date
- Sep 19, 2017, 20:45 UTC
- Message-ID
- <20170919134552.7845f021@twelve2.svl.corp.google.com>
- In-Reply-To
- <20170908063841.wb23ibs2ancdct2v@sigill.intra.peff.net>
Thanks - this does look like a good thing to have. Sorry for the late comments.
The following comments are assuming that we're going to standardize on UNLEAK(var); (with the semicolon).
On Fri, 8 Sep 2017 02:38:41 -0400 Jeff King <peff@peff.net> wrote:
> +#ifdef SUPPRESS_ANNOTATED_LEAKS > +extern void unleak_memory(const void *ptr, size_t len); > +#define UNLEAK(var) unleak_memory(&(var), sizeof(var));
I would feel better if the semicolon was omitted. I don't think it matters in this particular case, though.
> +#else > +#define UNLEAK(var)
I think this should be defined to be something (for example, "do {} while (0)"), at least so that we have compiler errors when UNLEAK(var) is used incorrectly (for example, without the semicolon) when SUPPRESS_ANNOTATED_LEAKS is not defined.