SF 548651: Fix the METH_CLASS implementation.
Most of these patches are from Thomas Heller, with long lines folded
by Tim. The change to test_descr.py is from Guido. See the bug report.
Not a bugfix candidate -- METH_CLASS is new in 2.3.
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py
index 76636a9..ed4593e 100644
--- a/Lib/test/test_descr.py
+++ b/Lib/test/test_descr.py
@@ -1464,12 +1464,12 @@
a = (1, 2, 3)
d = {'abc': 123}
x, a1, d1 = spam.spamlist.classmeth(*a, **d)
- veris(x, None)
- vereq((spam.spamlist,) + a, a1)
+ veris(x, spam.spamlist)
+ vereq(a, a1)
vereq(d, d1)
x, a1, d1 = spam.spamlist().classmeth(*a, **d)
- veris(x, None)
- vereq((spam.spamlist,) + a, a1)
+ veris(x, spam.spamlist)
+ vereq(a, a1)
vereq(d, d1)
def staticmethods():