don't check that the first character is XID_Continue

Current, XID_Continue is a superset of XID_Start, but that may sometime change.
This commit is contained in:
Benjamin Peterson 2011-09-28 08:09:05 -04:00
parent d83f226d93
commit 9c6e6a0c7f
2 changed files with 2 additions and 5 deletions

View File

@ -19,10 +19,7 @@ class PEP3131Test(unittest.TestCase):
𝔘𝔫𝔦𝔠𝔬𝔡𝔢 = 1 𝔘𝔫𝔦𝔠𝔬𝔡𝔢 = 1
# On wide builds, this is normalized, but on narrow ones it is not. See # On wide builds, this is normalized, but on narrow ones it is not. See
# #12746. # #12746.
try: self.assertIn("Unicode", dir())
self.assertIn("𝔘𝔫𝔦𝔠𝔬𝔡𝔢", dir())
except AssertionError:
raise unittest.case._ExpectedFailure(sys.exc_info())
def test_invalid(self): def test_invalid(self):
try: try:

View File

@ -10196,7 +10196,7 @@ PyUnicode_IsIdentifier(PyObject *self)
if (!_PyUnicode_IsXidStart(first) && first != 0x5F /* LOW LINE */) if (!_PyUnicode_IsXidStart(first) && first != 0x5F /* LOW LINE */)
return 0; return 0;
for (i = 0; i < PyUnicode_GET_LENGTH(self); i++) for (i = 1; i < PyUnicode_GET_LENGTH(self); i++)
if (!_PyUnicode_IsXidContinue(PyUnicode_READ(kind, data, i))) if (!_PyUnicode_IsXidContinue(PyUnicode_READ(kind, data, i)))
return 0; return 0;
return 1; return 1;