In article <20201213212746.3cfc3f...@cvs.netbsd.org>,
Roland Illig <source-changes-d@NetBSD.org> wrote:
>-=-=-=-=-=-
>
>Module Name:   src
>Committed By:  rillig
>Date:          Sun Dec 13 21:27:46 UTC 2020
>
>Modified Files:
>       src/usr.bin/make: for.c meta.c parse.c var.c
>
>Log Message:
>make(1): replace %zu with %u in printf calls
>
>This is needed to compile bmake with GCC 2.8.1 on SunOS 5.9.
>
>To support ancient systems like this, the whole code of usr.bin/make is
>supposed to use only ISO C90 features, except for filemon, which is not
>used on these systems.

Please revert! This breaks everyone else. %zu is the format to
print size_t.  Last I checked SunOS 5.9 has been dead since 2014
and whoever is still using it might as well install a new compiler,
or tie the box at the end of a long chain so it can find its true
calling. If you really want to support it instead define MAKE_FMT_SIZE_T
and conditionalize it properly for "ancient OS", windows, cygwin,
mingwin, and regular folks (this does not even handle "ancient os"):

    https://github.com/file/file/blob/master/src/file.h#L55

I am still against it though...

christos

Reply via email to