I guess that as usual, we should use the "common denominator" of all compilers supported by CPython. For example, if MSVC doesn't support a feature, we should not use it in CPython.
In practice, it's easy to check if a feature is supported or not: we have buildbots building Python at each commit. It was very common to get a compilation error only on MSVC when a variable was defined in the middle of a function. We are now using -Werror=declaration-after-statement with GCC because of MSVC! Maybe GCC has an option to ask for the subset of the C99 standard compatible with MSVC? Something like "-std=c99 -pedantic"? Note: I tried -pedantic, GCC emits a lot of warnings on code which looks valid and/or is protected with #ifdef for features specific to GCC like computed goto. Victor 2016-06-07 21:45 GMT+02:00 Guido van Rossum <[email protected]>: > We should definitely keep supporting MSVC. > > --Guido (mobile) > > On Jun 7, 2016 12:39 PM, "Sturla Molden" <[email protected]> wrote: >> >> Victor Stinner <[email protected]> wrote: >> >> > Is it worth to support a compiler that in 2016 doesn't support the C >> > standard released in 1999, 17 years ago? >> >> MSVC only supports C99 when its needed for C++11 or some MS extension to >> C. >> >> Is it worth supporting MSVC? If not, we have Intel C, Clang and Cygwin GCC >> are the viable options we have on Windows (and perhaps Embarcadero, but I >> haven't used C++ builder for a very long time). Even MinGW does not fully >> support C99, because it depends on Microsoft's CRT. If we think MSVC and >> MinGW are worth supporting, we cannot just use C99 indiscriminantly. >> >> _______________________________________________ >> Python-Dev mailing list >> [email protected] >> https://mail.python.org/mailman/listinfo/python-dev >> Unsubscribe: >> https://mail.python.org/mailman/options/python-dev/guido%40python.org > > > _______________________________________________ > Python-Dev mailing list > [email protected] > https://mail.python.org/mailman/listinfo/python-dev > Unsubscribe: > https://mail.python.org/mailman/options/python-dev/victor.stinner%40gmail.com > _______________________________________________ Python-Dev mailing list [email protected] https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
