|
19 | 19 | PartialType, DeletedType, UninhabitedType, TypeType, TypeOfAny, LiteralType, LiteralValue,
|
20 | 20 | is_named_instance, FunctionLike,
|
21 | 21 | StarType, is_optional, remove_optional, is_generic_instance, get_proper_type, ProperType,
|
22 |
| - get_proper_types, flatten_nested_unions, TypeAliasType |
| 22 | + get_proper_types, flatten_nested_unions |
23 | 23 | )
|
24 | 24 | from mypy.nodes import (
|
25 | 25 | NameExpr, RefExpr, Var, FuncDef, OverloadedFuncDef, TypeInfo, CallExpr,
|
@@ -2521,10 +2521,9 @@ def check_op(self, method: str, base_type: Type,
|
2521 | 2521 | left_variants = [base_type]
|
2522 | 2522 | base_type = get_proper_type(base_type)
|
2523 | 2523 | if isinstance(base_type, UnionType):
|
2524 |
| - items = [get_proper_type(item) if isinstance(item, TypeAliasType) |
2525 |
| - else item for item in base_type.relevant_items()] |
2526 | 2524 | left_variants = [item for item in
|
2527 |
| - flatten_nested_unions(items)] |
| 2525 | + flatten_nested_unions(base_type.relevant_items(), |
| 2526 | + handle_type_alias_type=True)] |
2528 | 2527 | right_type = self.accept(arg)
|
2529 | 2528 |
|
2530 | 2529 | # Step 1: We first try leaving the right arguments alone and destructure
|
@@ -2566,11 +2565,9 @@ def check_op(self, method: str, base_type: Type,
|
2566 | 2565 | right_variants = [(right_type, arg)]
|
2567 | 2566 | right_type = get_proper_type(right_type)
|
2568 | 2567 | if isinstance(right_type, UnionType):
|
2569 |
| - items = [get_proper_type(item) if isinstance(item, TypeAliasType) |
2570 |
| - else item for item in right_type.relevant_items()] |
2571 | 2568 | right_variants = [(item, TempNode(item, context=context))
|
2572 |
| - for item in flatten_nested_unions(items)] |
2573 |
| - |
| 2569 | + for item in flatten_nested_unions(right_type.relevant_items(), |
| 2570 | + handle_type_alias_type=True)] |
2574 | 2571 | msg = self.msg.clean_copy()
|
2575 | 2572 | msg.disable_count = 0
|
2576 | 2573 | all_results = []
|
|
0 commit comments