From e39423c06daa6d37098d1000174587b10ce695a3 Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Wed, 15 Oct 2014 20:20:05 +0000 Subject: [PATCH] libiberty: Expose choose_tmpdir, and fix constness of return type include/ChangeLog: * libiberty.h (choose_tmpdir): New prototype. libiberty/ChangeLog: * choose-temp.c (choose_tmpdir): Remove now-redundant local copy of prototype. * functions.texi: Regenerate. * make-temp-file.c (choose_tmpdir): Convert return type from char * to const char * - given that this returns a pointer to a memoized allocation, the caller must not touch it. From-SVN: r216285 --- include/ChangeLog | 4 ++++ include/libiberty.h | 5 +++++ libiberty/ChangeLog | 9 +++++++++ libiberty/choose-temp.c | 1 - libiberty/functions.texi | 13 ++++++------- libiberty/make-temp-file.c | 4 ++-- 6 files changed, 26 insertions(+), 10 deletions(-) diff --git a/include/ChangeLog b/include/ChangeLog index fd6274fde1c..5198c249e7c 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2014-10-15 David Malcolm + + * libiberty.h (choose_tmpdir): New prototype. + 2013-10-02 Mark Wielaard PR debug/63239 diff --git a/include/libiberty.h b/include/libiberty.h index bcc1f9afaf7..d09c9a54811 100644 --- a/include/libiberty.h +++ b/include/libiberty.h @@ -227,6 +227,11 @@ extern char *make_relative_prefix (const char *, const char *, extern char *make_relative_prefix_ignore_links (const char *, const char *, const char *) ATTRIBUTE_MALLOC; +/* Returns a pointer to a directory path suitable for creating temporary + files in. */ + +extern const char *choose_tmpdir (void) ATTRIBUTE_RETURNS_NONNULL; + /* Choose a temporary directory to use for scratch files. */ extern char *choose_temp_base (void) ATTRIBUTE_MALLOC ATTRIBUTE_RETURNS_NONNULL; diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 5211664c242..73dee14ad67 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,12 @@ +2014-10-15 David Malcolm + + * choose-temp.c (choose_tmpdir): Remove now-redundant local + copy of prototype. + * functions.texi: Regenerate. + * make-temp-file.c (choose_tmpdir): Convert return type from + char * to const char * - given that this returns a pointer to + a memoized allocation, the caller must not touch it. + 2014-10-14 Joel Brobecker * d-demangle.c: Replace strtold with strtod in global comment. diff --git a/libiberty/choose-temp.c b/libiberty/choose-temp.c index 0a454cfa7ca..8e1e84be765 100644 --- a/libiberty/choose-temp.c +++ b/libiberty/choose-temp.c @@ -34,7 +34,6 @@ Boston, MA 02110-1301, USA. */ #endif #include "libiberty.h" -extern char *choose_tmpdir (void); /* Name of temporary file. mktemp requires 6 trailing X's. */ diff --git a/libiberty/functions.texi b/libiberty/functions.texi index 9323ff9f2e4..387aee0bb9c 100644 --- a/libiberty/functions.texi +++ b/libiberty/functions.texi @@ -125,7 +125,7 @@ Uses @code{malloc} to allocate storage for @var{nelem} objects of @end deftypefn -@c choose-temp.c:46 +@c choose-temp.c:45 @deftypefn Extension char* choose_temp_base (void) Return a prefix for temporary file names or @code{NULL} if unable to @@ -139,7 +139,7 @@ not recommended. @end deftypefn @c make-temp-file.c:96 -@deftypefn Replacement char* choose_tmpdir () +@deftypefn Replacement const char* choose_tmpdir () Returns a pointer to a directory path suitable for creating temporary files in. @@ -160,9 +160,8 @@ number of seconds used. @dots{}, @code{NULL}) Concatenate zero or more of strings and return the result in freshly -@code{xmalloc}ed memory. Returns @code{NULL} if insufficient memory is -available. The argument list is terminated by the first @code{NULL} -pointer encountered. Pointers to empty strings are ignored. +@code{xmalloc}ed memory. The argument list is terminated by the first +@code{NULL} pointer encountered. Pointers to empty strings are ignored. @end deftypefn @@ -528,7 +527,7 @@ nineteen EBCDIC varying characters is tested; exercise caution.) @end ftable @end defvr -@c hashtab.c:336 +@c hashtab.c:328 @deftypefn Supplemental htab_t htab_create_typed_alloc (size_t @var{size}, @ htab_hash @var{hash_f}, htab_eq @var{eq_f}, htab_del @var{del_f}, @ htab_alloc @var{alloc_tab_f}, htab_alloc @var{alloc_f}, @ @@ -1163,7 +1162,7 @@ control over the state of the random number generator. @end deftypefn -@c concat.c:174 +@c concat.c:160 @deftypefn Extension char* reconcat (char *@var{optr}, const char *@var{s1}, @ @dots{}, @code{NULL}) diff --git a/libiberty/make-temp-file.c b/libiberty/make-temp-file.c index 7b74f8179b1..244cc23c509 100644 --- a/libiberty/make-temp-file.c +++ b/libiberty/make-temp-file.c @@ -93,7 +93,7 @@ static char *memoized_tmpdir; /* -@deftypefn Replacement char* choose_tmpdir () +@deftypefn Replacement const char* choose_tmpdir () Returns a pointer to a directory path suitable for creating temporary files in. @@ -102,7 +102,7 @@ files in. */ -char * +const char * choose_tmpdir (void) { if (!memoized_tmpdir) -- 2.30.2