guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 15/47: i18n: Check for non-POSIX strtol_l.


From: Andy Wingo
Subject: [Guile-commits] 15/47: i18n: Check for non-POSIX strtol_l.
Date: Sun, 22 May 2016 18:23:04 +0000 (UTC)

wingo pushed a commit to branch master
in repository guile.

commit 7413430fd742bbe867f5f1358e729514b5a08973
Author: Natanael Copa <address@hidden>
Date:   Mon Jun 15 10:05:41 2015 +0200

    i18n: Check for non-POSIX strtol_l.
    
    * configure.ac: Check for strtol_l.
    * libguile/i18n.c: Check HAVE_STRTOL_L before using strtol_l.
---
 configure.ac    |    5 +++--
 libguile/i18n.c |    2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/configure.ac b/configure.ac
index 0eb2368..3a8f772 100644
--- a/configure.ac
+++ b/configure.ac
@@ -752,6 +752,7 @@ AC_CHECK_HEADERS([assert.h crt_externs.h])
 #   isblank - available as a GNU extension or in C99
 #   _NSGetEnviron - Darwin specific
 #   strcoll_l, newlocale, uselocale, utimensat - POSIX.1-2008
+#   strtol_l - non-POSIX, found in glibc
 #   fork - unavailable on Windows
 #   sched_getaffinity, sched_setaffinity - GNU extensions (glibc)
 #   sendfile - non-POSIX, found in glibc
@@ -765,8 +766,8 @@ AC_CHECK_FUNCS([DINFINITY DQNAN cexp chsize clog clog10 
ctermid             \
   strdup system usleep atexit on_exit chown link fcntl ttyname getpwent        
\
   getgrent kill getppid getpgrp fork setitimer getitimer strchr strcmp \
   index bcopy memcpy rindex truncate unsetenv isblank _NSGetEnviron    \
-  strcoll strcoll_l newlocale uselocale utimensat sched_getaffinity    \
-  sched_setaffinity sendfile])
+  strcoll strcoll_l strtol_l newlocale uselocale utimensat             \
+  sched_getaffinity sched_setaffinity sendfile])
 
 # Reasons for testing:
 #   netdb.h - not in mingw
diff --git a/libguile/i18n.c b/libguile/i18n.c
index f0e3443..17e9eca 100644
--- a/libguile/i18n.c
+++ b/libguile/i18n.c
@@ -1373,7 +1373,7 @@ SCM_DEFINE (scm_locale_string_to_integer, 
"locale-string->integer",
 
   if (c_locale != NULL)
     {
-#ifdef USE_GNU_LOCALE_API
+#if defined(USE_GNU_LOCALE_API) && defined(HAVE_STRTOL_L)
       c_result = strtol_l (c_str, &c_endptr, c_base, c_locale);
 #else
       RUN_IN_LOCALE_SECTION (c_locale,



reply via email to

[Prev in Thread] Current Thread [Next in Thread]