mirror of
https://github.com/python/cpython.git
synced 2025-08-31 14:07:50 +00:00
bpo-45000: Raise SyntaxError when try to delete __debug__ (GH-27947) (GH-27957)
(cherry picked from commit 551da597a0
)
This commit is contained in:
parent
6ea6cf22e9
commit
32c1caa87f
3 changed files with 10 additions and 0 deletions
|
@ -59,6 +59,10 @@ SyntaxError: cannot assign to __debug__
|
|||
Traceback (most recent call last):
|
||||
SyntaxError: cannot assign to __debug__
|
||||
|
||||
>>> del __debug__
|
||||
Traceback (most recent call last):
|
||||
SyntaxError: cannot delete __debug__
|
||||
|
||||
>>> f() = 1
|
||||
Traceback (most recent call last):
|
||||
SyntaxError: cannot assign to function call here. Maybe you meant '==' instead of '='?
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
A :exc:`SyntaxError` is now raised when trying to delete :const:`__debug__`.
|
||||
Patch by Dong-hee Na.
|
|
@ -2264,6 +2264,10 @@ forbidden_name(struct compiler *c, identifier name, expr_context_ty ctx)
|
|||
compiler_error(c, "cannot assign to __debug__");
|
||||
return 1;
|
||||
}
|
||||
if (ctx == Del && _PyUnicode_EqualToASCIIString(name, "__debug__")) {
|
||||
compiler_error(c, "cannot delete __debug__");
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue