Commit d86b1e5
Fix attribute type resolution with multiple inheritance (python#18415)
Fixes python#18268. Fixes python#9319. Fixes python#14279. Fixes python#9031.
Supersedes python#18270 as requested by @ilevkivskyi.
This PR introduces two changes:
* Add missing `map_type_from_supertype` when checking generic attributes
* Only compare the first base defining a name to all following in MRO -
others are not necessarily pairwise compatible.
---------
Co-authored-by: Shantanu <[email protected]>1 parent 106f714 commit d86b1e5
File tree
3 files changed
+75
-11
lines changed- mypy
- test-data/unit
3 files changed
+75
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2733 | 2733 | | |
2734 | 2734 | | |
2735 | 2735 | | |
2736 | | - | |
| 2736 | + | |
| 2737 | + | |
| 2738 | + | |
2737 | 2739 | | |
2738 | 2740 | | |
2739 | | - | |
2740 | | - | |
2741 | | - | |
2742 | | - | |
2743 | | - | |
2744 | | - | |
2745 | | - | |
2746 | | - | |
2747 | | - | |
2748 | | - | |
| 2741 | + | |
| 2742 | + | |
| 2743 | + | |
| 2744 | + | |
| 2745 | + | |
| 2746 | + | |
| 2747 | + | |
| 2748 | + | |
| 2749 | + | |
2749 | 2750 | | |
2750 | 2751 | | |
2751 | 2752 | | |
| |||
2826 | 2827 | | |
2827 | 2828 | | |
2828 | 2829 | | |
| 2830 | + | |
2829 | 2831 | | |
2830 | 2832 | | |
| 2833 | + | |
2831 | 2834 | | |
2832 | 2835 | | |
2833 | 2836 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1065 | 1065 | | |
1066 | 1066 | | |
1067 | 1067 | | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
| 1077 | + | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
| 1093 | + | |
| 1094 | + | |
| 1095 | + | |
| 1096 | + | |
| 1097 | + | |
| 1098 | + | |
| 1099 | + | |
| 1100 | + | |
| 1101 | + | |
| 1102 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
706 | 706 | | |
707 | 707 | | |
708 | 708 | | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
0 commit comments