Message219843
I verified that <type 'instancemethod'> is used in 2.7 for both unbound and bound methods of both old- and new-style classes. In 3.0, old-style classes and unbound methods were removed. 2.x types seem not to have __bool__, so I suspect that the condition code special cases numbers and then checks for len() or == None. I am guessing that instancemethod is specially flagged. But grepping 'furture versions' in 2.7/*.c and *.h got not hits, so I cannot confirm anything. I have no idea where the if/elif/while check are coded.
The important question to me is whether the fix works for you also. |
|
Date |
User |
Action |
Args |
2014-06-05 20:20:49 | terry.reedy | set | recipients:
+ terry.reedy, rhettinger, r.david.murray, python-dev |
2014-06-05 20:20:49 | terry.reedy | set | messageid: <1401999649.67.0.480819719931.issue21654@psf.upfronthosting.co.za> |
2014-06-05 20:20:49 | terry.reedy | link | issue21654 messages |
2014-06-05 20:20:49 | terry.reedy | create | |
|