diff options
author | Batuhan Taşkaya <batuhanosmantaskaya@gmail.com> | 2020-04-22 16:09:03 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-22 16:09:03 (GMT) |
commit | 4454057269b995341b04d13f0bf97f96080f27d0 (patch) | |
tree | fda84a982bce4372ad398afeac039f03b4d29d2c /Include/code.h | |
parent | 9b498939009f49b8c772c89e8fc80efbfd8afcb5 (diff) | |
download | cpython-4454057269b995341b04d13f0bf97f96080f27d0.zip cpython-4454057269b995341b04d13f0bf97f96080f27d0.tar.gz cpython-4454057269b995341b04d13f0bf97f96080f27d0.tar.bz2 |
bpo-39562: Prevent collision of future and compiler flags (GH-19230)
The constant values of future flags in the __future__ module
is updated in order to prevent collision with compiler flags.
Previously PyCF_ALLOW_TOP_LEVEL_AWAIT was clashing
with CO_FUTURE_DIVISION.
Diffstat (limited to 'Include/code.h')
-rw-r--r-- | Include/code.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/Include/code.h b/Include/code.h index 107eba4..b268a6a 100644 --- a/Include/code.h +++ b/Include/code.h @@ -88,19 +88,19 @@ typedef struct { #define CO_ITERABLE_COROUTINE 0x0100 #define CO_ASYNC_GENERATOR 0x0200 -/* These are no longer used. */ -#if 0 -#define CO_GENERATOR_ALLOWED 0x1000 -#endif -#define CO_FUTURE_DIVISION 0x2000 -#define CO_FUTURE_ABSOLUTE_IMPORT 0x4000 /* do absolute imports by default */ -#define CO_FUTURE_WITH_STATEMENT 0x8000 -#define CO_FUTURE_PRINT_FUNCTION 0x10000 -#define CO_FUTURE_UNICODE_LITERALS 0x20000 - -#define CO_FUTURE_BARRY_AS_BDFL 0x40000 -#define CO_FUTURE_GENERATOR_STOP 0x80000 -#define CO_FUTURE_ANNOTATIONS 0x100000 +/* bpo-39562: These constant values are changed in Python 3.9 + to prevent collision with compiler flags. CO_FUTURE_ and PyCF_ + constants must be kept unique. PyCF_ constants can use bits from + 0x0100 to 0x10000. CO_FUTURE_ constants use bits starting at 0x20000. */ +#define CO_FUTURE_DIVISION 0x20000 +#define CO_FUTURE_ABSOLUTE_IMPORT 0x40000 /* do absolute imports by default */ +#define CO_FUTURE_WITH_STATEMENT 0x80000 +#define CO_FUTURE_PRINT_FUNCTION 0x100000 +#define CO_FUTURE_UNICODE_LITERALS 0x200000 + +#define CO_FUTURE_BARRY_AS_BDFL 0x400000 +#define CO_FUTURE_GENERATOR_STOP 0x800000 +#define CO_FUTURE_ANNOTATIONS 0x1000000 /* This value is found in the co_cell2arg array when the associated cell variable does not correspond to an argument. */ |