Reports invalid usages of a class with __slots__ definitions.
Example when accessing undefined attributes:
class Foo:
__slots__ = ['foo', 'bar']
def __init__(self):
self.x = 3 # error: 'x' is not defined in __slots__
Example of conflicting attributes:
class A:
__slots__ = ("x",)
x = 42 # error: conflict with "x" listed in __slots__
Example slots=True:
from dataclasses import dataclass
@dataclass(slots=True) # error: __slots__ is also defined in Foo
class Foo:
__slots__ = ['a']