diff options
Diffstat (limited to 'gcc/f/stb.c')
-rw-r--r-- | gcc/f/stb.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/f/stb.c b/gcc/f/stb.c index 9cf655fa56b..90ae83d5637 100644 --- a/gcc/f/stb.c +++ b/gcc/f/stb.c @@ -9214,14 +9214,14 @@ ffestb_R10014_ (ffelexToken t) } if (ffestb_local_.format.sign) { - for (i = 0; i < ffelex_token_length (t); ++i) + for (i = ffelex_token_length (t) + 1; i > 0; --i) ffestb_local_.format.pre.u.signed_val *= 10; ffestb_local_.format.pre.u.signed_val += strtoul (ffelex_token_text (t), NULL, 10); } else { - for (i = 0; i < ffelex_token_length (t); ++i) + for (i = ffelex_token_length (t) + 1; i > 0; --i) ffestb_local_.format.pre.u.unsigned_val *= 10; ffestb_local_.format.pre.u.unsigned_val += strtoul (ffelex_token_text (t), NULL, 10); @@ -10105,7 +10105,7 @@ ffestb_R10016_ (ffelexToken t) ffebad_finish (); return (ffelexHandler) ffestb_R10016_; } - for (i = 0; i < ffelex_token_length (t); ++i) + for (i = ffelex_token_length (t) + 1; i > 0; --i) ffestb_local_.format.post.u.unsigned_val *= 10; ffestb_local_.format.post.u.unsigned_val += strtoul (ffelex_token_text (t), NULL, 10); @@ -10205,7 +10205,7 @@ ffestb_R10018_ (ffelexToken t) ffebad_finish (); return (ffelexHandler) ffestb_R10018_; } - for (i = 0; i < ffelex_token_length (t); ++i) + for (i = ffelex_token_length (t) + 1; i > 0; --i) ffestb_local_.format.dot.u.unsigned_val *= 10; ffestb_local_.format.dot.u.unsigned_val += strtoul (ffelex_token_text (t), NULL, 10); @@ -10332,7 +10332,7 @@ ffestb_R100110_ (ffelexToken t) ffebad_finish (); return (ffelexHandler) ffestb_R100110_; } - for (i = 0; i < ffelex_token_length (t); ++i) + for (i = ffelex_token_length (t) + 1; i > 0; --i) ffestb_local_.format.exp.u.unsigned_val *= 10; ffestb_local_.format.exp.u.unsigned_val += strtoul (ffelex_token_text (t), NULL, 10); |