bug-gnulib
[Top][All Lists]
Advanced

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

Re: [bug-gnulib] wcwidth on mingw


From: Eric Blake
Subject: Re: [bug-gnulib] wcwidth on mingw
Date: Sun, 02 Jul 2006 16:15:07 -0600
User-agent: Thunderbird 1.5.0.4 (Windows/20060516)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

According to Bruno Haible on 6/28/2006 11:01 AM:
> Eric Blake wrote:
>> By the way, is it safe to assume wchar_t exists
> 
> No it isn't. Good point. Either the module description should have
> 
...
> 
> Yes, but that's not a reason for removing the declaration and not
> testing HAVE_DECL_WCWIDTH any more.
> 
> Further issues:
> - In mbswidth.c you removed the includes of <wchar.h> and <wctype.h>.
>   But they are needed for iswcntrl(). Things are more maintainable if
>   you write down the includes, even if they are *currently* redundant,
>   because when someone will change wcwidth.h in the future, he will
>   certainly not look at recompiling mbswidth.c.
> - When 'inline' is used, we must arrange to invoke AC_C_INLINE.
> 
> I fixed these, patch appended.

Thanks for your cleanup.  I found one more issue, where configuring with
- -Werror picked the wrong value for HAVE_DECL_WCWIDTH leading to
compilation failure, and which was easy to fix (as well as easier to
maintain).  I'm installing this:

2006-07-02  Eric Blake  <address@hidden>

        * wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.

- --
Life is short - so eat dessert first!

Eric Blake             address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.1 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFEqEVq84KuGfSFAYARAqVCAKCmhTZs6GuECqMFNraccfl9hkRvzQCfZv9d
OLGzvVif+iBBTqPd3mbvrQU=
=JFjE
-----END PGP SIGNATURE-----
Index: m4/wcwidth.m4
===================================================================
RCS file: /sources/gnulib/gnulib/m4/wcwidth.m4,v
retrieving revision 1.2
diff -u -p -r1.2 wcwidth.m4
--- m4/wcwidth.m4       28 Jun 2006 17:03:53 -0000      1.2
+++ m4/wcwidth.m4       2 Jul 2006 22:12:47 -0000
@@ -1,4 +1,4 @@
-# wcwidth.m4 serial 2
+# wcwidth.m4 serial 3
 dnl Copyright (C) 2006 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -15,8 +15,7 @@ AC_DEFUN([gl_FUNC_WCWIDTH],
   AC_CHECK_HEADERS_ONCE([wchar.h wctype.h])
   AC_CHECK_FUNCS_ONCE([iswprint wcwidth])
 
-  AC_CACHE_CHECK([whether wcwidth is declared], [ac_cv_have_decl_wcwidth],
-    [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+  AC_CHECK_DECLS([wcwidth], [], [], [
 /* AIX 3.2.5 declares wcwidth in <string.h>. */
 #if HAVE_STRING_H
 # include <string.h>
@@ -24,17 +23,4 @@ AC_DEFUN([gl_FUNC_WCWIDTH],
 #if HAVE_WCHAR_H
 # include <wchar.h>
 #endif
-], [
-#ifndef wcwidth
-  char *p = (char *) wcwidth;
-#endif
-])], [ac_cv_have_decl_wcwidth=yes], [ac_cv_have_decl_wcwidth=no])])
-  if test $ac_cv_have_decl_wcwidth = yes; then
-    ac_val=1
-  else
-    ac_val=0
-  fi
-  AC_DEFINE_UNQUOTED([HAVE_DECL_WCWIDTH], [$ac_val],
-    [Define to 1 if you have the declaration of wcwidth(), and to 0
-     otherwise.])
-]) 
+])])

reply via email to

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