summaryrefslogtreecommitdiffstats
path: root/Lib/test/badsyntax_future3.py
diff options
context:
space:
mode:
authorJeremy Hylton <jeremy@alum.mit.edu>2001-04-18 01:19:28 (GMT)
committerJeremy Hylton <jeremy@alum.mit.edu>2001-04-18 01:19:28 (GMT)
commit3090694068670371cdbd5b1a3d3c5dbecc83835a (patch)
treedda4e675551edb2b0c07bd3e7f7d9c48d9ef7433 /Lib/test/badsyntax_future3.py
parentbc41957d2b58dfaae24e8a996e3e7c4fe3b475dd (diff)
downloadcpython-3090694068670371cdbd5b1a3d3c5dbecc83835a.zip
cpython-3090694068670371cdbd5b1a3d3c5dbecc83835a.tar.gz
cpython-3090694068670371cdbd5b1a3d3c5dbecc83835a.tar.bz2
Fix compileall.py so that it fails on SyntaxErrors
The changes cause compilation failures in any file in the Python installation lib directory to cause the install to fail. It looks like compileall.py intended to behave this way, but a change to py_compile.py and a separate bug defeated it. Fixes SF bug #412436 This change affects the test suite, which contains several files that contain intentional errors. The solution is to extend compileall.py with the ability to skip compilation of selected files. In the test suite, rename nocaret.py and test_future[3..7].py to start with badsyntax_nocaret.py and badsyntax_future[3..7].py. Update the makefile to skip compilation of these files. Update the tests to use the name names for imports. NB compileall.py is changed so that compile_dir() returns success only if all recursive calls to compile_dir() also check success.
Diffstat (limited to 'Lib/test/badsyntax_future3.py')
-rw-r--r--Lib/test/badsyntax_future3.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/Lib/test/badsyntax_future3.py b/Lib/test/badsyntax_future3.py
new file mode 100644
index 0000000..166628c
--- /dev/null
+++ b/Lib/test/badsyntax_future3.py
@@ -0,0 +1,10 @@
+"""This is a test"""
+from __future__ import nested_scopes
+from __future__ import rested_snopes
+
+def f(x):
+ def g(y):
+ return x + y
+ return g
+
+print f(2)(4)