mirror of
https://github.com/python/cpython.git
synced 2025-08-03 16:39:00 +00:00
gh-119180: PEP 649 compiler changes (#119361)
This commit is contained in:
parent
02c1dfff07
commit
9b8611eeea
28 changed files with 610 additions and 329 deletions
|
@ -39,16 +39,19 @@ class OpcodeTest(unittest.TestCase):
|
|||
def test_use_existing_annotations(self):
|
||||
ns = {'__annotations__': {1: 2}}
|
||||
exec('x: int', ns)
|
||||
self.assertEqual(ns['__annotations__'], {'x': int, 1: 2})
|
||||
self.assertEqual(ns['__annotations__'], {1: 2})
|
||||
|
||||
def test_do_not_recreate_annotations(self):
|
||||
# Don't rely on the existence of the '__annotations__' global.
|
||||
with support.swap_item(globals(), '__annotations__', {}):
|
||||
del globals()['__annotations__']
|
||||
globals().pop('__annotations__', None)
|
||||
class C:
|
||||
del __annotations__
|
||||
with self.assertRaises(NameError):
|
||||
x: int
|
||||
try:
|
||||
del __annotations__
|
||||
except NameError:
|
||||
pass
|
||||
x: int
|
||||
self.assertEqual(C.__annotations__, {"x": int})
|
||||
|
||||
def test_raise_class_exceptions(self):
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue