Index: src/compiler/typer.cc |
diff --git a/src/compiler/typer.cc b/src/compiler/typer.cc |
index 33112a4568a2ede62b6f633492fe60f8e75da560..9bb0613c71dabe325c88bfe553b2fdf2b0de08b0 100644 |
--- a/src/compiler/typer.cc |
+++ b/src/compiler/typer.cc |
@@ -423,8 +423,8 @@ Type* Typer::Visitor::ToBoolean(Type* type, Typer* t) { |
if (type->Is(Type::Boolean())) return type; |
if (type->Is(t->falsish_)) return t->singleton_false_; |
if (type->Is(t->truish_)) return t->singleton_true_; |
- if (type->Is(Type::PlainNumber()) && (type->Max() < 0 || 0 < type->Min())) { |
- return t->singleton_true_; // Ruled out nan, -0 and +0. |
+ if (type->Is(Type::Number())) { |
+ return t->operation_typer()->NumberToBoolean(type); |
} |
return Type::Boolean(); |
} |