tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Proposal: change requirement for tools from C89 to C99



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


Home | Main Index | Thread Index | Old Index