Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-127870: Fix ctypes _as_parameter_ handling #127872

Merged
merged 2 commits into from
Dec 13, 2024

Conversation

vstinner
Copy link
Member

@vstinner vstinner commented Dec 12, 2024

Detect recursive calls in ctypes _as_parameter_ handling: add Py_EnterRecursiveCall() and Py_LeaveRecursiveCall() calls.

Detect recursive calls in ctypes _as_parameter_ handling: add
Py_EnterRecursiveCall() and Py_LeaveRecursiveCall() calls.
@vstinner vstinner added needs backport to 3.12 bug and security fixes needs backport to 3.13 bugs and security fixes labels Dec 13, 2024
@vstinner vstinner merged commit 6ff38fc into python:main Dec 13, 2024
45 checks passed
@vstinner vstinner deleted the ctypes_as_parameter branch December 13, 2024 12:53
@miss-islington-app
Copy link

Thanks @vstinner for the PR 🌮🎉.. I'm working now to backport this PR to: 3.12, 3.13.
🐍🍒⛏🤖

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Dec 13, 2024
@miss-islington-app
Copy link

Sorry, @vstinner, I could not cleanly backport this to 3.12 due to a conflict.
Please backport using cherry_picker on command line.

cherry_picker 6ff38fc4e2af8e795dc791be6ea596d2146d4119 3.12

@bedevere-app
Copy link

bedevere-app bot commented Dec 13, 2024

GH-127917 is a backport of this pull request to the 3.13 branch.

@bedevere-app bedevere-app bot removed the needs backport to 3.13 bugs and security fixes label Dec 13, 2024
vstinner added a commit to vstinner/cpython that referenced this pull request Dec 13, 2024
vstinner added a commit to vstinner/cpython that referenced this pull request Dec 13, 2024
@bedevere-app
Copy link

bedevere-app bot commented Dec 13, 2024

GH-127918 is a backport of this pull request to the 3.12 branch.

@bedevere-app bedevere-app bot removed the needs backport to 3.12 bug and security fixes label Dec 13, 2024
vstinner added a commit that referenced this pull request Dec 13, 2024
…dling (GH-127872) (#127917)

gh-127870: Detect recursive calls in ctypes _as_parameter_ handling (GH-127872)
(cherry picked from commit 6ff38fc)

Co-authored-by: Victor Stinner <[email protected]>
vstinner added a commit that referenced this pull request Dec 13, 2024
…dling (#127872) (#127918)

gh-127870: Detect recursive calls in ctypes _as_parameter_ handling (#127872)

(cherry picked from commit 6ff38fc)
@bedevere-bot
Copy link

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

Hi! The buildbot AMD64 Android 3.13 has failed when building commit 0f38b89.

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/1592/builds/279) and take a look at the build logs.
  4. Check if the failure is related to this commit (0f38b89) 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/1592/builds/279

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

Click to see traceback logs
remote: Enumerating objects: 26, done.        
remote: Counting objects:   3% (1/26)        
remote: Counting objects:   7% (2/26)        
remote: Counting objects:  11% (3/26)        
remote: Counting objects:  15% (4/26)        
remote: Counting objects:  19% (5/26)        
remote: Counting objects:  23% (6/26)        
remote: Counting objects:  26% (7/26)        
remote: Counting objects:  30% (8/26)        
remote: Counting objects:  34% (9/26)        
remote: Counting objects:  38% (10/26)        
remote: Counting objects:  42% (11/26)        
remote: Counting objects:  46% (12/26)        
remote: Counting objects:  50% (13/26)        
remote: Counting objects:  53% (14/26)        
remote: Counting objects:  57% (15/26)        
remote: Counting objects:  61% (16/26)        
remote: Counting objects:  65% (17/26)        
remote: Counting objects:  69% (18/26)        
remote: Counting objects:  73% (19/26)        
remote: Counting objects:  76% (20/26)        
remote: Counting objects:  80% (21/26)        
remote: Counting objects:  84% (22/26)        
remote: Counting objects:  88% (23/26)        
remote: Counting objects:  92% (24/26)        
remote: Counting objects:  96% (25/26)        
remote: Counting objects: 100% (26/26)        
remote: Counting objects: 100% (26/26), done.        
remote: Compressing objects:   9% (1/11)        
remote: Compressing objects:  18% (2/11)        
remote: Compressing objects:  27% (3/11)        
remote: Compressing objects:  36% (4/11)        
remote: Compressing objects:  45% (5/11)        
remote: Compressing objects:  54% (6/11)        
remote: Compressing objects:  63% (7/11)        
remote: Compressing objects:  72% (8/11)        
remote: Compressing objects:  81% (9/11)        
remote: Compressing objects:  90% (10/11)        
remote: Compressing objects: 100% (11/11)        
remote: Compressing objects: 100% (11/11), done.        
remote: Total 14 (delta 12), reused 5 (delta 3), pack-reused 0 (from 0)        
From https://github.com/python/cpython
 * branch                    3.13       -> FETCH_HEAD
Note: switching to '0f38b897f933849f01293af622482c5b8502a2b4'.

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 0f38b897f93 [3.13] gh-127870: Detect recursive calls in ctypes _as_parameter_ handling (GH-127872) (#127917)
Switched to and reset branch '3.13'

configure: WARNING: no system libmpdecimal found; falling back to bundled libmpdecimal (deprecated and scheduled for removal in Python 3.15)

In function ‘hashtable_key_from_2_strings’,
    inlined from ‘_extensions_cache_find_unlocked’ at ../../Python/import.c:1264:17:
../../Python/import.c:1177:5: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
 1177 |     strncpy(key, str1_data, str1_len);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../Python/import.c:1163:27: note: length computed here
 1163 |     Py_ssize_t str1_len = strlen(str1_data);
      |                           ^~~~~~~~~~~~~~~~~
In function ‘word_to_string’,
    inlined from ‘coeff_to_string’ at ../../Modules/_decimal/libmpdec/io.c:411:13,
    inlined from ‘_mpd_to_string’ at ../../Modules/_decimal/libmpdec/io.c:612:18:
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:358:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  358 |     case 17: EXTRACT_DIGIT(s, x, 10000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:357:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  357 |     case 18: EXTRACT_DIGIT(s, x, 100000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:358:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  358 |     case 17: EXTRACT_DIGIT(s, x, 10000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
In function ‘word_to_string’,
    inlined from ‘coeff_to_string’ at ../../Modules/_decimal/libmpdec/io.c:411:13,
    inlined from ‘_mpd_to_string’ at ../../Modules/_decimal/libmpdec/io.c:608:18:
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:358:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  358 |     case 17: EXTRACT_DIGIT(s, x, 10000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:357:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  357 |     case 18: EXTRACT_DIGIT(s, x, 100000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:358:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  358 |     case 17: EXTRACT_DIGIT(s, x, 10000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
In function ‘word_to_string’,
    inlined from ‘coeff_to_string’ at ../../Modules/_decimal/libmpdec/io.c:411:13,
    inlined from ‘_mpd_to_string’ at ../../Modules/_decimal/libmpdec/io.c:502:22:
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:358:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  358 |     case 17: EXTRACT_DIGIT(s, x, 10000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:360:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  360 |     case 15: EXTRACT_DIGIT(s, x, 100000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:357:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  357 |     case 18: EXTRACT_DIGIT(s, x, 100000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:358:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  358 |     case 17: EXTRACT_DIGIT(s, x, 10000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:359:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  359 |     case 16: EXTRACT_DIGIT(s, x, 1000000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:361:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  361 |     case 14: EXTRACT_DIGIT(s, x, 10000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:362:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  362 |     case 13: EXTRACT_DIGIT(s, x, 1000000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:363:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  363 |     case 12: EXTRACT_DIGIT(s, x, 100000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:364:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  364 |     case 11: EXTRACT_DIGIT(s, x, 10000000000ULL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:366:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  366 |     case 10: EXTRACT_DIGIT(s, x, 1000000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:367:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  367 |     case 9:  EXTRACT_DIGIT(s, x, 100000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:368:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  368 |     case 8:  EXTRACT_DIGIT(s, x, 10000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:369:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  369 |     case 7:  EXTRACT_DIGIT(s, x, 1000000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:370:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  370 |     case 6:  EXTRACT_DIGIT(s, x, 100000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:371:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  371 |     case 5:  EXTRACT_DIGIT(s, x, 10000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:372:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  372 |     case 4:  EXTRACT_DIGIT(s, x, 1000UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:373:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  373 |     case 3:  EXTRACT_DIGIT(s, x, 100UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:349:40: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  349 |         if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
      |                                   ~~~~~^~~~~~~~~~~~~~~~~~~~~
../../Modules/_decimal/libmpdec/io.c:374:14: note: in expansion of macro ‘EXTRACT_DIGIT’
  374 |     case 2:  EXTRACT_DIGIT(s, x, 10UL, dot);
      |              ^~~~~~~~~~~~~

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

  0  201k    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  201k  100  201k    0     0   234k      0 --:--:-- --:--:-- --:--:-- 5457k
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

100 43710  100 43710    0     0  55127      0 --:--:-- --:--:-- --:--:-- 55127
100 43710  100 43710    0     0  55109      0 --:--:-- --:--:-- --:--:--     0
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

  0 5095k    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 5095k  100 5095k    0     0  6420k      0 --:--:-- --:--:-- --:--:--  261M
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

  0  959k    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  959k  100  959k    0     0  1218k      0 --:--:-- --:--:-- --:--:--  156M
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

100  629k  100  629k    0     0   761k      0 --:--:-- --:--:-- --:--:--  761k
configure: WARNING: no system libmpdecimal found; falling back to bundled libmpdecimal (deprecated and scheduled for removal in Python 3.15)

../../../Python/fileutils.c:455:1: warning: unused function 'decode_current_locale' [-Wunused-function]
  455 | decode_current_locale(const char* arg, wchar_t **wstr, size_t *wlen,
      | ^~~~~~~~~~~~~~~~~~~~~
../../../Python/fileutils.c:682:1: warning: unused function 'encode_current_locale' [-Wunused-function]
  682 | encode_current_locale(const wchar_t *text, char **str,
      | ^~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
../../../Modules/_testexternalinspection.c:536:5: warning: code will never be executed [-Wunreachable-code]
  536 |     int pid;
      |     ^~~~~~~~
1 warning generated.

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  8714  100  8714    0     0  25731      0 --:--:-- --:--:-- --:--:-- 25781
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  2848  100  2848    0     0  12416      0 --:--:-- --:--:-- --:--:-- 12436
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   167  100   167    0     0   2637      0 --:--:-- --:--:-- --:--:--  2693

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

  0  127M    0 32750    0     0  64391      0  0:34:43 --:--:--  0:34:43 64391
100  127M  100  127M    0     0   114M      0  0:00:01  0:00:01 --:--:--  209M
W/.python.testbed: Unexpected CPU variant for x86: x86_64.
W/.python.testbed: Known variants: atom, sandybridge, silvermont, goldmont, goldmont-plus, tremont, kabylake, default
W/ActivityThread: Package uses different ABI(s) than its instrumentation: package[org.python.testbed]: x86_64, null instrumentation[org.python.testbed.test]: null, null
W/.python.testbed: ClassLoaderContext shared library size mismatch. Expected=2, found=0 (PCL[]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]} | PCL[])
W/.python.testbed: ClassLoaderContext classpath size mismatch. expected=0, found=1 (PCL[] | PCL[/system/framework/android.test.runner.jar*4168958247])
W/.python.testbed: ClassLoaderContext classpath size mismatch. expected=0, found=2 (PCL[] | PCL[/system/framework/android.test.runner.jar*4168958247:/system/framework/android.test.mock.jar*3186112116])
W/ziparchive: Unable to open '/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.dm': No such file or directory
W/ziparchive: Unable to open '/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.dm': No such file or directory
W/ziparchive: Unable to open '/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.dm': No such file or directory
W/ziparchive: Unable to open '/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.dm': No such file or directory
W/.python.testbed: ClassLoaderContext shared library size mismatch. Expected=2, found=3 (PCL[]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]} | PCL[]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]#PCL[/system/framework/android.test.runner.jar*4168958247]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]}};PCL[/system/framework/android.test.runner.jar*4168958247:/system/framework/android.test.mock.jar*3186112116:/system/framework/android.test.base.jar*836642756:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk*427645796:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk!classes2.dex*598481842:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk!classes3.dex*195661129:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk*2737312088:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk!classes2.dex*4215559415:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk!classes3.dex*4289090085])
W/.python.testbed: ClassLoaderContext classpath size mismatch. expected=0, found=1 (PCL[] | PCL[/system/framework/android.test.runner.jar*4168958247]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]#PCL[/system/framework/android.test.runner.jar*4168958247]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]}};PCL[/system/framework/android.test.runner.jar*4168958247:/system/framework/android.test.mock.jar*3186112116:/system/framework/android.test.base.jar*836642756:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk*427645796:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk!classes2.dex*598481842:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk!classes3.dex*195661129:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk*2737312088:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk!classes2.dex*4215559415:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk!classes3.dex*4289090085])
W/.python.testbed: ClassLoaderContext classpath size mismatch. expected=0, found=2 (PCL[] | PCL[/system/framework/android.test.runner.jar*4168958247:/system/framework/android.test.mock.jar*3186112116]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]#PCL[/system/framework/android.test.runner.jar*4168958247]{PCL[/system/framework/android.test.base.jar*836642756]#PCL[/system/framework/android.test.mock.jar*3186112116]}};PCL[/system/framework/android.test.runner.jar*4168958247:/system/framework/android.test.mock.jar*3186112116:/system/framework/android.test.base.jar*836642756:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk*427645796:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk!classes2.dex*598481842:/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.apk!classes3.dex*195661129:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk*2737312088:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk!classes2.dex*4215559415:/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.apk!classes3.dex*4289090085])
W/ziparchive: Unable to open '/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.dm': No such file or directory
W/ziparchive: Unable to open '/data/app/~~aKFolYtuh6er2sTagrabxg==/org.python.testbed.test-Da8NXdl7n-o3bOvAmjBdow==/base.dm': No such file or directory
W/ziparchive: Unable to open '/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.dm': No such file or directory
W/ziparchive: Unable to open '/data/app/~~_yiRRkS7qigH6Zp0FAGsWg==/org.python.testbed-prARAc0HTGsZhYxXMcwYdA==/base.dm': No such file or directory
W/.python.testbed: Opening an oat file without a class loader. Are you using the deprecated DexFile APIs?
W/.python.testbed: type=1400 audit(0.0:37): avc:  denied  { read } for  name="overcommit_memory" dev="proc" ino=14450 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:proc_overcommit_memory:s0 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:38): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/math.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312752 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:39): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_bisect.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312697 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:40): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_random.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312727 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:41): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_opcode.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312723 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:42): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_struct.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312735 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:43): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_pickle.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312724 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:44): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_heapq.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312714 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:45): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/fcntl.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312751 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:57): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_ssl.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312733 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:58): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/binascii.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312749 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:59): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_contextvars.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312706 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:60): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_asyncio.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312696 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:61): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_datetime.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312710 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:63): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/unicodedata.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312759 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:64): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_decimal.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312711 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:65): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/termios.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312758 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test.test_asyncio.test_subprocess skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:66): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_hashlib.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312713 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:67): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_blake2.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312698 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test.test_asyncio.test_windows_events skipped -- Windows only
test.test_asyncio.test_windows_utils skipped -- Windows only
test.test_gdb.test_backtrace skipped -- test_gdb only works on source builds at the moment.
test.test_gdb.test_cfunction skipped -- test_gdb only works on source builds at the moment.
test.test_gdb.test_cfunction_full skipped -- test_gdb only works on source builds at the moment.
test.test_gdb.test_misc skipped -- test_gdb only works on source builds at the moment.
test.test_gdb.test_pretty_print skipped -- test_gdb only works on source builds at the moment.
W/.python.testbed: type=1400 audit(0.0:68): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_testcapi.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312737 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test.test_multiprocessing_fork.test_manager skipped -- No module named '_multiprocessing'
test.test_multiprocessing_fork.test_misc skipped -- No module named '_multiprocessing'
test.test_multiprocessing_fork.test_processes skipped -- No module named '_multiprocessing'
test.test_multiprocessing_fork.test_threads skipped -- No module named '_multiprocessing'
test.test_multiprocessing_forkserver.test_manager skipped -- No module named '_multiprocessing'
test.test_multiprocessing_forkserver.test_misc skipped -- No module named '_multiprocessing'
test.test_multiprocessing_forkserver.test_processes skipped -- No module named '_multiprocessing'
test.test_multiprocessing_forkserver.test_threads skipped -- No module named '_multiprocessing'
test.test_multiprocessing_spawn.test_manager skipped -- No module named '_multiprocessing'
test.test_multiprocessing_spawn.test_misc skipped -- No module named '_multiprocessing'
test.test_multiprocessing_spawn.test_processes skipped -- No module named '_multiprocessing'
test.test_multiprocessing_spawn.test_threads skipped -- No module named '_multiprocessing'
W/.python.testbed: type=1400 audit(0.0:69): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_elementtree.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312712 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:70): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/pyexpat.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312754 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:71): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_lsprof.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312719 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:72): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_csv.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312707 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:73): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/mmap.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312753 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:74): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_statistics.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312734 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:75): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_interpreters.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312717 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:76): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_interpqueues.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312716 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:77): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_interpchannels.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312715 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:79): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_testsinglephase.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312745 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:80): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_testmultiphase.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312744 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:81): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_testbuffer.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312736 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:82): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_zoneinfo.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312747 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
a
Hello
Hello world
 
  
olé
中文
😀
\xc0\x80
a\xc0\x80
\xc0\x80b
a\xc0\x80b
\xff
a\xff
\xffb
a\xffb
x
a

b
c

d

xx
f

g

hello
hello
world

bytearray
memoryview
mmrve
\xc0\x80\xc0\x80�\xc0\x80\xfe\xff\xff\xff
a
Hello
Hello world
 
  
olé
中文
😀
\ud800\udc00
\udc80
\xc0\x80
a\xc0\x80
\xc0\x80b
a\xc0\x80b

x
a

b
c

d
xxf

g

x

a

b
c

d

xx
f

g

hello
hello
world

before form feed
before line separator
custom
hello
helloworld
foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoob
arfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobar
0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
test_apple skipped -- Apple-specific
test_argparse skipped -- test module requires subprocess
test_asdl_parser skipped -- test irrelevant for an installed Python
W/.python.testbed: type=1400 audit(0.0:83): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_sqlite3.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312732 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:84): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/syslog.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312757 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:85): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:86): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:87): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:88): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:89): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:90): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:91): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:92): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:93): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:192): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_codecs_cn.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312700 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:193): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_multibytecodec.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312722 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test_clinic skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:194): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/cmath.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312750 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test_cmd_line skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:195): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_ctypes.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312708 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:196): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_codecs_hk.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312701 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:197): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_codecs_tw.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312705 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:198): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_codecs_iso2022.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312702 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:199): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_codecs_jp.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312703 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:200): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_codecs_kr.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312704 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:201): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:202): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:203): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:204): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:205): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:206): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:235): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_ctypes_test.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312709 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test_curses skipped -- No module named '_curses'
test_dbm_gnu skipped -- No module named '_gdbm'
test_dbm_ndbm skipped -- No module named '_dbm'
W/.python.testbed: type=1400 audit(0.0:236): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/xxsubtype.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312762 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test_devpoll skipped -- test works only on Solaris OS family
W/.python.testbed: type=1400 audit(0.0:237): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:238): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:239): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:240): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:241): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:242): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:243): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:244): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
test_dtrace skipped -- test module requires subprocess
test_embed skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:290): avc:  denied  { relabelfrom } for  name="pip-24.3.1-py3-none-any.whl" dev="dm-38" ino=327917 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:291): avc:  denied  { relabelfrom } for  name="pip-24.3.1-py3-none-any.whl" dev="dm-38" ino=327917 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:292): avc:  denied  { relabelfrom } for  name="pip-24.3.1-py3-none-any.whl" dev="dm-38" ino=327917 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:293): avc:  denied  { relabelfrom } for  name="pip-24.3.1-py3-none-any.whl" dev="dm-38" ino=327917 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:294): avc:  denied  { relabelfrom } for  name="pip-24.3.1-py3-none-any.whl" dev="dm-38" ino=327917 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:339): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_testexternalinspection.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312740 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test_faulthandler skipped -- test module requires subprocess
test_file_eintr skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:340): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327921 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:341): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327924 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:342): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327924 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:343): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327927 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:344): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327930 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:345): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327921 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:346): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327924 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:347): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327924 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:348): avc:  denied  { relabelfrom } for  name="file" dev="dm-38" ino=327927 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
test_fork1 skipped -- test module requires working os.fork
test_free_threading skipped -- GIL enabled
test_generated_cases skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:417): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A6 dev="dm-38" ino=322094 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:418): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A631 dev="dm-38" ino=322094 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
test_getopt skipped -- test module requires subprocess
test_grp skipped -- No module named 'grp'
W/.python.testbed: type=1400 audit(0.0:419): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_md5.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312721 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:420): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_sha1.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312728 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:421): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_sha2.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312729 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:422): avc:  granted  { execute } for  path="/data/data/org.python.testbed/files/python/lib/python3.13/lib-dynload/_sha3.cpython-313-x86_64-linux-android.so" dev="dm-38" ino=312730 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test_idle skipped -- No module named '_tkinter'
test_ioctl skipped -- Unable to open /dev/tty
test_kqueue skipped -- test works only on BSD
test_launcher skipped -- test only applies to Windows
W/.python.testbed: type=1400 audit(0.0:423): avc:  denied  { link } for  name="99200.1.myhostname.mydomain" dev="dm-38" ino=328078 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:424): avc:  denied  { link } for  name="99200.2.myhostname.mydomain" dev="dm-38" ino=328080 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:425): avc:  denied  { link } for  name="99200.1.myhostname.mydomain" dev="dm-38" ino=328078 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:426): avc:  denied  { link } for  name="99200.1.myhostname.mydomain" dev="dm-38" ino=328078 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:427): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A62E6C6F636B2E313733343039393230302E6C6F63616C686F73742E31393930 dev="dm-38" ino=322151 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:428): avc:  denied  { link } for  name=".mh_sequences.lock.1734099200.localhost.1990" dev="dm-38" ino=328077 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:429): avc:  denied  { link } for  name=".mh_sequences.lock.1734099200.localhost.1990" dev="dm-38" ino=328076 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:430): avc:  denied  { link } for  name=".mh_sequences.lock.1734099200.localhost.1990" dev="dm-38" ino=328078 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:431): avc:  denied  { link } for  name="4" dev="dm-38" ino=328079 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:468): avc:  denied  { link } for  name="1734099201.M359208P1990Q45.localhost" dev="dm-38" ino=328078 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:469): avc:  denied  { link } for  name="1734099201.M363136P1990Q46.localhost" dev="dm-38" ino=328079 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:470): avc:  denied  { link } for  name="1734099201.M367657P1990Q47.localhost" dev="dm-38" ino=328078 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:471): avc:  denied  { link } for  name="1734099201.M374209P1990Q48.localhost" dev="dm-38" ino=328078 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:472): avc:  denied  { link } for  name="1734099201.M379060P1990Q49.localhost" dev="dm-38" ino=328079 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:635): avc:  granted  { execute } for  path=2F646174612F646174612F6F72672E707974686F6E2E746573746265642F63616368652F746573745F707974686F6E5F776F726B65725F31393930C3A62F40746573745F313939305F746D70C3A6 dev="dm-38" ino=322157 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file app=org.python.testbed
test_msvcrt skipped -- windows related tests
test_multiprocessing_main_handling skipped -- No module named '_multiprocessing'
W/.python.testbed: type=1400 audit(0.0:636): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A6 dev="dm-38" ino=322166 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:637): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A631 dev="dm-38" ino=322166 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
test_openpty skipped -- os.openpty() not available.
test_optparse skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:638): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A6 dev="dm-38" ino=322172 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:639): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A6 dev="dm-38" ino=322172 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:640): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A6C3B1 dev="dm-38" ino=322172 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:641): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
test_perf_profiler skipped -- test module requires subprocess
test_perfmaps skipped -- Linux only
W/.python.testbed: type=1400 audit(0.0:642): avc:  denied  { getattr } for  path="uts:[4026531838]" dev="nsfs" ino=4026531838 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:nsfs:s0 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:643): avc:  denied  { getsched } for  scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:zygote:s0 tclass=process permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:644): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A65F32 dev="dm-38" ino=328093 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:645): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A6 dev="dm-38" ino=322187 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:646): avc:  denied  { link } for  name=40746573745F313939305F746D70C3A631 dev="dm-38" ino=322187 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
test_pty skipped -- pty is not available on this platform
test_pyrepl skipped -- No module named '_curses'
W/.python.testbed: type=1400 audit(0.0:647): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:648): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:649): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:650): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:651): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:652): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:653): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:654): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
test_readline skipped -- No module named 'readline'
test_regrtest skipped -- test module requires subprocess
test_repl skipped -- test module requires subprocess
W/.python.testbed: type=1400 audit(0.0:692): avc:  denied  { relabelfrom } for  name="test.txt" dev="dm-38" ino=328100 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:693): avc:  denied  { relabelfrom } for  name="foo" dev="dm-38" ino=328100 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:694): avc:  denied  { relabelfrom } for  name="bar" dev="dm-38" ino=328100 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:695): avc:  denied  { relabelfrom } for  name="bar" dev="dm-38" ino=328100 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=lnk_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:696): avc:  denied  { relabelfrom } for  name="foo" dev="dm-38" ino=328105 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c108,c256,c512,c768 tclass=file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:789): avc:  denied  { create } for  scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=can_socket permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:790): avc:  denied  { create } for  scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=can_socket permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:791): avc:  denied  { create } for  scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=can_socket permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:792): avc:  denied  { create } for  scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=rds_socket permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:793): avc:  denied  { create } for  scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=alg_socket permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:800): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:801): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:802): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:803): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
W/.python.testbed: type=1400 audit(0.0:804): avc:  denied  { ioctl } for  path="pipe:[48931]" dev="pipefs" ino=48931 ioctlcmd=0x5413 scontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tcontext=u:r:untrusted_app:s0:c108,c256,c512,c768 tclass=fifo_file permissive=0 app=org.python.testbed
test_startfile skipped -- object <module 'os' (frozen)> has no attribute 'startfile'

srinivasreddy pushed a commit to srinivasreddy/cpython that referenced this pull request Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants