Visit deferred assignments after deferred type annotations (#2607)

This commit is contained in:
Charlie Marsh 2023-02-06 14:40:41 -05:00 committed by GitHub
parent 79776c12e2
commit f8b8b05b80
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 3 deletions

View File

@ -1,6 +1,15 @@
from __future__ import annotations
# test case for https://github.com/charliermarsh/ruff/issues/1552
def _():
# Test case for https://github.com/charliermarsh/ruff/issues/1552
def f():
x = 0
list()[x:]
# Test case for https://github.com/charliermarsh/ruff/issues/2603
def f():
KeyTupleT = tuple[str, ...]
keys_checked: set[KeyTupleT] = set()
return keys_checked

View File

@ -5302,10 +5302,10 @@ pub fn check_ast(
// Check any deferred statements.
checker.check_deferred_functions();
checker.check_deferred_lambdas();
checker.check_deferred_assignments();
checker.check_deferred_type_definitions();
let mut allocator = vec![];
checker.check_deferred_string_type_definitions(&mut allocator);
checker.check_deferred_assignments();
checker.check_deferred_for_loops();
// Check docstrings.