svn commit: r328973 - in stable/11: include sys/sys

Dimitry Andric dim at FreeBSD.org
Sun Feb 11 13:57:16 UTC 2018


On 11 Feb 2018, at 11:24, Hans Petter Selasky <hps at selasky.org> wrote:
> 
> On 02/11/18 11:09, Antoine Brodin wrote:
>> On Sun, Feb 11, 2018 at 8:01 AM, Antoine Brodin <antoine at freebsd.org> wrote:
>>> On Wed, Feb 7, 2018 at 4:06 PM, Hans Petter Selasky
>>> <hselasky at freebsd.org> wrote:
>>>> Author: hselasky
>>>> Date: Wed Feb  7 15:06:54 2018
>>>> New Revision: 328973
>>>> URL: https://svnweb.freebsd.org/changeset/base/328973
>>>> 
>>>> Log:
>>>>   MFC r328237:
>>>>   Use the __alloc_size2 attribute where relevant.
>>>> 
>>>>   This follows the documented use in GCC. It is basically only relevant for
>>>>   calloc(3), reallocarray(3) and  mallocarray(9).
>>>> 
>>>>   NOTE: Without this change clang 5.0.1 can produce incorrect optimisation
>>>>   code for static processing of data using the allocated object. For example
>>>>   this has been seen compiling the mlx4 core module, which allocates a
>>>>   fixed size array which is then sorted by a fixed order loop. The
>>>>   optimised result, -O2, is incorrect unless this patch is in place.
>>>> 
>>>>   Suggested by: Mark Millard
>>>>   Reference:    https://docs.freebsd.org/cgi/mid.cgi?9DE674C6-EAA3-4E8A-906F-446E74D82FC4
>>>> 
>>>> Modified:
>>>>   stable/11/include/stdlib.h
>>>>   stable/11/sys/sys/malloc.h
>>>> Directory Properties:
>>>>   stable/11/   (props changed)
>>> 
>>> Hi,
>>> 
>>> Please revert this change.  Lots of ports that used to build fine on
>>> stable/11 are now failing.
>>> /usr/include/stdlib.h:93:7: error: expected function body after
>>> function declarator
>>>              __alloc_size2(1, 2);
> 
> Hi Antoine,
> 
> I'm sorry for the inconvenience. Probably I should have sent this patch for portmgr first, to avoid such breakage. This patch is required also for ports, and it is good you are now rebuilding ports which use this define, because they might be broken due to the fact the __alloc_size2() was incorrectly implemented!
> 
> I hope this will be the end of the breakage:
> 
> https://svnweb.freebsd.org/changeset/base/329122

Hmm, so you add something to the lint path, and that suddenly fixes the builds?  How is that possible?  Are all these ports compiled in "lint mode"?

-Dimitry

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 223 bytes
Desc: Message signed with OpenPGP
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20180211/b70a9e97/attachment.sig>


More information about the svn-src-all mailing list