Proposal: change requirement for tools from C89 to C99
Roland Illig <[email protected]>
| Newsgroups | gmane.os.netbsd.devel.toolchain |
|---|---|
| Message-ID | <[email protected]> |
Hi, tools/README currently says: > Most tools should restrict themselves to C language features that > are defined in C89 (ISO 9899-1989); they should avoid using C99 > language features. These rules are from 2014. Do we still need them? For example, usr.bin/make is used as a tool, but its code contained several C99-isms. This means that for about 5 years, nobody needed C89 support so badly to make it worth convincing us fixing the code to strictly conform to C89. Given that C99 has been around for about 20 years now, that makes perfect sense to me. I therefore propose to require C99 instead of C89 as the baseline standard for everything in tools/. When I removed the C99-isms from usr.bin/make in 2021, I only did so due to the abstract requirement in tools/README, not because there was an actual need for it. In fact, I also accidentally added several C99-isms in 2020 as I had mistaken them to be available in C89 already. I never got any complaints about any platform that could not build make or bmake. Roland