ZeroDivisionError for `complex` too

This commit is contained in:
Alex Waygood 2025-07-14 17:54:58 +01:00
parent 3aa91a853e
commit dec1d2e8fc
2 changed files with 7 additions and 1 deletions

View File

@ -143,6 +143,9 @@ bool(1) / False
# error: "Cannot divide object of type `float` by zero"
reveal_type(1.0 / 0) # revealed: int | float
# error: "Cannot divide object of type `complex` by zero"
reveal_type(0j / 0) # revealed: int | float | complex
class MyInt(int): ...
# No error for a subclass of int

View File

@ -6444,7 +6444,10 @@ impl<'db, 'ast> TypeInferenceBuilder<'db, 'ast> {
true
}
Type::NominalInstance(instance)
if matches!(instance.class.known(self.db()), Some(KnownClass::Float)) =>
if matches!(
instance.class.known(self.db()),
Some(KnownClass::Float | KnownClass::Complex)
) =>
{
false
}