| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
* Add new conversions functions for PyLong: - PyLong_FromIntMax() - PyLong_FromUIntMax() - PyLong_AsIntMax() - PyLong_AsIntMaxAndOverflow() - PyLong_AsUIntMax() * getargs: add 'm' format * New _testcapi constants: INTMAX_MAX, INTMAX_MIN, UINTMAX_MAX, SIZEOF_INTMAX_T * Add _testcapi.getargs_m() and _testcapi.test_long_intmax_api() * PyLong_FromVoidPtr() uses PyLong_FromUIntMax() * Use intmax_t in various modules array, struct, ctypes and memoryview are not modified yet to support intmax_t.
| Convert a Python integer to a C :c:type:`Py_ssize_t`. | ||
|
|
||
| ``m`` (:class:`int`) [intmax_t] | ||
| Convert a Python integer to a C :c:type:`intmax_t`. |
There was a problem hiding this comment.
What about uintmax_t?
Sorry, something went wrong.
| would not work correctly on platforms with 32-bit longs. */ | ||
| static int | ||
| module_add_int_constant(PyObject *m, const char *name, long long value) | ||
| module_add_int_constant(PyObject *m, const char *name, intmax_t value) |
There was a problem hiding this comment.
I'm sure 64 bit is enough for all LZMA constants.
Sorry, something went wrong.
| if (self->file_handle != INVALID_HANDLE_VALUE) { | ||
| DWORD low,high; | ||
| long long size; | ||
| intmax_t size; |
There was a problem hiding this comment.
size is a 64-bit number. long long is enough.
Sorry, something went wrong.
| if (Tcl_GetWideIntFromObj(Tkapp_Interp(tkapp), value, &wideValue) == TCL_OK) { | ||
| if (sizeof(wideValue) <= SIZEOF_LONG_LONG) | ||
| return PyLong_FromLongLong(wideValue); | ||
| if (sizeof(wideValue) <= SIZEOF_INTMAX_T) { |
There was a problem hiding this comment.
I think this condition is always true. I think that it is always true even for long long. I added this check only because the support of long long was optional.
Sorry, something went wrong.
| @@ -11414,11 +11387,7 @@ os_DirEntry_inode_impl(DirEntry *self) | |||
| Py_BUILD_ASSERT(sizeof(unsigned long long) >= sizeof(self->win32_file_index)); | |||
| return PyLong_FromUnsignedLongLong(self->win32_file_index); | |||
There was a problem hiding this comment.
Shouldn't be used PyLong_FromUIntMax?
Sorry, something went wrong.
| #else | ||
| return PyLong_FromLong((long)self->d_ino); | ||
| #endif | ||
| return PyLong_FromUIntMax((long)self->d_ino); |
There was a problem hiding this comment.
(long)?
Can d_ino be negative?
Sorry, something went wrong.
|
Rejected for the reasons explained in the bpo: http://bugs.python.org/issue17870 |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Add new conversions functions for PyLong:
getargs: add 'm' format
New _testcapi constants: INTMAX_MAX, INTMAX_MIN, UINTMAX_MAX, SIZEOF_INTMAX_T
Add _testcapi.getargs_m() and _testcapi.test_long_intmax_api()
PyLong_FromVoidPtr() uses PyLong_FromUIntMax()
Use intmax_t in various modules
array, struct, ctypes and memoryview are not modified yet to support
intmax_t.