Patches item #1682205, was opened at 2007-03-16 15:22 Message generated for change (Comment added) made by gbrandl You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=305470&aid=1682205&group_id=5470
Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. >Category: None >Group: Python 2.5 Status: Open Resolution: None Priority: 5 Private: No Submitted By: Piet Delport (pjdelport) Assigned to: Nobody/Anonymous (nobody) >Summary: TypeError swallowing in UNPACK_SEQUENCE opcode Initial Comment: When UNPACK_SEQUENCE unpacks an iterable, it replaces any TypeError raised by the iterator with a new, catch-all TypeError('unpack non-sequence') instance (and empty traceback). This message is less useful than the ones it's (presumably) intended to replace (raised by PyObject_GetIter(), via unpack_iterable()), and obviously wrong when the TypeError originates in unrelated user code. The attached patch simply removes the check, which (as far as i can tell) has no ill effects. Examples (without the patch): >>> a, b, c = 7 TypeError: unpack non-sequence >>> a, b = ( int(x) for x in ['5', ()] ) TypeError: unpack non-sequence With the patch applied, these result in: >>> a, b, c = 7 TypeError: 'int' object is not iterable >>> a, b = ( int(x) for x in ['5', ()] ) TypeError: int() argument must be a string or a number, not 'tuple' ---------------------------------------------------------------------- >Comment By: Georg Brandl (gbrandl) Date: 2007-03-17 15:49 Message: Logged In: YES user_id=849994 Originator: NO It's patch, after all :) ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=305470&aid=1682205&group_id=5470 _______________________________________________ Patches mailing list Patches@python.org http://mail.python.org/mailman/listinfo/patches