summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJacob Walls <jacobtylerwalls@gmail.com>2023-05-12 14:56:14 -0400
committerGitHub <noreply@github.com>2023-05-12 14:56:14 -0400
commitaed3c080388a8dc1d44c1a14a5ed243233f77c1c (patch)
tree039ef72282d4738de1f8f875d5faf64ecbf1674d /tests
parent0d878ddb13b269a47ac336d6629632eacf143164 (diff)
downloadpylint-git-aed3c080388a8dc1d44c1a14a5ed243233f77c1c.tar.gz
Fix crash when deleting from a dict returned from a call (#8678)
Diffstat (limited to 'tests')
-rw-r--r--tests/functional/m/modified_iterating.py7
-rw-r--r--tests/functional/m/modified_iterating.txt1
2 files changed, 8 insertions, 0 deletions
diff --git a/tests/functional/m/modified_iterating.py b/tests/functional/m/modified_iterating.py
index 2dae6c106..bd2d0dd13 100644
--- a/tests/functional/m/modified_iterating.py
+++ b/tests/functional/m/modified_iterating.py
@@ -119,6 +119,13 @@ class MyClass2:
tmp = self.attribute.copy()
tmp[key] = None
+
+def my_call():
+ """Regression test for https://github.com/pylint-dev/pylint/issues/7461"""
+ for var in {}.copy():
+ del var # [modified-iterating-dict]
+
+
class MyEnum(Enum):
FOO = 1
BAR = 2
diff --git a/tests/functional/m/modified_iterating.txt b/tests/functional/m/modified_iterating.txt
index e5b57ca32..66544da38 100644
--- a/tests/functional/m/modified_iterating.txt
+++ b/tests/functional/m/modified_iterating.txt
@@ -14,3 +14,4 @@ modified-iterating-list:68:12:68:31::Iterated list 'item_list' is being modified
modified-iterating-list:70:16:70:35::Iterated list 'item_list' is being modified inside for loop body, consider iterating through a copy of it instead.:INFERENCE
modified-iterating-dict:96:8:96:28:update_existing_key:Iterated dict 'my_dict' is being modified inside for loop body, iterate through a copy of it instead.:INFERENCE
modified-iterating-list:108:12:108:19:MyClass.my_method:Iterated list 'attribute' is being modified inside for loop body, consider iterating through a copy of it instead.:INFERENCE
+modified-iterating-dict:126:8:126:15:my_call:Iterated dict '' is being modified inside for loop body, iterate through a copy of it instead.:INFERENCE