[Python-Dev] Compile() and Windows/Mac newlines (original) (raw)
Benjamin Peterson benjamin at python.org
Wed Dec 29 20:53:16 CET 2010
- Previous message: [Python-Dev] Compile() and Windows/Mac newlines
- Next message: [Python-Dev] Compile() and Windows/Mac newlines
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
2010/12/29 Terry Reedy <tjreedy at udel.edu>:
In python-list thread "Does Python 3.1 accept \r\n in compile()?" jmfauth notes that compile('print(999)\r\n', '', 'exec') works in 2.7 but not 3.1 (and 3.2 not checked) because 3.1 sees '\r' as SyntaxError.
I started to respond that this is part of Py3 cleanup with newlines converted on input and back-compatibility with ancient Python not needed. Then I saw in 3.2 manual "Changed in version 3.2: Allowed use of Windows and Mac newlines. Also input in 'exec' mode does not have to end in a newline anymore. Added the optimize parameter." I verified second statement ("print(999)" works) (and remember commit for third), but original above gives same error. Should "Allowed use of Windows and Mac newlines." be deleted? What else could it mean other than use of '\r' or '\r\n'?
$ ./python Python 3.2b2 (py3k:87559, Dec 28 2010, 17:39:51) [GCC 4.4.4] on linux2 Type "help", "copyright", "credits" or "license" for more information.
compile("print(999)\r\n", "blah", "exec") <code object at 0xb353e8, file "blah", line 1>
-- Regards, Benjamin
- Previous message: [Python-Dev] Compile() and Windows/Mac newlines
- Next message: [Python-Dev] Compile() and Windows/Mac newlines
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]