From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kaveh R. Ghazi" To: law@cygnus.com Cc: egcs@cygnus.com Subject: egcs, patch for gcc.c to utilize system.h Date: Fri, 13 Feb 1998 17:41:00 -0000 Message-id: <199802131938.OAA12148@caip.rutgers.edu> X-SW-Source: 1998-02/msg00644.html This patch makes gcc/gcc.c use system.h. It requires the patch to system.h I sent in a previous message. --Kaveh Fri Feb 13 14:02:36 1998 Kaveh R. Ghazi * gcc.c: Get system includes, prototypes and macros via "system.h" instead of doing it manually. Change all calls of the ctype macros to custom versions defined in "system.h". --- gcc.c.orig Fri Feb 13 13:57:33 1998 +++ gcc.c Fri Feb 13 13:58:30 1998 @@ -33,51 +33,18 @@ #include "config.h" -#include -#include -#include -#include -#include - -#ifdef HAVE_SYS_FILE_H -#include /* May get R_OK, etc. on some systems. */ -#endif - -#include "obstack.h" #include "gansidecl.h" +#include "system.h" +#include #ifdef __STDC__ #include #else #include #endif -#include - -#ifdef HAVE_STRING_H -#include -#else -#ifdef HAVE_STRINGS_H -#include -#endif -#endif -#ifdef HAVE_UNISTD_H -#include -#endif - -#ifdef HAVE_STDLIB_H -#include -#endif - -#ifdef HAVE_FCNTL_H -#include -#endif +#include "obstack.h" -#ifndef R_OK -#define R_OK 4 -#define W_OK 2 -#define X_OK 1 -#endif /* ??? Need to find a GCC header to put these in. */ extern int pexecute PROTO ((const char *, char * const *, const char *, @@ -154,15 +121,8 @@ #define obstack_chunk_alloc xmalloc #define obstack_chunk_free free -extern void free (); -extern char *getenv (); - extern char *choose_temp_base PROTO((void)); -#ifndef errno -extern int errno; -#endif - #ifndef HAVE_STRERROR extern int sys_nerr; extern char *sys_errlist[]; @@ -1219,7 +1179,7 @@ } old_spec = *(sl->ptr_spec); - *(sl->ptr_spec) = ((spec[0] == '+' && isspace (spec[1])) + *(sl->ptr_spec) = ((spec[0] == '+' && ISSPACE (spec[1])) ? concat (old_spec, spec + 1, NULL_PTR) : save_string (spec, strlen (spec))); @@ -1507,12 +1467,12 @@ while (*p1 == ' ' || *p1 == '\t') p1++; - if (! isalpha (*p1)) + if (! ISALPHA (*p1)) fatal ("specs %%rename syntax malformed after %d characters", p1 - buffer); p2 = p1; - while (*p2 && !isspace (*p2)) + while (*p2 && !ISSPACE (*p2)) p2++; if (*p2 != ' ' && *p2 != '\t') @@ -1524,13 +1484,13 @@ while (*p2 == ' ' || *p2 == '\t') p2++; - if (! isalpha (*p2)) + if (! ISALPHA (*p2)) fatal ("specs %%rename syntax malformed after %d characters", p2 - buffer); /* Get new spec name */ p3 = p2; - while (*p3 && !isspace (*p3)) + while (*p3 && !ISSPACE (*p3)) p3++; if (p3 != p-1) @@ -2721,7 +2681,7 @@ && (value[len - 8] == '/' || value[len - 8] == DIR_SEPARATOR))) && strncmp (value + len - 7, "stage", 5) == 0 - && isdigit (value[len - 2]) + && ISDIGIT (value[len - 2]) && (value[len - 1] == '/' || value[len - 1] == DIR_SEPARATOR)) { @@ -3385,7 +3345,7 @@ In 2.4, do something about that. */ struct temp_name *t; char *suffix = p; - while (*p == '.' || isalpha (*p) + while (*p == '.' || ISALPHA (*p) || (p[0] == '%' && p[1] == 'O')) p++; @@ -3674,7 +3634,7 @@ *x++ = *y++; if (*y != '_' - || (*(y+1) != '_' && ! isupper (*(y+1)))) + || (*(y+1) != '_' && ! ISUPPER (*(y+1)))) { /* Stick __ at front of macro name. */ *x++ = '_'; @@ -3716,7 +3676,7 @@ y += 2; if (*y != '_' - || (*(y+1) != '_' && ! isupper (*(y+1)))) + || (*(y+1) != '_' && ! ISUPPER (*(y+1)))) { /* Stick -D__ at front of macro name. */ *x++ = '-'; @@ -3890,7 +3850,7 @@ ([^0-9]*-)?[0-9]+[.][0-9]+([.][0-9]+)?([- ].*)? */ /* Ignore leading non-digits. i.e. "foo-" in "foo-2.7.2". */ - while (! isdigit (*v)) + while (! ISDIGIT (*v)) v++; if (v > compiler_version && v[-1] != '-') abort (); @@ -3899,7 +3859,7 @@ if (c1 == '2') { /* Set V after the first period. */ - while (isdigit (*v)) + while (ISDIGIT (*v)) v++; if (*v != '.') abort (); @@ -3908,7 +3868,7 @@ /* Set Q at the next period or at the end. */ q = v; - while (isdigit (*q)) + while (ISDIGIT (*q)) q++; if (*q != 0 && *q != ' ' && *q != '.' && *q != '-') abort (); -- Kaveh R. Ghazi Project Manager / Custom Development ghazi@caip.rutgers.edu ICon CMT Corp.