diff options
-rw-r--r-- | lib/AST/ExprConstant.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/AST/ExprConstant.cpp b/lib/AST/ExprConstant.cpp index 7e094fd133..26ea2256d4 100644 --- a/lib/AST/ExprConstant.cpp +++ b/lib/AST/ExprConstant.cpp @@ -3102,7 +3102,7 @@ static ICEDiag CheckICE(const Expr* E, ASTContext &Ctx) { case Expr::CXXConstCastExprClass: case Expr::ObjCBridgedCastExprClass: { const Expr *SubExpr = cast<CastExpr>(E)->getSubExpr(); - if (E->getStmtClass() != Expr::ImplicitCastExprClass && + if (isa<ExplicitCastExpr>(E) && isa<FloatingLiteral>(SubExpr->IgnoreParenImpCasts())) return NoDiag(); switch (cast<CastExpr>(E)->getCastKind()) { |