diff options
author | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | 2001-12-16 13:58:07 +0000 |
---|---|---|
committer | Kaveh Ghazi <ghazi@gcc.gnu.org> | 2001-12-16 13:58:07 +0000 |
commit | faf318664d85a4bfcf278a4475904ec850b4efb7 (patch) | |
tree | 98edefa5013064e1fe081d29fa44021bb5888015 /gcc/f | |
parent | 15bc166fa03cdd7ab76c21ed2165b1f024042322 (diff) | |
download | gcc-faf318664d85a4bfcf278a4475904ec850b4efb7.zip gcc-faf318664d85a4bfcf278a4475904ec850b4efb7.tar.gz gcc-faf318664d85a4bfcf278a4475904ec850b4efb7.tar.bz2 |
c-lex.c (lex_number): Use ISXDIGIT/hex_value.
* c-lex.c (lex_number): Use ISXDIGIT/hex_value.
* vax/xm-vms.h (FILE_NAME_NONDIRECTORY): Use ISUPPER/TOLOWER.
* fold-const.c (real_hex_to_f): Use hex_value.
* real.c (asctoeg): Use hex_value & ISXDIGIT.
* toplev.c (toplev_main): Call hex_init.
* tradcpp.c (main): Call hex_init.
From-SVN: r48068
Diffstat (limited to 'gcc/f')
-rw-r--r-- | gcc/f/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/f/lex.c | 16 | ||||
-rw-r--r-- | gcc/f/target.c | 16 |
3 files changed, 12 insertions, 26 deletions
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog index 1e6193a..6dfb6b8 100644 --- a/gcc/f/ChangeLog +++ b/gcc/f/ChangeLog @@ -1,3 +1,9 @@ +Sun Dec 16 08:52:48 2001 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + + * lex.c (ffelex_backslash_, ffelex_cfebackslash_): Use hex_value. + * target.c (ffetarget_integerhex, ffetarget_typeless_hex): Use + hex_p/hex_value. + 2001-12-14 Roger Sayle <roger@eyesopen.com> * com-rt.def: Use __builtin_sqrt instead of __builtin_fsqrt. diff --git a/gcc/f/lex.c b/gcc/f/lex.c index d0aa829..6169656 100644 --- a/gcc/f/lex.c +++ b/gcc/f/lex.c @@ -396,13 +396,7 @@ ffelex_backslash_ (int c, ffewhereColumnNumber col) case 2: if (ISXDIGIT (c)) { - code *= 16; - if (c >= 'a' && c <= 'f') - code += c - 'a' + 10; - if (c >= 'A' && c <= 'F') - code += c - 'A' + 10; - if (ISDIGIT (c)) - code += c - '0'; + code = (code * 16) + hex_value (c); if (code != 0 || count != 0) { if (count == 0) @@ -603,13 +597,7 @@ ffelex_cfebackslash_ (int *use_d, int *d, FILE *finput) *d = c; break; } - code *= 16; - if (c >= 'a' && c <= 'f') - code += c - 'a' + 10; - if (c >= 'A' && c <= 'F') - code += c - 'A' + 10; - if (ISDIGIT (c)) - code += c - '0'; + code = (code * 16) + hex_value (c); if (code != 0 || count != 0) { if (count == 0) diff --git a/gcc/f/target.c b/gcc/f/target.c index 7bda032..11fb0b1 100644 --- a/gcc/f/target.c +++ b/gcc/f/target.c @@ -1447,12 +1447,8 @@ ffetarget_integerhex (ffetargetIntegerDefault *val, ffelexToken integer) bad_digit = FALSE; while (c != '\0') { - if ((c >= 'A') && (c <= 'F')) - c = c - 'A' + 10; - else if ((c >= 'a') && (c <= 'f')) - c = c - 'a' + 10; - else if (ISDIGIT (c)) - c -= '0'; + if (hex_p (c)) + c = hex_value (c); else { bad_digit = TRUE; @@ -2482,12 +2478,8 @@ ffetarget_typeless_hex (ffetargetTypeless *xvalue, ffelexToken token) new_value <<= 4; if ((new_value >> 4) != value) overflow = TRUE; - if (ISDIGIT (c)) - new_value += c - '0'; - else if ((c >= 'A') && (c <= 'F')) - new_value += c - 'A' + 10; - else if ((c >= 'a') && (c <= 'f')) - new_value += c - 'a' + 10; + if (hex_p (c)) + new_value += hex_value (c); else bad_digit = TRUE; value = new_value; |