Bugs item #908441, was opened at 2004-03-02 18:41 Message generated for change (Comment added) made by birkenfeld You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=908441&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: Python Interpreter Core Group: Python 2.3 Status: Open Resolution: None Priority: 5 Submitted By: Matthias Drochner (drochner) Assigned to: Nobody/Anonymous (nobody) Summary: default index for __getslice__ is not sys.maxint Initial Comment: (This applies also to __setslice__ and possibly more.) (This was already present in Python-2.2.) If the upper slice index is omitted, a default is passed to the __getslice__ method. Documentation claims this is sys.maxint. This is wrong if INT_MAX and LONG_MAX differ; what is passed is INT_MAX while sys.maxint is LONG_MAX. I'm not sure whether to call it a code bug or a documentation bug; at least there is code out there which compares to sys.maxint. The whole code path from ceval.c:_PyEval_SliceIndex() to operator.c:op_getslice() to abstract.c:PySequence_GetSlice() to classobject.c:instance_slice() has just room for an "int", so a code fix is pretty invasive... A small test program to check this: ========== import sys class sl(object): def __getslice__(self, a, b): return (a, b) print "sys.maxint = %ld" % sys.maxint bounds = sl()[:] print "default bounds = [%ld, %ld]" % bounds ========== gives on NetBSD/amd64: sys.maxint = 9223372036854775807 default bounds = [0, 2147483647] ---------------------------------------------------------------------- >Comment By: Georg Brandl (birkenfeld) Date: 2006-01-10 23:20 Message: Logged In: YES user_id=1188172 Do we want to support long slice indices? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=908441&group_id=5470 _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com