Skip to content

Commit d5e75c0

Browse files
authored
Exclude _testclinic_depr.c.h from c-analyzer (GH-137086)
_testclinic.c mocks out PY_VERSION_HEX to 3.8 before including _testclinic_depr.c.h to avoid the errors the preprocessor would otherwise throw due to the deprecation feature it is testing. Also partially revert 74e2acd: this restores Modules/_testclinic.c to match the same file in the 3.14 branch.
1 parent 9a6b60a commit d5e75c0

File tree

4 files changed

+225
-223
lines changed

4 files changed

+225
-223
lines changed

Lib/test/test_clinic.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2979,7 +2979,7 @@ def check_depr_star(self, pnames, fn, /, *args, name=None, **kwds):
29792979
regex = (
29802980
fr"Passing( more than)?( [0-9]+)? positional argument(s)? to "
29812981
fr"{re.escape(name)}\(\) is deprecated. Parameters? {pnames} will "
2982-
fr"become( a)? keyword-only parameters? in Python 3\.37"
2982+
fr"become( a)? keyword-only parameters? in Python 3\.14"
29832983
)
29842984
self.check_depr(regex, fn, *args, **kwds)
29852985

@@ -2992,7 +2992,7 @@ def check_depr_kwd(self, pnames, fn, *args, name=None, **kwds):
29922992
regex = (
29932993
fr"Passing keyword argument{pl} {pnames} to "
29942994
fr"{re.escape(name)}\(\) is deprecated. Parameter{pl} {pnames} "
2995-
fr"will become positional-only in Python 3\.37."
2995+
fr"will become positional-only in Python 3\.14."
29962996
)
29972997
self.check_depr(regex, fn, *args, **kwds)
29982998

@@ -3803,9 +3803,9 @@ def test_depr_star_multi(self):
38033803
fn("a", b="b", c="c", d="d", e="e", f="f", g="g", h="h")
38043804
errmsg = (
38053805
"Passing more than 1 positional argument to depr_star_multi() is deprecated. "
3806-
"Parameter 'b' will become a keyword-only parameter in Python 3.39. "
3807-
"Parameters 'c' and 'd' will become keyword-only parameters in Python 3.38. "
3808-
"Parameters 'e', 'f' and 'g' will become keyword-only parameters in Python 3.37.")
3806+
"Parameter 'b' will become a keyword-only parameter in Python 3.16. "
3807+
"Parameters 'c' and 'd' will become keyword-only parameters in Python 3.15. "
3808+
"Parameters 'e', 'f' and 'g' will become keyword-only parameters in Python 3.14.")
38093809
check = partial(self.check_depr, re.escape(errmsg), fn)
38103810
check("a", "b", c="c", d="d", e="e", f="f", g="g", h="h")
38113811
check("a", "b", "c", d="d", e="e", f="f", g="g", h="h")
@@ -3904,9 +3904,9 @@ def test_depr_kwd_multi(self):
39043904
fn("a", "b", "c", "d", "e", "f", "g", h="h")
39053905
errmsg = (
39063906
"Passing keyword arguments 'b', 'c', 'd', 'e', 'f' and 'g' to depr_kwd_multi() is deprecated. "
3907-
"Parameter 'b' will become positional-only in Python 3.37. "
3908-
"Parameters 'c' and 'd' will become positional-only in Python 3.38. "
3909-
"Parameters 'e', 'f' and 'g' will become positional-only in Python 3.39.")
3907+
"Parameter 'b' will become positional-only in Python 3.14. "
3908+
"Parameters 'c' and 'd' will become positional-only in Python 3.15. "
3909+
"Parameters 'e', 'f' and 'g' will become positional-only in Python 3.16.")
39103910
check = partial(self.check_depr, re.escape(errmsg), fn)
39113911
check("a", "b", "c", "d", "e", "f", g="g", h="h")
39123912
check("a", "b", "c", "d", "e", f="f", g="g", h="h")
@@ -3921,17 +3921,17 @@ def test_depr_multi(self):
39213921
self.assertRaises(TypeError, fn, "a", "b", "c", "d", "e", "f", "g")
39223922
errmsg = (
39233923
"Passing more than 4 positional arguments to depr_multi() is deprecated. "
3924-
"Parameter 'e' will become a keyword-only parameter in Python 3.38. "
3925-
"Parameter 'f' will become a keyword-only parameter in Python 3.37.")
3924+
"Parameter 'e' will become a keyword-only parameter in Python 3.15. "
3925+
"Parameter 'f' will become a keyword-only parameter in Python 3.14.")
39263926
check = partial(self.check_depr, re.escape(errmsg), fn)
39273927
check("a", "b", "c", "d", "e", "f", g="g")
39283928
check("a", "b", "c", "d", "e", f="f", g="g")
39293929
fn("a", "b", "c", "d", e="e", f="f", g="g")
39303930
fn("a", "b", "c", d="d", e="e", f="f", g="g")
39313931
errmsg = (
39323932
"Passing keyword arguments 'b' and 'c' to depr_multi() is deprecated. "
3933-
"Parameter 'b' will become positional-only in Python 3.37. "
3934-
"Parameter 'c' will become positional-only in Python 3.38.")
3933+
"Parameter 'b' will become positional-only in Python 3.14. "
3934+
"Parameter 'c' will become positional-only in Python 3.15.")
39353935
check = partial(self.check_depr, re.escape(errmsg), fn)
39363936
check("a", "b", c="c", d="d", e="e", f="f", g="g")
39373937
check("a", b="b", c="c", d="d", e="e", f="f", g="g")

0 commit comments

Comments
 (0)