[flang-commits] [flang] [flang][runtime] Fix integer overflow check in FORMAT (PR #79368)
via flang-commits
flang-commits at lists.llvm.org
Wed Jan 24 16:10:44 PST 2024
================
@@ -214,15 +215,13 @@ template <typename CHAR> void FormatValidator<CHAR>::NextToken() {
case '7':
case '8':
case '9': {
- int64_t lastValue;
const CHAR *lastCursor;
integerValue_ = 0;
bool overflow{false};
do {
- lastValue = integerValue_;
lastCursor = cursor_;
integerValue_ = 10 * integerValue_ + c - '0';
- if (lastValue > integerValue_) {
+ if (integerValue_ > std::numeric_limits<int>::max()) {
----------------
vdonaldson wrote:
Why restrict values to 32 bits? Don't we typically accommodate 64 values by "default"?
https://github.com/llvm/llvm-project/pull/79368
More information about the flang-commits
mailing list