Repository navigation
Commit 3fc4d1f
Heap types have no static type object so switch from `Py_Is` to an
assert that the shadowed `tp_new` / `tp_init` function is the expected
one to validate the vectorcall is only used with the right type.
Heap types can have zero-argument `__new__` and `__init__` so add
support for that producing the same error message via a new helper
`_PyArg_NoPositionalStack()`.
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
1 parent e6190ac commit 3fc4d1f
15 files changed
Lines changed: 117 additions & 52 deletions
File tree
- Include/internal
- Lib/test
- Misc/NEWS.d/next/Tools-Demos
- Modules
- clinic
- Objects/clinic
- Python
- Tools
- c-analyzer/cpython
- clinic/libclinic
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
23 | 29 | | |
24 | 30 | | |
25 | 31 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4946 | 4946 | | |
4947 | 4947 | | |
4948 | 4948 | | |
| 4949 | + | |
4949 | 4950 | | |
4950 | 4951 | | |
4951 | 4952 | | |
| |||
4981 | 4982 | | |
4982 | 4983 | | |
4983 | 4984 | | |
| 4985 | + | |
| 4986 | + | |
| 4987 | + | |
| 4988 | + | |
| 4989 | + | |
| 4990 | + | |
| 4991 | + | |
| 4992 | + | |
| 4993 | + | |
| 4994 | + | |
| 4995 | + | |
| 4996 | + | |
| 4997 | + | |
| 4998 | + | |
| 4999 | + | |
| 5000 | + | |
| 5001 | + | |
| 5002 | + | |
| 5003 | + | |
| 5004 | + | |
| 5005 | + | |
| 5006 | + | |
| 5007 | + | |
| 5008 | + | |
| 5009 | + | |
| 5010 | + | |
| 5011 | + | |
| 5012 | + | |
| 5013 | + | |
| 5014 | + | |
| 5015 | + | |
| 5016 | + | |
| 5017 | + | |
4984 | 5018 | | |
4985 | 5019 | | |
4986 | | - | |
| 5020 | + | |
4987 | 5021 | | |
4988 | 5022 | | |
4989 | 5023 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3500 | 3500 | | |
3501 | 3501 | | |
3502 | 3502 | | |
3503 | | - | |
3504 | | - | |
3505 | 3503 | | |
3506 | 3504 | | |
3507 | 3505 | | |
| |||
3532 | 3530 | | |
3533 | 3531 | | |
3534 | 3532 | | |
3535 | | - | |
| 3533 | + | |
3536 | 3534 | | |
3537 | 3535 | | |
3538 | 3536 | | |
3539 | 3537 | | |
3540 | 3538 | | |
3541 | 3539 | | |
3542 | | - | |
| 3540 | + | |
| 3541 | + | |
| 3542 | + | |
3543 | 3543 | | |
3544 | 3544 | | |
3545 | 3545 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
28 | 27 | | |
29 | 28 | | |
30 | 29 | | |
| |||
2539 | 2538 | | |
2540 | 2539 | | |
2541 | 2540 | | |
2542 | | - | |
| 2541 | + | |
2543 | 2542 | | |
2544 | 2543 | | |
2545 | 2544 | | |
| |||
2550 | 2549 | | |
2551 | 2550 | | |
2552 | 2551 | | |
2553 | | - | |
| 2552 | + | |
2554 | 2553 | | |
2555 | 2554 | | |
2556 | 2555 | | |
2557 | 2556 | | |
2558 | | - | |
2559 | | - | |
2560 | | - | |
2561 | | - | |
2562 | | - | |
2563 | | - | |
2564 | | - | |
2565 | | - | |
| 2557 | + | |
| 2558 | + | |
| 2559 | + | |
| 2560 | + | |
| 2561 | + | |
| 2562 | + | |
| 2563 | + | |
| 2564 | + | |
| 2565 | + | |
| 2566 | + | |
| 2567 | + | |
| 2568 | + | |
| 2569 | + | |
2566 | 2570 | | |
2567 | 2571 | | |
2568 | 2572 | | |
| |||
2880 | 2884 | | |
2881 | 2885 | | |
2882 | 2886 | | |
2883 | | - | |
| 2887 | + | |
| 2888 | + | |
2884 | 2889 | | |
2885 | 2890 | | |
2886 | 2891 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments