diff options
author | Guido van Rossum <guido@python.org> | 2003-02-13 22:07:59 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2003-02-13 22:07:59 (GMT) |
commit | 4b499dd3fb49181efbd99f87e45ff923146cba8a (patch) | |
tree | 2e70f5af9af45cf05d7cfa7eb8306b6dde1d001c /Include | |
parent | 5aa3da649554f155dd0c82bfdcc92b1577c6935d (diff) | |
download | cpython-4b499dd3fb49181efbd99f87e45ff923146cba8a.zip cpython-4b499dd3fb49181efbd99f87e45ff923146cba8a.tar.gz cpython-4b499dd3fb49181efbd99f87e45ff923146cba8a.tar.bz2 |
- Finally fixed the bug in compile() and exec where a string ending
with an indented code block but no newline would raise SyntaxError.
This would have been a four-line change in parsetok.c... Except
codeop.py depends on this behavior, so a compilation flag had to be
invented that causes the tokenizer to revert to the old behavior;
this required extra changes to 2 .h files, 2 .c files, and 2 .py
files. (Fixes SF bug #501622.)
Diffstat (limited to 'Include')
-rw-r--r-- | Include/parsetok.h | 2 | ||||
-rw-r--r-- | Include/pythonrun.h | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/Include/parsetok.h b/Include/parsetok.h index 58ef76a..99a79b7 100644 --- a/Include/parsetok.h +++ b/Include/parsetok.h @@ -21,6 +21,8 @@ typedef struct { #define PyPARSE_YIELD_IS_KEYWORD 0x0001 #endif +#define PyPARSE_DONT_IMPLY_DEDENT 0x0002 + PyAPI_FUNC(node *) PyParser_ParseString(const char *, grammar *, int, perrdetail *); PyAPI_FUNC(node *) PyParser_ParseFile (FILE *, const char *, grammar *, int, diff --git a/Include/pythonrun.h b/Include/pythonrun.h index 87d7874..746ba7e 100644 --- a/Include/pythonrun.h +++ b/Include/pythonrun.h @@ -10,6 +10,7 @@ extern "C" { #define PyCF_MASK (CO_FUTURE_DIVISION) #define PyCF_MASK_OBSOLETE (CO_GENERATOR_ALLOWED | CO_NESTED) #define PyCF_SOURCE_IS_UTF8 0x0100 +#define PyCF_DONT_IMPLY_DEDENT 0x0200 typedef struct { int cf_flags; /* bitmask of CO_xxx flags relevant to future */ |