Skip to content

gh-158585: Optimize PyBytesWriter_FinishWithSize() - #158586

Merged
vstinner merged 2 commits into
python:mainfrom
vstinner:bytes_writer_finish
Oct 2, 2026
Merged

vstinner merged 2 commits into
python:mainfrom
vstinner:bytes_writer_finish

Conversation

@vstinner

@vstinner vstinner commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

Add specialized bytes_resize_inplace() and inline
PyBytesWriter_Discard() in PyBytesWriter_FinishWithSize().

Add also bytes_get_char() function.

@python-cla-bot

python-cla-bot Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

All commit authors signed the Contributor License Agreement.

CLA signed

Add specialized bytes_resize_inplace() and inline
PyBytesWriter_Discard() in PyBytesWriter_FinishWithSize().

Add also bytes_get_char() function.
@vstinner
vstinner force-pushed the bytes_writer_finish branch from c73d897 to 9571cba Compare October 2, 2026 01:34
@vstinner
vstinner enabled auto-merge (squash) October 2, 2026 02:41
@vstinner
vstinner merged commit ee782e6 into python:main Oct 2, 2026
51 checks passed
@vstinner
vstinner deleted the bytes_writer_finish branch October 2, 2026 03:07
@vstinner

vstinner commented Oct 2, 2026

Copy link
Copy Markdown
Member Author

I ran a quick benchmark on Fedora 44 with gcc -O3 (GCC 16.2.1). The change saves between 1.7 and 5 nanoseconds per PyBytesWriter_Finish() calls.

Benchmark ref change
byteswriter_abc 73.4 ns 70.8 ns: 1.04x faster
byteswriter_highlevel 130 ns 126 ns: 1.04x faster
byteswriter_repeat 77.9 ns 76.2 ns: 1.02x faster
byteswriter_truncate 107 ns 102 ns: 1.04x faster
Geometric mean (ref) 1.03x faster

Benchmark hidden because not significant (1): byteswriter_a

Benchmark:

import _testcapi, pyperf
runner = pyperf.Runner()

# use small buffer
runner.bench_func('byteswriter_a', _testcapi.byteswriter_a)
runner.bench_func('byteswriter_abc', _testcapi.byteswriter_abc)
runner.bench_func('byteswriter_highlevel', _testcapi.byteswriter_highlevel)

# use bytes object
runner.bench_func('byteswriter_repeat', _testcapi.byteswriter_repeat)
runner.bench_func('byteswriter_truncate', _testcapi.byteswriter_truncate)

Patch to add C benchmarks:

Details
diff --git a/Modules/_testcapi/bytes.c b/Modules/_testcapi/bytes.c
index f5a5fb0481d..6a48a778fac 100644
--- a/Modules/_testcapi/bytes.c
+++ b/Modules/_testcapi/bytes.c
@@ -380,6 +380,21 @@ static PyType_Spec Writer_spec = {
 };
 
 
+static PyObject *
+byteswriter_a(PyObject *Py_UNUSED(module), PyObject *Py_UNUSED(args))
+{
+    PyBytesWriter *writer = PyBytesWriter_Create(1);
+    if (writer == NULL) {
+        return NULL;
+    }
+
+    char *str = PyBytesWriter_GetData(writer);
+    memcpy(str, "a", 1);
+
+    return PyBytesWriter_Finish(writer);
+}
+
+
 static PyObject *
 byteswriter_abc(PyObject *Py_UNUSED(module), PyObject *Py_UNUSED(args))
 {
@@ -395,6 +410,36 @@ byteswriter_abc(PyObject *Py_UNUSED(module), PyObject *Py_UNUSED(args))
 }
 
 
+static PyObject *
+byteswriter_repeat(PyObject *Py_UNUSED(module), PyObject *Py_UNUSED(args))
+{
+    PyBytesWriter *writer = PyBytesWriter_Create(300);
+    if (writer == NULL) {
+        return NULL;
+    }
+
+    char *str = PyBytesWriter_GetData(writer);
+    memset(str, 'x', 300);
+
+    return PyBytesWriter_Finish(writer);
+}
+
+
+static PyObject *
+byteswriter_truncate(PyObject *Py_UNUSED(module), PyObject *Py_UNUSED(args))
+{
+    PyBytesWriter *writer = PyBytesWriter_Create(300);
+    if (writer == NULL) {
+        return NULL;
+    }
+
+    char *str = PyBytesWriter_GetData(writer);
+    memset(str, 'x', 300);
+
+    return PyBytesWriter_FinishWithSize(writer, 200);
+}
+
+
 static PyObject *
 byteswriter_resize(PyObject *Py_UNUSED(module), PyObject *Py_UNUSED(args))
 {
@@ -606,7 +651,10 @@ corrupt_bytes(PyObject *Py_UNUSED(module), PyObject *args)
 static PyMethodDef test_methods[] = {
     {"bytes_resize", bytes_resize, METH_VARARGS},
     {"bytes_join", bytes_join, METH_VARARGS},
+    {"byteswriter_a", byteswriter_a, METH_NOARGS},
     {"byteswriter_abc", byteswriter_abc, METH_NOARGS},
+    {"byteswriter_repeat", byteswriter_repeat, METH_NOARGS},
+    {"byteswriter_truncate", byteswriter_truncate, METH_NOARGS},
     {"byteswriter_resize", byteswriter_resize, METH_NOARGS},
     {"byteswriter_highlevel", byteswriter_highlevel, METH_NOARGS},
     {"test_byteswriter_ptr", test_byteswriter_ptr, METH_NOARGS},

@bedevere-bot

Copy link
Copy Markdown

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot iOS ARM64 Simulator 3.x (tier-3) has failed when building commit ee782e6.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/#/builders/1380/builds/7952) and take a look at the build logs.
  4. Check if the failure is related to this commit (ee782e6) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/#/builders/1380/builds/7952

Summary of the results of the build (if available):

Click to see traceback logs
remote: Enumerating objects: 4, done.        
remote: Counting objects:  25% (1/4)        
remote: Counting objects:  50% (2/4)        
remote: Counting objects:  75% (3/4)        
remote: Counting objects: 100% (4/4)        
remote: Counting objects: 100% (4/4), done.        
remote: Compressing objects:  25% (1/4)        
remote: Compressing objects:  50% (2/4)        
remote: Compressing objects:  75% (3/4)        
remote: Compressing objects: 100% (4/4)        
remote: Compressing objects: 100% (4/4), done.        
remote: Total 4 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0)        
From https://github.com/python/cpython
 * branch                    main       -> FETCH_HEAD
Note: switching to 'ee782e6143b3fda2e7feb1216ff23860ad39b234'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at ee782e6143b gh-158585: Optimize PyBytesWriter_FinishWithSize() (#158586)
Switched to and reset branch 'main'

configure: WARNING: no system libmpdec found; falling back to pure-Python version for the decimal module
configure: WARNING: pkg-config is missing. Some dependencies may not be detected correctly.
../../Parser/lexer/string.c:86:20: warning: variable 'previous_end' set but not used [-Wunused-but-set-variable]
   86 |         _PyTok_Off previous_end = state->expr_span.start;
      |                    ^
1 warning generated.
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:282:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  282 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:289:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  289 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:435:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  435 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:442:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  442 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:548:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  548 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:557:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  557 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:579:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  579 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:590:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  590 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:687:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  687 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:732:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  732 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:758:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  758 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:769:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  769 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:782:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  782 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:927:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  927 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:940:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  940 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:957:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  957 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:964:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  964 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1199:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1199 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1219:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1219 |           CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
19 warnings generated.

configure: WARNING: unrecognized options: --with-system-libmpdec
configure: WARNING: unrecognized options: --with-system-libmpdec
configure: WARNING: pkg-config is missing. Some dependencies may not be detected correctly.
../../Parser/lexer/string.c:86:20: warning: variable 'previous_end' set but not used [-Wunused-but-set-variable]
   86 |         _PyTok_Off previous_end = state->expr_span.start;
      |                    ^
1 warning generated.
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:282:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  282 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:289:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  289 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:435:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  435 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:442:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  442 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:548:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  548 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:557:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  557 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:579:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  579 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:590:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  590 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:687:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  687 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:732:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  732 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:758:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  758 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:769:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  769 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:782:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  782 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:927:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  927 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:940:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  940 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:957:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  957 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:964:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  964 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1199:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1199 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1219:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1219 |           CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
19 warnings generated.
ld: warning: ignoring duplicate libraries: '-lm'
ld: warning: ignoring duplicate libraries: '-lm'
configure: WARNING: unrecognized options: --with-system-libmpdec
configure: WARNING: unrecognized options: --with-system-libmpdec
configure: WARNING: pkg-config is missing. Some dependencies may not be detected correctly.
../../Parser/lexer/string.c:86:20: warning: variable 'previous_end' set but not used [-Wunused-but-set-variable]
   86 |         _PyTok_Off previous_end = state->expr_span.start;
      |                    ^
1 warning generated.
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:282:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  282 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:289:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  289 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:435:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  435 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:442:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  442 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:548:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  548 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:557:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  557 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:579:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  579 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:590:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  590 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:687:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  687 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:732:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  732 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:758:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  758 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:769:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  769 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:782:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  782 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:927:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  927 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:940:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  940 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:957:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  957 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:964:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  964 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1199:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1199 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1219:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1219 |           CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
19 warnings generated.
ld: warning: ignoring duplicate libraries: '-lm'
ld: warning: ignoring duplicate libraries: '-lm'
configure: WARNING: unrecognized options: --with-system-libmpdec
configure: WARNING: x86_64-apple-ios-simulator/clang is not supported
configure: WARNING: unrecognized options: --with-system-libmpdec
configure: WARNING: pkg-config is missing. Some dependencies may not be detected correctly.
configure: WARNING:

Platform "x86_64-apple-ios-simulator" with compiler "clang" is not supported by the
CPython core team, see https://peps.python.org/pep-0011/ for more information.

../../Parser/lexer/string.c:86:20: warning: variable 'previous_end' set but not used [-Wunused-but-set-variable]
   86 |         _PyTok_Off previous_end = state->expr_span.start;
      |                    ^
1 warning generated.
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:282:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  282 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:289:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  289 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:435:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  435 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:442:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  442 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:548:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  548 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:557:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  557 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:579:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  579 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:590:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  590 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:687:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  687 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:732:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  732 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:758:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  758 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:769:9: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  769 |         CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |         ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:782:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  782 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:927:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  927 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:940:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  940 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:957:5: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  957 |     CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |     ^
../../Modules/expat/xmltok_impl.c:115:5: note: expanded from macro 'CHECK_NMSTRT_CASES'
  115 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:964:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
  964 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1199:7: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1199 |       CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |       ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
In file included from ../../Modules/expat/xmltok.c:326:
../../Modules/expat/xmltok_impl.c:1219:11: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
 1219 |           CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |           ^
../../Modules/expat/xmltok_impl.c:86:5: note: expanded from macro 'CHECK_NAME_CASES'
   86 |     EXPAT_FALLTHROUGH;                                                         \
      |     ^
../../Modules/expat/fallthrough.h:47:33: note: expanded from macro 'EXPAT_FALLTHROUGH'
   47 | #      define EXPAT_FALLTHROUGH __attribute__((fallthrough))
      |                                 ^
19 warnings generated.
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(brc.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(dynamic_annotations.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(gc_free_threading.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(index_pool.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(jit.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(jit_publish.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(optimizer_analysis.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(optimizer_symbols.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(pystats.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(stackrefs.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(uniqueid.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(perf_jit_trampoline.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libpython3.16.a(jit_unwind.o) has no symbols
ld: warning: ignoring duplicate libraries: '-lm'
ld: warning: ignoring duplicate libraries: '-lm'

--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:iOS Simulator, id:4F9AFDE7-A49A-46AD-B161-FCA22E48EA55, OS:18.3.1, name:iPhone SE (3rd generation) }
{ platform:iOS Simulator, id:4F9AFDE7-A49A-46AD-B161-FCA22E48EA55, OS:18.3.1, name:iPhone SE (3rd generation) }

@bedevere-bot

Copy link
Copy Markdown

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot aarch64 Fedora Stable Refleaks 3.x (tier-2) has failed when building commit ee782e6.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/#/builders/123/builds/2502) and take a look at the build logs.
  4. Check if the failure is related to this commit (ee782e6) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/#/builders/123/builds/2502

Test leaking resources:

  • test_processes: memory blocks
  • test_manager: references
  • test_manager: memory blocks

Summary of the results of the build (if available):

==

Click to see traceback logs
Traceback (most recent call last):
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-aarch64/3.x.cstratak-fedora-stable-aarch64.refleak/build/Lib/multiprocessing/process.py", line 320, in _bootstrap
    self.run()
    ~~~~~~~~^^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-aarch64/3.x.cstratak-fedora-stable-aarch64.refleak/build/Lib/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-aarch64/3.x.cstratak-fedora-stable-aarch64.refleak/build/Lib/test/_test_multiprocessing.py", line 579, in _sleep_some_event
    time.sleep(100)
    ~~~~~~~~~~^^^^^
KeyboardInterrupt
k

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants