This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] ada: Use mkstemp() on NetBSD as is done on FreeBSD


Fix for bug 34533. I have not tried this patch, but it is trivial (treat
NetBSD as FreeBSD wrt mkstemp()), it has been suggested and tested by the
submitter and I have checked that mkstemp() has been present in NetBSD
libc at least since version 1.4 (current version is 4.0).

Ok for trunk?

And while I'm at it: is it legitimate to check for conditions like this?

  #if defined (_WIN32) && ! defined (__vxworks)

Can __vxworks be defined at the same time as _WIN32, linux or __FreeBSD__?

    gcc/ada/
	PR ada/34553
	* adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp()
	instead of mktemp() or tmpnam() on NetBSD.
---
 gcc/ada/adaint.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c
index 6c5d440..1556b28 100644
--- a/gcc/ada/adaint.c
+++ b/gcc/ada/adaint.c
@@ -887,7 +887,8 @@ __gnat_open_new_temp (char *path, int fmode)
 
   strcpy (path, "GNAT-XXXXXX");
 
-#if (defined (__FreeBSD__) || defined (linux)) && !defined (__vxworks)
+#if (defined (__FreeBSD__) || defined (__NetBSD__) || defined (linux)) && \
+  !defined (__vxworks)
   return mkstemp (path);
 #elif defined (__Lynx__)
   mktemp (path);
@@ -979,7 +980,7 @@ __gnat_tmp_name (char *tmp_filename)
     free (pname);
   }
 
-#elif defined (linux) || defined (__FreeBSD__)
+#elif defined (linux) || defined (__FreeBSD__) || defined (__NetBSD__)
 #define MAX_SAFE_PATH 1000
   char *tmpdir = getenv ("TMPDIR");
 
-- 
1.5.3.7


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]