<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Fri, 5 Aug 2016 at 15:17 Guido van Rossum <<a href="mailto:gvanrossum@gmail.com">gvanrossum@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I want it to list specific versions that are known to be good right<br>
now, so we can point fingers appropriately when a regression happens.<br></blockquote><div><br></div><div>OK, then we could pin it to MSVC 2016, gcc 6.1, and clang 3.8.1 which are the latest releases (unless I'm missing a compiler we all feel like we should officially support).</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
If you have to ask Steve what version he used, ask!<br></blockquote><div><br></div><div>I know of what compiler has been used by Steve, I was just trying to give a very loose example of how it could be phrased if we wanted a shifting window of support based on what was available at the time of release for Python instead of the "what was available Aug 2016" static specification that you said you wanted.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
On Fri, Aug 5, 2016 at 3:15 PM, Brett Cannon <<a href="mailto:brett@python.org" target="_blank">brett@python.org</a>> wrote:<br>
><br>
><br>
> On Fri, 5 Aug 2016 at 15:07 Guido van Rossum <<a href="mailto:gvanrossum@gmail.com" target="_blank">gvanrossum@gmail.com</a>> wrote:<br>
>><br>
>> That sounds fine to me, but we need to list specific compiler versions.<br>
><br>
><br>
> Would you want this to be static (e.g. MSVC 2016 until we choose to update<br>
> to support C11), or would you want it to vary based on what's available when<br>
> the current/last Python is/was released (e.g. whatever version of MSVC Steve<br>
> uses to build the binaries for 3.5 or 3.6 in our current case)?<br>
><br>
>><br>
>><br>
>> On Fri, Aug 5, 2016 at 2:04 PM, Brett Cannon <<a href="mailto:brett@python.org" target="_blank">brett@python.org</a>> wrote:<br>
>> > Where did we finally land on this discussion? Do we want to update PEP 7<br>
>> > to<br>
>> > say that starting in 3.6 we may use C99 features common to all supported<br>
>> > compilers and list what those compilers are (i.e. gcc, clang, and MSVC)?<br>
>> ><br>
>> > On Wed, 8 Jun 2016 at 01:28 Victor Stinner <<a href="mailto:victor.stinner@gmail.com" target="_blank">victor.stinner@gmail.com</a>><br>
>> > wrote:<br>
>> >><br>
>> >> I guess that as usual, we should use the "common denominator" of all<br>
>> >> compilers supported by CPython. For example, if MSVC doesn't support a<br>
>> >> feature, we should not use it in CPython.<br>
>> >><br>
>> >> In practice, it's easy to check if a feature is supported or not: we<br>
>> >> have buildbots building Python at each commit. It was very common to<br>
>> >> get a compilation error only on MSVC when a variable was defined in<br>
>> >> the middle of a function. We are now using<br>
>> >> -Werror=declaration-after-statement with GCC because of MSVC!<br>
>> >><br>
>> >> Maybe GCC has an option to ask for the subset of the C99 standard<br>
>> >> compatible with MSVC? Something like "-std=c99 -pedantic"?<br>
>> >><br>
>> >> Note: I tried -pedantic, GCC emits a lot of warnings on code which<br>
>> >> looks valid and/or is protected with #ifdef for features specific to<br>
>> >> GCC like computed goto.<br>
>> >><br>
>> >> Victor<br>
>> >><br>
>> >> 2016-06-07 21:45 GMT+02:00 Guido van Rossum <<a href="mailto:gvanrossum@gmail.com" target="_blank">gvanrossum@gmail.com</a>>:<br>
>> >> > We should definitely keep supporting MSVC.<br>
>> >> ><br>
>> >> > --Guido (mobile)<br>
>> >> ><br>
>> >> > On Jun 7, 2016 12:39 PM, "Sturla Molden" <<a href="mailto:sturla.molden@gmail.com" target="_blank">sturla.molden@gmail.com</a>><br>
>> >> > wrote:<br>
>> >> >><br>
>> >> >> Victor Stinner <<a href="mailto:victor.stinner@gmail.com" target="_blank">victor.stinner@gmail.com</a>> wrote:<br>
>> >> >><br>
>> >> >> > Is it worth to support a compiler that in 2016 doesn't support the<br>
>> >> >> > C<br>
>> >> >> > standard released in 1999, 17 years ago?<br>
>> >> >><br>
>> >> >> MSVC only supports C99 when its needed for C++11 or some MS<br>
>> >> >> extension<br>
>> >> >> to<br>
>> >> >> C.<br>
>> >> >><br>
>> >> >> Is it worth supporting MSVC? If not, we have Intel C, Clang and<br>
>> >> >> Cygwin<br>
>> >> >> GCC<br>
>> >> >> are the viable options we have on Windows (and perhaps Embarcadero,<br>
>> >> >> but<br>
>> >> >> I<br>
>> >> >> haven't used C++ builder for a very long time). Even MinGW does not<br>
>> >> >> fully<br>
>> >> >> support C99, because it depends on Microsoft's CRT. If we think MSVC<br>
>> >> >> and<br>
>> >> >> MinGW are worth supporting, we cannot just use C99 indiscriminantly.<br>
>> >> >><br>
>> >> >> _______________________________________________<br>
>> >> >> Python-Dev mailing list<br>
>> >> >> <a href="mailto:Python-Dev@python.org" target="_blank">Python-Dev@python.org</a><br>
>> >> >> <a href="https://mail.python.org/mailman/listinfo/python-dev" rel="noreferrer" target="_blank">https://mail.python.org/mailman/listinfo/python-dev</a><br>
>> >> >> Unsubscribe:<br>
>> >> >><br>
>> >> >> <a href="https://mail.python.org/mailman/options/python-dev/guido%40python.org" rel="noreferrer" target="_blank">https://mail.python.org/mailman/options/python-dev/guido%40python.org</a><br>
>> >> ><br>
>> >> ><br>
>> >> > _______________________________________________<br>
>> >> > Python-Dev mailing list<br>
>> >> > <a href="mailto:Python-Dev@python.org" target="_blank">Python-Dev@python.org</a><br>
>> >> > <a href="https://mail.python.org/mailman/listinfo/python-dev" rel="noreferrer" target="_blank">https://mail.python.org/mailman/listinfo/python-dev</a><br>
>> >> > Unsubscribe:<br>
>> >> ><br>
>> >> ><br>
>> >> > <a href="https://mail.python.org/mailman/options/python-dev/victor.stinner%40gmail.com" rel="noreferrer" target="_blank">https://mail.python.org/mailman/options/python-dev/victor.stinner%40gmail.com</a><br>
>> >> ><br>
>> >> _______________________________________________<br>
>> >> Python-Dev mailing list<br>
>> >> <a href="mailto:Python-Dev@python.org" target="_blank">Python-Dev@python.org</a><br>
>> >> <a href="https://mail.python.org/mailman/listinfo/python-dev" rel="noreferrer" target="_blank">https://mail.python.org/mailman/listinfo/python-dev</a><br>
>> >> Unsubscribe:<br>
>> >> <a href="https://mail.python.org/mailman/options/python-dev/brett%40python.org" rel="noreferrer" target="_blank">https://mail.python.org/mailman/options/python-dev/brett%40python.org</a><br>
>><br>
>><br>
>><br>
>> --<br>
>> --Guido van Rossum (<a href="http://python.org/~guido" rel="noreferrer" target="_blank">python.org/~guido</a>)<br>
<br>
<br>
<br>
--<br>
--Guido van Rossum (<a href="http://python.org/~guido" rel="noreferrer" target="_blank">python.org/~guido</a>)<br>
</blockquote></div></div>