Skip to content

Commit afa0336

Browse files
committed
motivate the semantic analyzer
1 parent 6d92318 commit afa0336

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

mypy/semanal.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1435,15 +1435,17 @@ def analyze_property_with_multi_part_definition(self, defn: OverloadedFuncDef) -
14351435
for i, item in enumerate(items[1:]):
14361436
if isinstance(item, Decorator):
14371437
if len(item.decorators) >= 1:
1438-
node = item.decorators[0]
1439-
if isinstance(node, MemberExpr):
1440-
if node.name == "setter":
1438+
first_node = item.decorators[0]
1439+
if isinstance(first_node, MemberExpr):
1440+
if first_node.name == "setter":
14411441
# The first item represents the entire property.
14421442
first_item.var.is_settable_property = True
14431443
# Get abstractness from the original definition.
14441444
item.func.abstract_status = first_item.func.abstract_status
1445-
if node.name == "deleter":
1445+
if first_node.name == "deleter":
14461446
item.func.abstract_status = first_item.func.abstract_status
1447+
for other_node in item.decorators[1:]:
1448+
other_node.accept(self)
14471449
else:
14481450
self.fail(
14491451
f"Only supported top decorator is @{first_item.func.name}.setter", item

0 commit comments

Comments
 (0)