summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/cppalloc.c10
-rw-r--r--gcc/cppfiles.c8
-rw-r--r--gcc/cpplib.c18
-rw-r--r--gcc/cpplib.h2
5 files changed, 24 insertions, 22 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ea9f1d09178..0b4e5a84db9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,13 @@
1998-12-15 Zack Weinberg <zack@rabi.phys.columbia.edu>
+ * cppalloc.c: Add xstrdup here.
+ * cpplib.h: Remove savestring prototype.
+ * cpplib.c: Remove savestring function. s/savestring/xstrdup/
+ throughout.
+ * cppfiles.c: s/savestring/xstrdup/ throughout.
+
+1998-12-15 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
* cpplib.c: Make all directive handlers read their own
arguments.
(struct directive): Remove last two arguments from FUNC
diff --git a/gcc/cppalloc.c b/gcc/cppalloc.c
index a852d00cb15..880a56dba62 100644
--- a/gcc/cppalloc.c
+++ b/gcc/cppalloc.c
@@ -65,3 +65,13 @@ xrealloc (old, size)
memory_full ();
return ptr;
}
+
+char *
+xstrdup (input)
+ const char *input;
+{
+ unsigned size = strlen (input);
+ char *output = xmalloc (size + 1);
+ strcpy (output, input);
+ return output;
+}
diff --git a/gcc/cppfiles.c b/gcc/cppfiles.c
index 8c01cddc787..108bf8751fb 100644
--- a/gcc/cppfiles.c
+++ b/gcc/cppfiles.c
@@ -74,7 +74,7 @@ append_include_chain (pfile, list, dir, sysp)
struct stat st;
unsigned int len;
- dir = savestring (dir);
+ dir = xstrdup (dir);
simplify_pathname (dir);
if (stat (dir, &st))
{
@@ -410,7 +410,7 @@ find_include_file (pfile, fname, search_start, ihash, before)
}
*before = 0;
*ihash = ih;
- ih->nshort = savestring (fname);
+ ih->nshort = xstrdup (fname);
ih->control_macro = NULL;
/* If the pathname is absolute, just open it. */
@@ -539,7 +539,7 @@ read_name_map (pfile, dirname)
map_list_ptr = ((struct file_name_map_list *)
xmalloc (sizeof (struct file_name_map_list)));
- map_list_ptr->map_list_name = savestring (dirname);
+ map_list_ptr->map_list_name = xstrdup (dirname);
name = (char *) alloca (strlen (dirname) + strlen (FILE_NAME_MAP_FILE) + 2);
strcpy (name, dirname);
@@ -772,7 +772,7 @@ actual_directory (pfile, fname)
size_t dlen;
struct file_name_list *x;
- dir = savestring (fname);
+ dir = xstrdup (fname);
last_slash = rindex (dir, '/');
if (last_slash)
{
diff --git a/gcc/cpplib.c b/gcc/cpplib.c
index 537d2dce404..fb85bf56ffb 100644
--- a/gcc/cpplib.c
+++ b/gcc/cpplib.c
@@ -4892,7 +4892,7 @@ cpp_start_read (pfile, fname)
else
nstore[endp-startp] = '\0';
- include_defaults[num_dirs].fname = savestring (nstore);
+ include_defaults[num_dirs].fname = xstrdup (nstore);
include_defaults[num_dirs].component = 0;
include_defaults[num_dirs].cplusplus = opts->cplusplus;
include_defaults[num_dirs].cxx_aware = 1;
@@ -4915,7 +4915,7 @@ cpp_start_read (pfile, fname)
if (!opts->no_standard_includes) {
struct default_include *p = include_defaults;
char *specd_prefix = opts->include_prefix;
- char *default_prefix = savestring (GCC_INCLUDE_DIR);
+ char *default_prefix = xstrdup (GCC_INCLUDE_DIR);
int default_len = 0;
/* Remove the `include' from /usr/local/lib/gcc.../include. */
if (!strcmp (default_prefix + strlen (default_prefix) - 8, "/include")) {
@@ -6164,20 +6164,6 @@ cpp_read_check_assertion (pfile)
return result;
}
-/* FIXME: savestring() should be renamed strdup() and should
- be moved into cppalloc.c. We can't do that right now because
- then we'd get multiple-symbol clashes with toplev.c and several
- other people. */
-char *
-savestring (input)
- char *input;
-{
- unsigned size = strlen (input);
- char *output = xmalloc (size + 1);
- strcpy (output, input);
- return output;
-}
-
/* Initialize PMARK to remember the current position of PFILE. */
void
diff --git a/gcc/cpplib.h b/gcc/cpplib.h
index 7e9aa7d3fdb..68c77a1aeab 100644
--- a/gcc/cpplib.h
+++ b/gcc/cpplib.h
@@ -725,8 +725,6 @@ extern int finclude PROTO ((cpp_reader *, int,
extern void deps_output PROTO ((cpp_reader *, char *, int));
extern struct include_hash *include_hash PROTO ((cpp_reader *, char *, int));
-/* Bleargh. */
-extern char *savestring PROTO ((char *));
#ifndef INCLUDE_LEN_FUDGE
#define INCLUDE_LEN_FUDGE 0
#endif