summaryrefslogtreecommitdiff
path: root/astroid/brain/brain_dataclasses.py
diff options
context:
space:
mode:
authorDaniƫl van Noord <13665637+DanielNoord@users.noreply.github.com>2022-09-06 12:21:11 +0200
committerGitHub <noreply@github.com>2022-09-06 12:21:11 +0200
commitda3e9fbb9ef2686e573a0dd3dcbed873d1ee7873 (patch)
tree4c357125a150d9f2f2900420c3b2726299ae8ece /astroid/brain/brain_dataclasses.py
parent58af36bb3ac8a93f30dc5bfd0fe90f8a2f61c32a (diff)
downloadastroid-git-da3e9fbb9ef2686e573a0dd3dcbed873d1ee7873.tar.gz
Fix crash in ``dataclass`` brain (#1768)
Diffstat (limited to 'astroid/brain/brain_dataclasses.py')
-rw-r--r--astroid/brain/brain_dataclasses.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/astroid/brain/brain_dataclasses.py b/astroid/brain/brain_dataclasses.py
index 6549300c..3c83a259 100644
--- a/astroid/brain/brain_dataclasses.py
+++ b/astroid/brain/brain_dataclasses.py
@@ -231,7 +231,9 @@ def _generate_dataclass_init(
assignments.append(assignment_str)
try:
- base: ClassDef = next(next(iter(node.bases)).infer())
+ base = next(next(iter(node.bases)).infer())
+ if not isinstance(base, ClassDef):
+ raise InferenceError
base_init: FunctionDef | None = base.locals["__init__"][0]
except (StopIteration, InferenceError, KeyError):
base_init = None