On Mon, Jun 6, 2016, at 07:23, Sturla Molden wrote:
Ok, but if third-party developers shall be free to use a C89 compiler for their own code, we cannot have C99 in the include files. Otherwise the include files will taint the C89 purity of their source code.
Personally I don't think we need to worry about compilers that don't implement C99 features like inline functions in C. How long have the Linux kernel used inline functions instead of macros? 20 years or more?
Using inline functions instead of macros doesn't have to mean anything but a performance hit on platforms that don't support them, since the inline keyword, or some other identifier, could be defined to expand to an empty token sequence on platforms that do not support it. It's much lower impact on the source code than some other C99 features.