changeset 18705:673f4603d979 v8.1.2344

patch 8.1.2344: Cygwin: warning for using strptime() Commit: https://github.com/vim/vim/commit/6a228c6463935a73c8f21142cb7368545cfee317 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Nov 26 13:29:01 2019 +0100 patch 8.1.2344: Cygwin: warning for using strptime() Problem: Cygwin: warning for using strptime(). Solution: Move defining _XOPEN_SOURCE and __USE_XOPEN to vim.h. (Ken Takata, closes #5265) Use 700 for _XOPEN_SOURCE for mkdtemp().
author Bram Moolenaar <Bram@vim.org>
date Tue, 26 Nov 2019 13:30:04 +0100
parents 65e3c91819fe
children 8bbd9c1802e9
files src/os_unix.h src/version.c src/vim.h
diffstat 3 files changed, 16 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/src/os_unix.h
+++ b/src/os_unix.h
@@ -129,13 +129,6 @@
 
 // on some systems time.h should not be included together with sys/time.h
 #if !defined(HAVE_SYS_TIME_H) || defined(TIME_WITH_SYS_TIME)
-// Needed for strptime()
-# ifndef _XOPEN_SOURCE
-#  define _XOPEN_SOURCE
-# endif
-# ifndef __USE_XOPEN
-#  define __USE_XOPEN
-# endif
 # include <time.h>
 #endif
 #ifdef HAVE_SYS_TIME_H
--- a/src/version.c
+++ b/src/version.c
@@ -738,6 +738,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2344,
+/**/
     2343,
 /**/
     2342,
--- a/src/vim.h
+++ b/src/vim.h
@@ -36,8 +36,21 @@
     Error: configure did not run properly.  Check auto/config.log.
 # endif
 
+# ifdef UNIX
+// Needed for strptime().  Needs to be done early, since header files can
+// include other header files and end up including time.h, where these symbols
+// matter for Vim.
+// 700 is needed for mkdtemp().
+#  ifndef _XOPEN_SOURCE
+#   define _XOPEN_SOURCE    700
+#  endif
+#  ifndef __USE_XOPEN
+#   define __USE_XOPEN
+#  endif
+# endif
+
 // for INT_MAX, LONG_MAX et al.
-#include <limits.h>
+# include <limits.h>
 
 /*
  * Cygwin may have fchdir() in a newer release, but in most versions it