diff options
author | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | 2001-11-10 04:46:01 +0000 |
---|---|---|
committer | Kaveh Ghazi <ghazi@gcc.gnu.org> | 2001-11-10 04:46:01 +0000 |
commit | 9e1ac9154abc68bb0ebaf2b2585b0a204c616240 (patch) | |
tree | 1c7f6cbe3e1a0a7f7e51eb6544697b4147b98b27 /gcc | |
parent | 57870f8acd9cb9d86c18104702e6752b9cb08171 (diff) | |
download | gcc-9e1ac9154abc68bb0ebaf2b2585b0a204c616240.zip gcc-9e1ac9154abc68bb0ebaf2b2585b0a204c616240.tar.gz gcc-9e1ac9154abc68bb0ebaf2b2585b0a204c616240.tar.bz2 |
cppexp.c (parse_number): Use ISXDIGIT/hex_value.
* cppexp.c (parse_number): Use ISXDIGIT/hex_value.
* cpplex.c (hex_digit_value): Use hex_p/hex_value.
* cppmain.c (general_init): Call hex_init.
From-SVN: r46912
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cppexp.c | 11 | ||||
-rw-r--r-- | gcc/cpplex.c | 11 | ||||
-rw-r--r-- | gcc/cppmain.c | 1 |
4 files changed, 12 insertions, 15 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index face7bd..86b64a7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2001-11-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + * cppexp.c (parse_number): Use ISXDIGIT/hex_value. + * cpplex.c (hex_digit_value): Use hex_p/hex_value. + * cppmain.c (general_init): Call hex_init. + * config.gcc (i[34567]86-dg-dgux*): Don't set `out_file'. * i386/dgux.h (ASM_FILE_START): Set to the meaningful portions diff --git a/gcc/cppexp.c b/gcc/cppexp.c index ac222ee..f7fe054 100644 --- a/gcc/cppexp.c +++ b/gcc/cppexp.c @@ -129,14 +129,9 @@ parse_number (pfile, tok) { c = *p; - if (ISDIGIT (c)) - digit = c - '0'; - /* We believe that in all live character sets, a-f are - consecutive, and so are A-F. */ - else if (base == 16 && c >= 'a' && c <= 'f') - digit = c - 'a' + 10; - else if (base == 16 && c >= 'A' && c <= 'F') - digit = c - 'A' + 10; + if (ISDIGIT (c) + || (base == 16 && ISXDIGIT (c))) + digit = hex_value (c); else break; diff --git a/gcc/cpplex.c b/gcc/cpplex.c index a15fcca..f9af8b7 100644 --- a/gcc/cpplex.c +++ b/gcc/cpplex.c @@ -1601,13 +1601,10 @@ static unsigned int hex_digit_value (c) unsigned int c; { - if (c >= 'a' && c <= 'f') - return c - 'a' + 10; - if (c >= 'A' && c <= 'F') - return c - 'A' + 10; - if (c >= '0' && c <= '9') - return c - '0'; - abort (); + if (hex_p (c)) + return hex_value (c); + else + abort (); } /* Parse a '\uNNNN' or '\UNNNNNNNN' sequence. Returns 1 to indicate diff --git a/gcc/cppmain.c b/gcc/cppmain.c index 246c152..02dfdb7 100644 --- a/gcc/cppmain.c +++ b/gcc/cppmain.c @@ -100,6 +100,7 @@ general_init (argv0) xmalloc_set_program_name (progname); + hex_init (); gcc_init_libintl (); } |