From 878a5794e087205c4072dbf4ade21eb07587de76 Mon Sep 17 00:00:00 2001 From: Bruce Korb Date: Wed, 12 Jul 2000 14:45:05 +0000 Subject: [PATCH] removed dinkleberries and use xmalloc instead of a private version From-SVN: r34986 --- gcc/ChangeLog | 10 ++++++++ gcc/fixinc/fixfixes.c | 2 +- gcc/fixinc/fixincl.c | 2 ++ gcc/fixinc/fixlib.c | 54 +++++++++++++++++++++++++++++++------------ gcc/fixinc/fixlib.h | 7 +++++- gcc/fixinc/fixtests.c | 3 --- 6 files changed, 58 insertions(+), 20 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index efd792c11d7..cf039beecbc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2000-07-12 Bruce Korb + + * fixinc/fixfixes.c: use xmalloc + * fixinc/fixincl.c(initialize): set program name for xmalloc + * fixinc/fixlib.c(must_malloc): obsolete + (is_cxx_header): no longer used - disabled + (skip_quote): inserted and disabled for future use + * fixinc/fixlib.h: reflects above + * fixinc/fixtests.c: removed dinkleberries + 2000-07-12 Neil Booth * cpphash.h: (TOKEN_SPELL) Pulled from cpplex.c. diff --git a/gcc/fixinc/fixfixes.c b/gcc/fixinc/fixfixes.c index 4719a51ab61..dd08e808dcf 100644 --- a/gcc/fixinc/fixfixes.c +++ b/gcc/fixinc/fixfixes.c @@ -567,7 +567,7 @@ FIX_PROC_HEAD( wrap_fix ) *(pz_dst++) = '_'; if (++len >= sizeof( z_fixname )) { - void* p = must_malloc( len + strlen( pz_src ) + 1 ); + void* p = xmalloc( len + strlen( pz_src ) + 1 ); memcpy( p, (void*)z_fixname, len ); pz_name = (tCC*)p; pz_dst = (char*)pz_name + len; diff --git a/gcc/fixinc/fixincl.c b/gcc/fixinc/fixincl.c index 1dfc6adaf4f..113827fef2f 100644 --- a/gcc/fixinc/fixincl.c +++ b/gcc/fixinc/fixincl.c @@ -206,6 +206,8 @@ initialize ( argc, argv ) "fixincl ERROR: %s environment variable not defined\n\ \tTARGET_MACHINE, DESTDIR, SRCDIR and FIND_BASE are required\n"; + xmalloc_set_program_name (argv[0]); + switch (argc) { case 1: diff --git a/gcc/fixinc/fixlib.c b/gcc/fixinc/fixlib.c index bafe2612c07..c2c77ebe0e5 100644 --- a/gcc/fixinc/fixlib.c +++ b/gcc/fixinc/fixlib.c @@ -24,20 +24,6 @@ Boston, MA 02111-1307, USA. */ #include "fixlib.h" -void * -must_malloc( siz ) - size_t siz; -{ - void* res = malloc( siz ); - - if (res == (void*)NULL) { - fprintf( stderr, "fixincl failed to malloc %d bytes\n", siz ); - exit( 3 ); - } - - return res; -} - /* * * * * * * * * * * * * load_file_data loads all the contents of a file into malloc-ed memory. @@ -95,7 +81,7 @@ load_file_data (fp) return pz_data; } - +#ifdef IS_CXX_HEADER_NEEDED t_bool is_cxx_header (fname, text) tCC *fname; @@ -153,6 +139,44 @@ template[ \t]*<|\ return BOOL_FALSE; } +#endif /* CXX_TYPE_NEEDED */ + +#ifdef SKIP_QUOTE_NEEDED +/* + * Skip over a quoted string. Single quote strings may + * contain multiple characters if the first character is + * a backslash. Especially a backslash followed by octal digits. + * We are not doing a correctness syntax check here. + */ +tCC* +skip_quote( q, text ) + char q; + char* text; +{ + for (;;) + { + char ch = *(text++); + switch (ch) + { + case '\\': + text++; /* skip over whatever character follows */ + break; + + case '"': + case '\'': + if (ch != q) + break; + /*FALLTHROUGH*/ + + case '\n': + case NUL: + goto skip_done; + } + } skip_done:; + + return text; +} +#endif /* SKIP_QUOTE_NEEDED */ /* * * * * * * * * * * * * diff --git a/gcc/fixinc/fixlib.h b/gcc/fixinc/fixlib.h index 5cbf41239da..99975532d73 100644 --- a/gcc/fixinc/fixlib.h +++ b/gcc/fixinc/fixlib.h @@ -31,6 +31,7 @@ Boston, MA 02111-1307, USA. */ #include "gnu-regex.h" #include "machname.h" +#include "libiberty.h" #ifndef STDIN_FILENO # define STDIN_FILENO 0 @@ -152,10 +153,14 @@ struct fix_desc * Exported procedures */ char * load_file_data _P_(( FILE* fp )); +#ifdef IS_CXX_HEADER_NEEDED t_bool is_cxx_header _P_(( tCC* filename, tCC* filetext )); +#endif /* IS_CXX_HEADER_NEEDED */ +#ifdef SKIP_QUOTE_NEEDED +tCC* skip_quote _P_(( char q, char* text )); +#endif void compile_re _P_(( tCC* pat, regex_t* re, int match, tCC *e1, tCC *e2 )); -void* must_malloc _P_(( size_t )); void apply_fix _P_(( tFixDesc* p_fixd, tCC* filname )); apply_fix_p_t run_test _P_((tCC* t_name, tCC* f_name, tCC* text )); diff --git a/gcc/fixinc/fixtests.c b/gcc/fixinc/fixtests.c index 36dd6553b14..0da04b51774 100644 --- a/gcc/fixinc/fixtests.c +++ b/gcc/fixinc/fixtests.c @@ -47,9 +47,6 @@ Boston, MA 02111-1307, USA. */ #include "fixlib.h" -#define SHOULD_APPLY(afp) ((afp) == APPLY_FIX) -apply_fix_p_t run_test(); - typedef struct { tCC* test_name; apply_fix_p_t (*test_proc)(); -- 2.30.2