|
Message-ID: <CANmYxDv1xcWTOfx5XQfqBAUcK9Ln+1tBqg+1RbCPOUuFq6HDRg@mail.gmail.com> Date: Tue, 19 Feb 2019 14:54:46 -0800 From: Nick Bray <ncbray@...gle.com> To: musl@...ts.openwall.com Subject: Re: [PATCH] eliminate strict parentheses warnings for byteswaps On Thu, Feb 14, 2019 at 6:39 PM Rich Felker <dalias@...c.org> wrote: > > On Thu, Feb 14, 2019 at 06:27:26PM -0800, Nick Bray wrote: > > To give a little more context, I am targeting a small non-Linux OS. > > We are not at a point where maintaining our own toolchain make sense. > > Instead we are using Android's prebuilt toolchains, providing an > > alternate sysroot (empty for now), and treating Musl as a library > > built from source. It's a flat playing field and there is no such > > thing as system headers or system libraries. We can dial the > > strictness down when compiling Musl itself, but header files touch > > everything. This isn't the traditional use case, but Musl seems like > > a pretty good choice for embedded systems-ish type work when you need > > to scale down into a smaller memory footprint. > > This has come up enough that there's some chance it may be worth > revisiting, but I wonder if using -isystem wouldn't solve your > problem. It looks like -isystem could work for my use case. All things equal, I'd prefer to have stricter compiler settings when modifying Musl and also prefer not to rely on the esoteric details of -isystem. But I'd prefer -isystem to adding local patches. I leave the question of future direction to y'all. > The policy aspect here is that coding style in the libc headers should > not be governed by a possibly changing/unbounded set of compiler style > warnings. But maybe we should look at whether there's some small set > of stricter style rules we should adopt for the headers. > > Also it's worth noting that, in the past when this has come up, it's > brought light to incorrect usage by the person raising the issue -- > things like using a glibc-targeting toolchain and just adding -I for > the musl include dir. > > Rich > > > > On Thu, Feb 14, 2019 at 5:55 PM A. Wilcox <awilfox@...lielinux.org> wrote: > > > > > > On 02/14/19 18:24, Nick Bray wrote: > > > > Patch is attached. > > > > > > > > The change was motivated by including Musl's headers from a project > > > > with -Werror -Wall enabled. I believe Fucshia ran into this, too. I > > > > couldn't think of a good regression test, in part because warnings are > > > > somewhat compiler specific. One possible approach would be to enable > > > > -Werror -Wall in the main build, but that runs into issues of which > > > > compilers are supported and what the core developers prefer. Another > > > > approach would be to only lint the header files - generate a dummy .c > > > > file that includes all the header files and compile it with -Werror. > > > > This is complicated by the "redirection" header files that warn you > > > > should use the canonical version. Which header files should be > > > > checked? So for the moment I punted on regression testing. I mention > > > > this line of thinking in case anyone has some perspective. > > > > > > > > > This has a strong +1 from me, but changes like this have already been > > > rejected at least twice on this list because "compilers shouldn't warn > > > about system headers". > > > > > > Perhaps at attempt #3, they will just accept that this happens regularly > > > enough that a few parens is not the end of the world. (It also makes > > > more components of musl reusable in other libraries, if desired.) > > > > > > Best, > > > --arw
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.