]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libiberty/setenv.c
Add prange entries in gimple-range-op.cc.
[thirdparty/gcc.git] / libiberty / setenv.c
index 79e38ed56b0026902d7186f7e767023004d512e6..232b2d6a15c1e0bff08523e71743bf05e56f6d58 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
    This file based on setenv.c in the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
 
    You should have received a copy of the GNU Library General Public
    License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   write to the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+   Boston, MA 02110-1301, USA.  */
 
 
 /*
 
-@deftypefn Supplemental int setenv (const char *@var{name}, const char *@var{value}, int @var{overwrite})
+@deftypefn Supplemental int setenv (const char *@var{name}, @
+  const char *@var{value}, int @var{overwrite})
 @deftypefnx Supplemental void unsetenv (const char *@var{name})
 
 @code{setenv} adds @var{name} to the environment with value
@@ -36,6 +37,9 @@ environment.  This implementation is not safe for multithreaded code.
 # include <config.h>
 #endif
 
+#define setenv libiberty_setenv
+#define unsetenv libiberty_unsetenv
+
 #include "ansidecl.h"
 #include <sys/types.h> /* For `size_t' */
 #include <stdio.h>     /* For `NULL' */
@@ -57,9 +61,10 @@ extern int errno;
 #endif
 
 #define __environ      environ
-#ifndef HAVE_ENVIRON_DECL
-extern char **environ;
-#endif
+#include "environ.h"
+
+#undef setenv
+#undef unsetenv
 
 /* LOCK and UNLOCK are defined as no-ops.  This makes the libiberty
  * implementation MT-Unsafe. */
@@ -74,10 +79,7 @@ static char **last_environ;
 
 
 int
-setenv (name, value, replace)
-     const char *name;
-     const char *value;
-     int replace;
+setenv (const char *name, const char *value, int replace)
 {
   register char **ep = 0;
   register size_t size;
@@ -112,7 +114,7 @@ setenv (name, value, replace)
          return -1;
        }
 
-      new_environ[size] = malloc (namelen + 1 + vallen);
+      new_environ[size] = (char *) malloc (namelen + 1 + vallen);
       if (new_environ[size] == NULL)
        {
          free ((char *) new_environ);
@@ -139,13 +141,13 @@ setenv (name, value, replace)
       if (len + 1 < namelen + 1 + vallen)
        {
          /* The existing string is too short; malloc a new one.  */
-         char *new = malloc (namelen + 1 + vallen);
-         if (new == NULL)
+         char *new_string = (char *) malloc (namelen + 1 + vallen);
+         if (new_string == NULL)
            {
              UNLOCK;
              return -1;
            }
-         *ep = new;
+         *ep = new_string;
        }
       memcpy (*ep, name, namelen);
       (*ep)[namelen] = '=';
@@ -158,8 +160,7 @@ setenv (name, value, replace)
 }
 
 void
-unsetenv (name)
-     const char *name;
+unsetenv (const char *name)
 {
   const size_t len = strlen (name);
   char **ep;