aboutsummaryrefslogtreecommitdiff
path: root/tests/basics/syntaxerror_return.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basics/syntaxerror_return.py')
-rw-r--r--tests/basics/syntaxerror_return.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/basics/syntaxerror_return.py b/tests/basics/syntaxerror_return.py
new file mode 100644
index 000000000..a32bfbd33
--- /dev/null
+++ b/tests/basics/syntaxerror_return.py
@@ -0,0 +1,18 @@
+# With MICROPY_CPYTHON_COMPAT, the "return" statement can only appear in a
+# function.
+# Otherwise (in minimal builds), it ends execution of a module/class.
+
+try:
+ exec
+except NameError:
+ print("SKIP")
+ raise SystemExit
+
+try:
+ exec('return; print("this should not be executed.")')
+ # if we get here then MICROPY_CPYTHON_COMPAT is disabled and test
+ # should be skipped.
+ print("SKIP")
+ raise SystemExit
+except SyntaxError:
+ print('SyntaxError')