diff --git a/clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp b/clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp index 37eacf565f199..532a43bad7412 100644 --- a/clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp +++ b/clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp @@ -214,10 +214,12 @@ bool UnrollLoopsCheck::hasLargeNumIterations(const Stmt *Statement, Iterations = ceil(float(InitValue - EndValue) / ConstantValue); break; case (BO_MulAssign): - Iterations = 1 + (log(EndValue) - log(InitValue)) / log(ConstantValue); + Iterations = 1 + (log((double)EndValue) - log((double)InitValue)) / + log((double)ConstantValue); break; case (BO_DivAssign): - Iterations = 1 + (log(InitValue) - log(EndValue)) / log(ConstantValue); + Iterations = 1 + (log((double)InitValue) - log((double)EndValue)) / + log((double)ConstantValue); break; default: // All other operators are not handled; assume large bounds.