[Python-Dev] C99

Guido van Rossum guido at python.org
Mon Jun 6 10:39:55 EDT 2016


On Mon, Jun 6, 2016 at 7:31 AM, Eric V. Smith <eric at trueblade.com> wrote:
> On 06/06/2016 10:11 AM, Guido van Rossum wrote:
>> On Mon, Jun 6, 2016 at 4:23 AM, Sturla Molden <sturla.molden at gmail.com> wrote:
>>> Guido van Rossum <guido at python.org> wrote:
>>>> I'm not sure I meant that. But if I have a 3rd party extension that
>>>> compiles with 3.5 headers using C89, then it should still compile with
>>>> 3.6 headers using C99. Also if I compile it for 3.5 and it only uses
>>>> the ABI it should still be linkable with 3.6.
>>> 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.
>> Well, they should use the right compiler for the Python version they
>> are targeting. I'm just saying that they can't afford C99 features in
>> their own code. Not even to call C/Python APIs. I think it would be
>> okay if e.g. Py_INCREF was an inline function in Python 3.6, as long
>> as the way you use it remains the same.
> 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. It's the
> extension module source code that must be the same in the two scenarios.
> We're not saying that an extension module must compile with a C89
> compiler under 3.6.
> Eric.
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> https://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: https://mail.python.org/mailman/options/python-dev/guido%40python.org

--Guido van Rossum (python.org/~guido)

More information about the Python-Dev mailing list