Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1504863851.18993.6.camel@embedded.rocks>
Date: Fri, 08 Sep 2017 11:44:11 +0200
From: Jörg Krause <joerg.krause@...edded.rocks>
To: musl@...ts.openwall.com
Subject: Re: Missing include of <string.h> in sched.h?

On Fri, 2017-09-08 at 10:49 +0200, Szabolcs Nagy wrote:
> * Jörg Krause <joerg.krause@...edded.rocks> [2017-09-08 09:46:56 +0200]:
> > latest Boost 1.65.1 fails to compile with a musl toolchain [1].
> > 
> > The issue is that Boost uses the `CPU_ZERO` macro which expands to
> > `memset()` [2].
> > 
> > The Linux Programmer's Manual state that memset() is defined in
> > string.h [3].
> > 
> > Therefore, shouldn't shed.h include string.h?
> > 
> 
> it should probably include string.h and
> stdlib.h under _GNU_SOURCE
> 
> but note that would mean lot of namespace
> pollution for c++ which always defines
> _GNU_SOURCE

I proposed a patch [4] to add a forward declaration of memset() in
sched.h which indeed fixes the build issue.

> > [1] https://github.com/boostorg/fiber/pull/142
> > [2] https://git.musl-libc.org/cgit/musl/tree/include/sched.h#n110
> > [3] http://man7.org/linux/man-pages/man3/memset.3.html
> > 

[4] http://www.openwall.com/lists/musl/2017/09/08/4

Jörg Krause

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.