diff options
author | Ted Kremenek <kremenek@apple.com> | 2010-03-25 03:59:09 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2010-03-25 03:59:09 +0000 |
commit | 186508c7d6d3c0b7b8024550c4e3162b2b1a8929 (patch) | |
tree | 7b7d1a88754ec804dec6949ad60220307db715f4 /clang/lib/Analysis/PrintfFormatString.cpp | |
parent | ac418d44eddd5243c04d446bfaec9bb4ffab5f1f (diff) | |
download | bcm5719-llvm-186508c7d6d3c0b7b8024550c4e3162b2b1a8929.tar.gz bcm5719-llvm-186508c7d6d3c0b7b8024550c4e3162b2b1a8929.zip |
Fix '+=' accumulation error when parsing numeric amounts in a format string.
llvm-svn: 99479
Diffstat (limited to 'clang/lib/Analysis/PrintfFormatString.cpp')
-rw-r--r-- | clang/lib/Analysis/PrintfFormatString.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Analysis/PrintfFormatString.cpp b/clang/lib/Analysis/PrintfFormatString.cpp index 46acc8a377b..c38aae34764 100644 --- a/clang/lib/Analysis/PrintfFormatString.cpp +++ b/clang/lib/Analysis/PrintfFormatString.cpp @@ -75,7 +75,7 @@ static OptionalAmount ParseAmount(const char *&Beg, const char *E) { char c = *I; if (c >= '0' && c <= '9') { hasDigits = true; - accumulator += (accumulator * 10) + (c - '0'); + accumulator = (accumulator * 10) + (c - '0'); continue; } |