File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -10,6 +10,21 @@ Type/class unification and new-style classes
1010 with finalizers. (The "get attribute" and "set attribute" methods
1111 are still called __get__ and __set__, respectively.)
1212
13+ - Some subtle issues with the super built-in were fixed:
14+
15+ (a) When super itself is subclassed, its __get__ method would still
16+ return an instance of the base class (i.e., of super).
17+
18+ (b) super(C, C()).__class__ would return C rather than super. This
19+ is confusing. To fix this, I decided to change the semantics of
20+ super so that it only applies to code attributes, not to data
21+ attributes. After all, overriding data attributes is not
22+ supported anyway.
23+
24+ (c) The __get__ method didn't check whether the argument was an
25+ instance of the type used in creation of the super instance.
26+
27+
1328Core and builtins
1429
1530Extension modules
You can’t perform that action at this time.
0 commit comments