mirror of
https://github.com/python/cpython.git
synced 2025-07-14 06:45:17 +00:00
gh-89653: Use int type for Unicode kind (#92704)
Use the same type that PyUnicode_FromKindAndData() kind parameter type (public C API): int.
This commit is contained in:
parent
22a1db378c
commit
f62ad4f2c4
13 changed files with 49 additions and 52 deletions
|
@ -247,7 +247,7 @@ static inline PyObject* unicode_new_empty(void)
|
|||
} while (0)
|
||||
|
||||
static inline void
|
||||
unicode_fill(enum PyUnicode_Kind kind, void *data, Py_UCS4 value,
|
||||
unicode_fill(int kind, void *data, Py_UCS4 value,
|
||||
Py_ssize_t start, Py_ssize_t length)
|
||||
{
|
||||
assert(0 <= start);
|
||||
|
@ -483,7 +483,7 @@ _PyUnicode_CheckConsistency(PyObject *op, int check_content)
|
|||
CHECK(PyUnicode_Check(op));
|
||||
|
||||
PyASCIIObject *ascii = _PyASCIIObject_CAST(op);
|
||||
unsigned int kind = ascii->state.kind;
|
||||
int kind = ascii->state.kind;
|
||||
|
||||
if (ascii->state.ascii == 1 && ascii->state.compact == 1) {
|
||||
CHECK(kind == PyUnicode_1BYTE_KIND);
|
||||
|
@ -612,7 +612,7 @@ backslashreplace(_PyBytesWriter *writer, char *str,
|
|||
{
|
||||
Py_ssize_t size, i;
|
||||
Py_UCS4 ch;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *data;
|
||||
|
||||
kind = PyUnicode_KIND(unicode);
|
||||
|
@ -678,7 +678,7 @@ xmlcharrefreplace(_PyBytesWriter *writer, char *str,
|
|||
{
|
||||
Py_ssize_t size, i;
|
||||
Py_UCS4 ch;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *data;
|
||||
|
||||
kind = PyUnicode_KIND(unicode);
|
||||
|
@ -1128,7 +1128,7 @@ PyUnicode_New(Py_ssize_t size, Py_UCS4 maxchar)
|
|||
PyObject *obj;
|
||||
PyCompactUnicodeObject *unicode;
|
||||
void *data;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
int is_ascii;
|
||||
Py_ssize_t char_size;
|
||||
Py_ssize_t struct_size;
|
||||
|
@ -1268,7 +1268,7 @@ _copy_characters(PyObject *to, Py_ssize_t to_start,
|
|||
PyObject *from, Py_ssize_t from_start,
|
||||
Py_ssize_t how_many, int check_maxchar)
|
||||
{
|
||||
unsigned int from_kind, to_kind;
|
||||
int from_kind, to_kind;
|
||||
const void *from_data;
|
||||
void *to_data;
|
||||
|
||||
|
@ -1663,7 +1663,7 @@ static void
|
|||
unicode_write_cstr(PyObject *unicode, Py_ssize_t index,
|
||||
const char *str, Py_ssize_t len)
|
||||
{
|
||||
enum PyUnicode_Kind kind = PyUnicode_KIND(unicode);
|
||||
int kind = PyUnicode_KIND(unicode);
|
||||
const void *data = PyUnicode_DATA(unicode);
|
||||
const char *end = str + len;
|
||||
|
||||
|
@ -1950,7 +1950,7 @@ _PyUnicode_FromASCII(const char *buffer, Py_ssize_t size)
|
|||
}
|
||||
|
||||
static Py_UCS4
|
||||
kind_maxchar_limit(unsigned int kind)
|
||||
kind_maxchar_limit(int kind)
|
||||
{
|
||||
switch (kind) {
|
||||
case PyUnicode_1BYTE_KIND:
|
||||
|
@ -2064,7 +2064,7 @@ PyUnicode_FromKindAndData(int kind, const void *buffer, Py_ssize_t size)
|
|||
Py_UCS4
|
||||
_PyUnicode_FindMaxChar(PyObject *unicode, Py_ssize_t start, Py_ssize_t end)
|
||||
{
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *startptr, *endptr;
|
||||
|
||||
assert(0 <= start);
|
||||
|
@ -2105,7 +2105,7 @@ unicode_adjust_maxchar(PyObject **p_unicode)
|
|||
PyObject *unicode, *copy;
|
||||
Py_UCS4 max_char;
|
||||
Py_ssize_t len;
|
||||
unsigned int kind;
|
||||
int kind;
|
||||
|
||||
assert(p_unicode != NULL);
|
||||
unicode = *p_unicode;
|
||||
|
@ -2170,7 +2170,7 @@ _PyUnicode_Copy(PyObject *unicode)
|
|||
character. Return NULL on error. */
|
||||
|
||||
static void*
|
||||
unicode_askind(unsigned int skind, void const *data, Py_ssize_t len, unsigned int kind)
|
||||
unicode_askind(int skind, void const *data, Py_ssize_t len, int kind)
|
||||
{
|
||||
void *result;
|
||||
|
||||
|
@ -4984,7 +4984,7 @@ unicode_encode_utf8(PyObject *unicode, _Py_error_handler error_handler,
|
|||
return PyBytes_FromStringAndSize(PyUnicode_UTF8(unicode),
|
||||
PyUnicode_UTF8_LENGTH(unicode));
|
||||
|
||||
enum PyUnicode_Kind kind = PyUnicode_KIND(unicode);
|
||||
int kind = PyUnicode_KIND(unicode);
|
||||
const void *data = PyUnicode_DATA(unicode);
|
||||
Py_ssize_t size = PyUnicode_GET_LENGTH(unicode);
|
||||
|
||||
|
@ -5020,7 +5020,7 @@ unicode_fill_utf8(PyObject *unicode)
|
|||
/* the string cannot be ASCII, or PyUnicode_UTF8() would be set */
|
||||
assert(!PyUnicode_IS_ASCII(unicode));
|
||||
|
||||
enum PyUnicode_Kind kind = PyUnicode_KIND(unicode);
|
||||
int kind = PyUnicode_KIND(unicode);
|
||||
const void *data = PyUnicode_DATA(unicode);
|
||||
Py_ssize_t size = PyUnicode_GET_LENGTH(unicode);
|
||||
|
||||
|
@ -5155,7 +5155,7 @@ PyUnicode_DecodeUTF32Stateful(const char *s,
|
|||
Py_UCS4 maxch = PyUnicode_MAX_CHAR_VALUE(writer.buffer);
|
||||
|
||||
if (e - q >= 4) {
|
||||
enum PyUnicode_Kind kind = writer.kind;
|
||||
int kind = writer.kind;
|
||||
void *data = writer.data;
|
||||
const unsigned char *last = e - 4;
|
||||
Py_ssize_t pos = writer.pos;
|
||||
|
@ -5240,7 +5240,7 @@ _PyUnicode_EncodeUTF32(PyObject *str,
|
|||
const char *errors,
|
||||
int byteorder)
|
||||
{
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *data;
|
||||
Py_ssize_t len;
|
||||
PyObject *v;
|
||||
|
@ -5557,7 +5557,7 @@ _PyUnicode_EncodeUTF16(PyObject *str,
|
|||
const char *errors,
|
||||
int byteorder)
|
||||
{
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *data;
|
||||
Py_ssize_t len;
|
||||
PyObject *v;
|
||||
|
@ -6022,7 +6022,7 @@ PyUnicode_AsUnicodeEscapeString(PyObject *unicode)
|
|||
Py_ssize_t i, len;
|
||||
PyObject *repr;
|
||||
char *p;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *data;
|
||||
Py_ssize_t expandsize;
|
||||
|
||||
|
@ -7365,7 +7365,7 @@ encode_code_page_errors(UINT code_page, PyObject **outbytes,
|
|||
}
|
||||
else {
|
||||
Py_ssize_t i;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *data;
|
||||
|
||||
outsize = PyUnicode_GET_LENGTH(rep);
|
||||
|
@ -7504,7 +7504,7 @@ charmap_decode_string(const char *s,
|
|||
Py_ssize_t startinpos, endinpos;
|
||||
PyObject *errorHandler = NULL, *exc = NULL;
|
||||
Py_ssize_t maplen;
|
||||
enum PyUnicode_Kind mapkind;
|
||||
int mapkind;
|
||||
const void *mapdata;
|
||||
Py_UCS4 x;
|
||||
unsigned char ch;
|
||||
|
@ -7542,7 +7542,7 @@ charmap_decode_string(const char *s,
|
|||
|
||||
while (s < e) {
|
||||
if (mapkind == PyUnicode_2BYTE_KIND && maplen >= 256) {
|
||||
enum PyUnicode_Kind outkind = writer->kind;
|
||||
int outkind = writer->kind;
|
||||
const Py_UCS2 *mapdata_ucs2 = (const Py_UCS2 *)mapdata;
|
||||
if (outkind == PyUnicode_1BYTE_KIND) {
|
||||
Py_UCS1 *outdata = (Py_UCS1 *)writer->data;
|
||||
|
@ -8061,7 +8061,7 @@ charmap_encoding_error(
|
|||
PyObject *repunicode = NULL; /* initialize to prevent gcc warning */
|
||||
Py_ssize_t size, repsize;
|
||||
Py_ssize_t newpos;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *data;
|
||||
Py_ssize_t index;
|
||||
/* startpos for collecting unencodable chars */
|
||||
|
@ -9422,7 +9422,7 @@ _PyUnicode_JoinArray(PyObject *separator, PyObject *const *items, Py_ssize_t seq
|
|||
int use_memcpy;
|
||||
unsigned char *res_data = NULL, *sep_data = NULL;
|
||||
PyObject *last_obj;
|
||||
unsigned int kind = 0;
|
||||
int kind = 0;
|
||||
|
||||
/* If empty sequence, return u"". */
|
||||
if (seqlen == 0) {
|
||||
|
@ -9581,7 +9581,7 @@ void
|
|||
_PyUnicode_FastFill(PyObject *unicode, Py_ssize_t start, Py_ssize_t length,
|
||||
Py_UCS4 fill_char)
|
||||
{
|
||||
const enum PyUnicode_Kind kind = PyUnicode_KIND(unicode);
|
||||
const int kind = PyUnicode_KIND(unicode);
|
||||
void *data = PyUnicode_DATA(unicode);
|
||||
assert(unicode_modifiable(unicode));
|
||||
assert(fill_char <= PyUnicode_MAX_CHAR_VALUE(unicode));
|
||||
|
@ -11049,7 +11049,7 @@ static PyObject *
|
|||
unicode_getitem(PyObject *self, Py_ssize_t index)
|
||||
{
|
||||
const void *data;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
Py_UCS4 ch;
|
||||
|
||||
if (!PyUnicode_Check(self)) {
|
||||
|
@ -12985,7 +12985,7 @@ _PyUnicodeWriter_PrepareInternal(_PyUnicodeWriter *writer,
|
|||
|
||||
int
|
||||
_PyUnicodeWriter_PrepareKindInternal(_PyUnicodeWriter *writer,
|
||||
enum PyUnicode_Kind kind)
|
||||
int kind)
|
||||
{
|
||||
Py_UCS4 maxchar;
|
||||
|
||||
|
@ -13444,7 +13444,7 @@ struct unicode_formatter_t {
|
|||
Py_ssize_t arglen, argidx;
|
||||
PyObject *dict;
|
||||
|
||||
enum PyUnicode_Kind fmtkind;
|
||||
int fmtkind;
|
||||
Py_ssize_t fmtcnt, fmtpos;
|
||||
const void *fmtdata;
|
||||
PyObject *fmtstr;
|
||||
|
@ -14106,7 +14106,7 @@ unicode_format_arg_output(struct unicode_formatter_t *ctx,
|
|||
PyObject *str)
|
||||
{
|
||||
Py_ssize_t len;
|
||||
enum PyUnicode_Kind kind;
|
||||
int kind;
|
||||
const void *pbuf;
|
||||
Py_ssize_t pindex;
|
||||
Py_UCS4 signchar;
|
||||
|
@ -14422,7 +14422,7 @@ unicode_subtype_new(PyTypeObject *type, PyObject *unicode)
|
|||
PyObject *self;
|
||||
Py_ssize_t length, char_size;
|
||||
int share_utf8;
|
||||
unsigned int kind;
|
||||
int kind;
|
||||
void *data;
|
||||
|
||||
assert(PyType_IsSubtype(type, &PyUnicode_Type));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue