[3.9] bpo-40939: Fix test_keyword for the old parser (GH-20814)
diff --git a/Lib/keyword.py b/Lib/keyword.py
index afc3db3..a4db67e 100644
--- a/Lib/keyword.py
+++ b/Lib/keyword.py
@@ -19,7 +19,7 @@
'False',
'None',
'True',
- '__new_parser__',
+ '__peg_parser__',
'and',
'as',
'assert',
diff --git a/Lib/pydoc.py b/Lib/pydoc.py
index a5368bf..35ef3eb 100755
--- a/Lib/pydoc.py
+++ b/Lib/pydoc.py
@@ -1817,7 +1817,7 @@
'False': '',
'None': '',
'True': '',
- '__new_parser__': '',
+ '__peg_parser__': '',
'and': 'BOOLEAN',
'as': 'with',
'assert': ('assert', ''),
diff --git a/Lib/test/test_keyword.py b/Lib/test/test_keyword.py
index 3e2a8b3..e1042cf 100644
--- a/Lib/test/test_keyword.py
+++ b/Lib/test/test_keyword.py
@@ -1,5 +1,6 @@
import keyword
import unittest
+from test.support import use_old_parser
class Test_iskeyword(unittest.TestCase):
@@ -21,7 +22,10 @@
self.assertFalse(keyword.iskeyword('eggs'))
def test_all_keywords_fail_to_be_used_as_names(self):
- for key in keyword.kwlist:
+ all_keywords = set(keyword.kwlist)
+ if use_old_parser():
+ all_keywords.discard('__peg_parser__')
+ for key in all_keywords:
with self.assertRaises(SyntaxError):
exec(f"{key} = 42")