@@ -328,8 +328,12 @@ class C:
328328
329329class C2(C): ...
330330
331+ class C3(C):
332+ def __init__(self) -> None: ...
333+
331334C() # E: function __main__.C.__init__ is deprecated: call `make_c()` instead
332335C2() # E: function __main__.C.__init__ is deprecated: call `make_c()` instead
336+ C3()
333337
334338class D:
335339 @deprecated("call `make_d()` instead")
@@ -339,8 +343,12 @@ class D:
339343
340344class D2(D): ...
341345
346+ class D3(D):
347+ def __new__(cls) -> D3: ...
348+
342349D() # E: function __main__.D.__new__ is deprecated: call `make_d()` instead
343350D2() # E: function __main__.D.__new__ is deprecated: call `make_d()` instead
351+ D3()
344352
345353[builtins fixtures/tuple.pyi]
346354
@@ -379,22 +387,31 @@ class A:
379387 @deprecated("do not use")
380388 def __init__(self) -> None: ...
381389
382- class B(A): ...
390+ class B1(A): ...
391+
392+ class B2(A):
393+ def __init__(self) -> None: ...
383394
384395A_alias = A
385396A_explicit_alias: TypeAlias = A
386- B_alias = B
387- B_explicit_alias: TypeAlias = B
397+ B1_alias = B1
398+ B1_explicit_alias: TypeAlias = B1
399+ B2_alias = B2
400+ B2_explicit_alias: TypeAlias = B2
388401
389402A_alias() # E: function __main__.A.__init__ is deprecated: do not use
390403A_explicit_alias() # E: function __main__.A.__init__ is deprecated: do not use
391- B_alias() # E: function __main__.A.__init__ is deprecated: do not use
392- B_explicit_alias() # E: function __main__.A.__init__ is deprecated: do not use
404+ B1_alias() # E: function __main__.A.__init__ is deprecated: do not use
405+ B1_explicit_alias() # E: function __main__.A.__init__ is deprecated: do not use
406+ B2_alias()
407+ B2_explicit_alias()
393408
394409A_alias
395410A_explicit_alias
396- B_alias
397- B_explicit_alias
411+ B1_alias
412+ B1_explicit_alias
413+ B2_alias
414+ B2_explicit_alias
398415
399416[builtins fixtures/tuple.pyi]
400417
0 commit comments