* configure.ac: Check for C11 timespec_get function.
* crossconfig.m4 (freebsd, linux, gnu, cygwin, solaris, netbsd)
(openbsd): Likewise
* config.h.in: Regenerate.
* configure: Regenerate.
* include/c_global/ctime (timespec, timespec_get): Add to namespace
std for C++17 and up.
From-SVN: r268879
2019-02-14 Jonathan Wakely <jwakely@redhat.com>
+ * configure.ac: Check for C11 timespec_get function.
+ * crossconfig.m4 (freebsd, linux, gnu, cygwin, solaris, netbsd)
+ (openbsd): Likewise
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * include/c_global/ctime (timespec, timespec_get): Add to namespace
+ std for C++17 and up.
+
* doc/xml/manual/intro.xml: Document LWG 2537 status.
* include/bits/stl_queue.h
(priority_queue(const Compare&, const Container&, const Alloc&))
/* Define to 1 if you have the <tgmath.h> header file. */
#undef HAVE_TGMATH_H
+/* Define to 1 if you have the `timespec_get' function. */
+#undef HAVE_TIMESPEC_GET
+
/* Define to 1 if the target supports thread-local storage. */
#undef HAVE_TLS
#define HAVE__WFOPEN 1
_ACEOF
+fi
+done
+
+
+ # C11 functions for C++17 library
+ for ac_func in timespec_get
+do :
+ ac_fn_c_check_func "$LINENO" "timespec_get" "ac_cv_func_timespec_get"
+if test "x$ac_cv_func_timespec_get" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_TIMESPEC_GET 1
+_ACEOF
+
fi
done
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
+fi
+done
+
+ for ac_func in timespec_get
+do :
+ ac_fn_c_check_func "$LINENO" "timespec_get" "ac_cv_func_timespec_get"
+if test "x$ac_cv_func_timespec_get" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_TIMESPEC_GET 1
+_ACEOF
+
fi
done
fi
done
+ for ac_func in timespec_get
+do :
+ ac_fn_c_check_func "$LINENO" "timespec_get" "ac_cv_func_timespec_get"
+if test "x$ac_cv_func_timespec_get" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_TIMESPEC_GET 1
+_ACEOF
+
+fi
+done
+
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
+fi
+done
+
+ for ac_func in timespec_get
+do :
+ ac_fn_c_check_func "$LINENO" "timespec_get" "ac_cv_func_timespec_get"
+if test "x$ac_cv_func_timespec_get" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_TIMESPEC_GET 1
+_ACEOF
+
fi
done
AC_CHECK_FUNCS(aligned_alloc posix_memalign memalign _aligned_malloc)
AC_CHECK_FUNCS(_wfopen)
+ # C11 functions for C++17 library
+ AC_CHECK_FUNCS(timespec_get)
+
# For iconv support.
AM_ICONV
fi
AC_CHECK_FUNCS(__cxa_thread_atexit)
AC_CHECK_FUNCS(aligned_alloc posix_memalign memalign _aligned_malloc)
+ AC_CHECK_FUNCS(timespec_get)
;;
*-fuchsia*)
GCC_CHECK_TLS
AC_CHECK_FUNCS(__cxa_thread_atexit_impl)
AC_CHECK_FUNCS(aligned_alloc posix_memalign memalign _aligned_malloc)
+ AC_CHECK_FUNCS(timespec_get)
AM_ICONV
;;
*-mingw32*)
AC_DEFINE(HAVE_ISNANL)
fi
AC_CHECK_FUNCS(aligned_alloc posix_memalign memalign _aligned_malloc)
+ AC_CHECK_FUNCS(timespec_get)
;;
*-qnx6.1* | *-qnx6.2*)
SECTION_FLAGS='-ffunction-sections -fdata-sections'
using ::strftime;
} // namespace
+#if __cplusplus >= 201703L && defined(_GLIBCXX_HAVE_TIMESPEC_GET)
+#undef timespec_get
+namespace std
+{
+ using ::timespec;
+ using ::timespec_get;
+} // namespace std
+#endif
+
#endif