diff options
author | Damien George <damien.p.george@gmail.com> | 2014-04-09 15:26:46 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-04-09 15:26:46 +0100 |
commit | 2bf7c092225645d8c5b15e536afdce39e3593e42 (patch) | |
tree | e257514a3008411367ea5e62eaea4b101ccac257 /tests/basics/del-local.py | |
parent | 11d8cd54c992eee55f27d3779738626bdc095c03 (diff) | |
download | micropython-2bf7c092225645d8c5b15e536afdce39e3593e42.tar.gz micropython-2bf7c092225645d8c5b15e536afdce39e3593e42.zip |
py: Properly implement deletion of locals and derefs, and detect errors.
Needed to reinstate 2 delete opcodes, to specifically check that a local
is not deleted twice.
Diffstat (limited to 'tests/basics/del-local.py')
-rw-r--r-- | tests/basics/del-local.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/basics/del-local.py b/tests/basics/del-local.py new file mode 100644 index 0000000000..05aa98b424 --- /dev/null +++ b/tests/basics/del-local.py @@ -0,0 +1,25 @@ +# delete local then try to reference it +def f(): + x = 1 + y = 2 + print(x, y) + del x + print(y) + try: + print(x) + except NameError: + print("NameError"); +f() + +# delete local then try to delete it again +def g(): + x = 3 + y = 4 + print(x, y) + del x + print(y) + try: + del x + except NameError: + print("NameError"); +g() |