[PATCH] avoid -Wuse-after-free [BZ #26779]
Martin Sebor
msebor@gmail.com
Sun Jan 16 00:21:19 GMT 2022
GCC 12 features a couple of new warnings designed to detect uses
of pointers made invalid by the pointees lifetimes having ended.
Building Glibc with the enhanced GCC exposes a few such uses,
mostly after successful calls to realloc. The attached patch
avoids the new warnings by converting the pointers to uintptr_t
first and using the converted integers instead.
The patch suppresses all instances of the warning at the strictest
setting (-Wuse-after-free=3), which includes even uses in equality
expressions. The default setting approved for GCC 12 is
-Wuse-after-free=2, which doesn't warn on such uses to accommodate
the pointer-adjustment-after-realloc idiom. At the default setting,
the changes to ldconfig.c and setenv are not necessary.
Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: glibc-26779.diff
Type: text/x-patch
Size: 3316 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/libc-alpha/attachments/20220115/18c79f74/attachment.bin>
More information about the Libc-alpha
mailing list