From b6efe6e06fa70e8933440da26474a804fb3edb6e Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Wed, 7 Sep 2016 10:55:40 -0700 Subject: [PATCH] allow some c99 --- pep-0007.txt | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/pep-0007.txt b/pep-0007.txt index aa1ea0bb0..dbc4cf805 100644 --- a/pep-0007.txt +++ b/pep-0007.txt @@ -31,9 +31,22 @@ particular rule: C dialect ========= -* Use ANSI/ISO standard C (the 1989 version of the standard). This - means (amongst many other things) that all declarations must be at - the top of a block (not necessarily at the top of function). +* Python versions before 3.6 use ANSI/ISO standard C (the 1989 version + of the standard). This means (amongst many other things) that all + declarations must be at the top of a block (not necessarily at the + top of function). + +* Python versions greater than or equal to 3.6 use C89 with several + select C99 features: + + - Standard integer types in ```` and ```` + - ``static inline`` functions + - designated initializers (especially nice for type declarations) + - intermingled declarations + - booleans + + Future C99 features may be added to this list in the future + depending on compiler support (mostly significantly MSVC). * Don't use GCC extensions (e.g. don't write multi-line strings without trailing backslashes).