From 82ad8908c149a7cbaf3ce7b9d7697ea10ddce7ae Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Mon, 16 Mar 2026 23:44:16 +0100 Subject: [PATCH] Allow errors for unsound Self definitions on non-final classes --- conformance/tests/generics_self_advanced.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/conformance/tests/generics_self_advanced.py b/conformance/tests/generics_self_advanced.py index ab389081..e26ed667 100644 --- a/conformance/tests/generics_self_advanced.py +++ b/conformance/tests/generics_self_advanced.py @@ -40,6 +40,9 @@ def method2(self) -> None: @classmethod def method3(cls) -> None: assert_type(cls, type[Self]) - assert_type(cls.a, list[Self]) - assert_type(cls.a[0], Self) + # Allow type checkers to error here, since Self definitions on + # non-final classes are unsound. + a = cls.a # E? + assert_type(a, list[Self]) + assert_type(a[0], Self) assert_type(cls.method1(), Self)