On 7/9/21 1:27 PM, Alejandro Colomar (man-pages) wrote: > Annex K has been an attempt of Microsoft to provide safer functions, but > while there are some functions there that have good intentions, most of > them are just badly designed. That annex K is DOA, and will probably be > marked as deprecated in C22 (currently C2x). > > I think that a standard should not try to design new functions, and > instead just annotate common usage, as they did in the first ones. > Problems like the ones Annex K suffers could have been detected early if > they had been implemented as an extension to some compiler(s) decade(s) > before being standardized. Therefore, if the implementation passes the > test of time, you standardize it, else not, IMO. Otherwise, we have a > standard that is declared deprecated in the next version of the > standard, similar to what is happening with the C++ standards (which, > guess what, BTW I recently read that they are undeprecating a lot of C > stuff they deprecated in the first standards). But let's analyze Annex K (C11): It has been designed by Microsoft. MS's compiler (MS Visual Studio) doesn't even fully support C99 yet (and by that trend, I doubt it never will). At most it supports C89. Visual Studio has a long history of not supporting C except for those parts required to implement their C++ compiler. Would you buy a car designed by a bike manufacturer? -- Alejandro Colomar Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/ http://www.alejandro-colomar.es/