On 6/6/2016 10:31 AM, Eric V. Smith wrote:
Right. So we could use C99 features in 3.6 .h files, as long as the same extension module, unmodified, could be compiled with 3.5 .h files with a 3.5 approved (C89) compiler, and also with a 3.6 approved (C99) compiler.
The headers would be different, but so would the compilers.
On Windows, the compiler would be the 2015 MS compiler in both cases. Steve Dower would know if compiler flags need to be changed to enable or stop disabling C99 features.
It's the extension module source code that must be the same in the two scenarios.
We could run the experiment ourselves by changing one or more .h files to include one or more of the C99 features we want while leaving our .c files alone in the sense of remaining C89 compatible. Compile and run the test suite. If successful, add more. We would soon find out whether any of the features we want in header files require use of C99 features in .c files that include them. With a .h standard established, we could then revise *our* .c files without imposing the same on extensions. -- Terry Jan Reedy