@@ -147,34 +147,6 @@ maybe_small_long(PyLongObject *v)
147147        return  (PyObject  * )v ; \
148148    } while (0 )
149149
150- #define  PYLONG_FROM_UINT (INT_TYPE , ival ) \
151-     do { \
152-         if (IS_SMALL_UINT(ival)) { \
153-             return get_small_int((sdigit)(ival)); \
154-         } \
155-         if ((ival) <= PyLong_MASK) { \
156-             return _PyLong_FromMedium((sdigit)(ival)); \
157-         } \
158-         /* Count the number of Python digits. */  \
159-         Py_ssize_t  ndigits  =  0 ; \
160-         INT_TYPE  t  =  (ival ); \
161-         while  (t ) { \
162-             ++ ndigits ; \
163-             t  >>= PyLong_SHIFT ; \
164-         } \
165-         PyLongObject  * v  =  _PyLong_New (ndigits ); \
166-         if  (v  ==  NULL ) { \
167-             return  NULL ; \
168-         } \
169-         digit  * p  =  v -> long_value .ob_digit ; \
170-         t  =  (ival ); \
171-         while  (t ) { \
172-             * p ++  =  (digit )(t  &  PyLong_MASK ); \
173-             t  >>= PyLong_SHIFT ; \
174-         } \
175-         return  (PyObject  * )v ; \
176-     } while (0 )
177- 
178150/* Normalize (remove leading zeros from) an int object. 
179151   Doesn't attempt to free the storage--in most cases, due to the nature 
180152   of the algorithms used, this could save at most be one word anyway. */ 
@@ -381,6 +353,34 @@ PyLong_FromLong(long ival)
381353    PYLONG_FROM_SIGNED (long , ival );
382354}
383355
356+ #define  PYLONG_FROM_UINT (INT_TYPE , ival ) \
357+     do { \
358+         if (IS_SMALL_UINT(ival)) { \
359+             return get_small_int((sdigit)(ival)); \
360+         } \
361+         if ((ival) <= PyLong_MASK) { \
362+             return _PyLong_FromMedium((sdigit)(ival)); \
363+         } \
364+         /* Count the number of Python digits. */  \
365+         Py_ssize_t  ndigits  =  0 ; \
366+         INT_TYPE  t  =  (ival ); \
367+         while  (t ) { \
368+             ++ ndigits ; \
369+             t  >>= PyLong_SHIFT ; \
370+         } \
371+         PyLongObject  * v  =  _PyLong_New (ndigits ); \
372+         if  (v  ==  NULL ) { \
373+             return  NULL ; \
374+         } \
375+         digit  * p  =  v -> long_value .ob_digit ; \
376+         t  =  (ival ); \
377+         while  (t ) { \
378+             * p ++  =  (digit )(t  &  PyLong_MASK ); \
379+             t  >>= PyLong_SHIFT ; \
380+         } \
381+         return  (PyObject  * )v ; \
382+     } while (0 )
383+ 
384384/* Create a new int object from a C unsigned long int */ 
385385
386386PyObject  * 
0 commit comments