Skip to content

Commit 3c5d21e

Browse files
committed
handle functions
1 parent 0b8ffe3 commit 3c5d21e

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

mypy/partially_defined.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ def visit_match_stmt(self, o: MatchStmt) -> None:
318318
self.tracker.end_branch_statement()
319319

320320
def visit_func_def(self, o: FuncDef) -> None:
321-
self.tracker.record_definition(o.name)
321+
self.process_definition(o.name)
322322
self.tracker.enter_scope()
323323
super().visit_func_def(o)
324324
self.tracker.exit_scope()

test-data/unit/check-partially-defined.test

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,11 @@ def f(x: A):
148148
y = A() # E: Name "A" is used before definition
149149

150150
class A: pass
151+
152+
[case testUseBeforeDefFunc]
153+
# flags: --enable-error-code partially-defined --enable-error-code use-before-def
154+
foo() # E: Name "foo" is used before definition
155+
def foo(): pass
151156
[case testGenerator]
152157
# flags: --enable-error-code partially-defined
153158
if int():

0 commit comments

Comments
 (0)