On Tue, 02 Dec 2014 15:58:47 +0100
Abramo Bagnara <[email protected]> wrote:
> The point is not about overzealousness, but about the declaration of
> memcpy/memset on your machine.
>
> If it contains the nonnull attribute then (correctly) UBSan detect
> that such constraint is not respected.
Hmm, I guess you mean this (from my handy LTS Ubuntu box):
/* Copy N bytes of SRC to DEST. */
extern void *memcpy (void *__restrict __dest,
__const void *__restrict __src, size_t __n)
__THROW __nonnull ((1, 2));
(Documentation at
https://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html#index-g_t_0040code_007bnonnull_007d-function-attribute-2263.)
IIUC the declaration specifies the pointer cannot be NULL and the
compiler generates a diagnostic if it notices that it can be. But the
declaration is strictly stricter than the standard defines.
--jkl
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users