svn commit: r328221 - head/sys/sys
Pedro F. Giffuni
pfg at FreeBSD.org
Sun Jan 21 20:27:49 UTC 2018
Author: pfg
Date: Sun Jan 21 20:27:47 2018
New Revision: 328221
URL: https://svnweb.freebsd.org/changeset/base/328221
Log:
Define a new __alloc_size2 attribute to complement the exiting support.
At least on GCC7 calling __alloc_size(x) twice is not equivalent to
calling using the attribute once with two arguments. The later is the
documented use in GCC documentation so add a new alloc_size(n, x)
alternative to cover for the few places where it is used: basically:
calloc(3), reallocarray(3) and mallocarray(9).
Submitted by: Mark Millard
MFC after: 3 days
Reference:
http://docs.freebsd.org/cgi/mid.cgi?F227842D-6BE2-4680-82E7-07906AF61CD7
Modified:
head/sys/sys/cdefs.h
Modified: head/sys/sys/cdefs.h
==============================================================================
--- head/sys/sys/cdefs.h Sun Jan 21 19:26:38 2018 (r328220)
+++ head/sys/sys/cdefs.h Sun Jan 21 20:27:47 2018 (r328221)
@@ -230,8 +230,10 @@
#endif
#if __GNUC_PREREQ__(4, 3) || __has_attribute(__alloc_size__)
#define __alloc_size(x) __attribute__((__alloc_size__(x)))
+#define __alloc_size2(n, x) __attribute__((__alloc_size__(n, x)))
#else
#define __alloc_size(x)
+#define __alloc_size2(n, x)
#endif
#if __GNUC_PREREQ__(4, 9) || __has_attribute(__alloc_align__)
#define __alloc_align(x) __attribute__((__alloc_align__(x)))
More information about the svn-src-all
mailing list