From: Douglas Gregor Date: Thu, 30 Oct 2008 13:47:07 +0000 (+0000) Subject: Fix arithmetic type check X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a7fbf7282eadebaf1293d9f970b01fb57f4b0ae4;p=clang Fix arithmetic type check git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58429 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AST/Type.cpp b/lib/AST/Type.cpp index 87b91ae2ea..3898ba056b 100644 --- a/lib/AST/Type.cpp +++ b/lib/AST/Type.cpp @@ -587,7 +587,8 @@ bool Type::isRealType() const { bool Type::isArithmeticType() const { if (const BuiltinType *BT = dyn_cast(CanonicalType)) - return BT->getKind() != BuiltinType::Void; + return BT->getKind() >= BuiltinType::Bool && + BT->getKind() <= BuiltinType::LongDouble; if (const EnumType *ET = dyn_cast(CanonicalType)) // GCC allows forward declaration of enum types (forbid by C99 6.7.2.3p2). // If a body isn't seen by the time we get here, return false.