wchar: Avoid #define replacements in C++ mode.
[gnulib.git] / ChangeLog
index 7215062..e3c917a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,79 @@
 2010-03-07  Bruno Haible  <bruno@clisp.org>
 
+       wchar: Avoid #define replacements in C++ mode.
+       * lib/wchar.in.h: Include c++defs.h.
+       (btowc, wctob, mbsinit, mbrtowc, mbrlen, mbsrtowcs, mbsnrtowcs,
+       wcrtomb, wcsrtombs, wcsnrtombs): In C++, define a namespaced alias
+       symbol.
+       (wcwidth): Likewise. Fix prototype to be POSIX compliant.
+       * modules/wchar (Depends-on): Add c++defs.
+       (Makefile.am): Update wchar.h rule.
+
+       unistd: Avoid #define replacements in C++ mode.
+       * lib/unistd.in.h: Include c++defs.h.
+       (chown, close, dup, dup2, dup3, euidaccess, faccessat, fchdir,
+       fchownat, fsync, ftruncate, getcwd, getdomainname, getdtablesize,
+       getgroups, gethostname, getlogin, getlogin_r, getpagesize,
+       getusershell, setusershell, endusershell, lchown, link, linkat, lseek,
+       pipe2, pread, readlink, readlinkat, rmdir, sleep, symlink, symlinkat,
+       unlink, unlinkat, usleep, write): In C++, define a namespaced alias
+       symbol.
+       (environ): Update.
+       * modules/unistd (Depends-on): Add c++defs.
+       (Makefile.am): Update unistd.h rule.
+
+       time: Avoid #define replacements in C++ mode.
+       * lib/time.in.h: Include c++defs.h, warn-on-use.h.
+       (nanosleep, mktime, localtime_r, gmtime_r, strptime, timegm): In C++,
+       define a namespaced alias symbol.
+       * m4/time_h.m4 (gl_TIME_MODULE_INDICATOR): New macro.
+       (gl_HEADER_TIME_H_DEFAULTS): Initialize also GNULIB_MKTIME,
+       GNULIB_NANOSLEEP, GNULIB_STRPTIME, GNULIB_TIMEGM.
+       * modules/time (Depends-on): Add c++defs, warn-on-use.
+       (Makefile.am): Update time.h rule.
+       * modules/mktime (configure.ac): Invoke gl_TIME_MODULE_INDICATOR.
+       * modules/nanosleep (configure.ac): Likewise.
+       * modules/strptime (configure.ac): Likewise.
+       * modules/timegm (configure.ac): Likewise.
+
+       sys_time: Avoid #define replacements in C++ mode.
+       * lib/sys_time.in.h: Include c++defs.h.
+       (gettimeofday): In C++, define a namespaced alias symbol.
+       * modules/sys_time (Depends-on): Add c++defs.
+       (Makefile.am): Update sys/time.h rule.
+
+       sys_stat: Avoid #define replacements in C++ mode.
+       * lib/sys_stat.in.h: Include c++defs.h.
+       (fchmodat, fstat, fstatat, futimens, lchmod, lstat, mkdir, mkdirat,
+       mkfifo, mkfifoat, mknod, mknodat, utimensat): In C++, define a
+       namespaced alias symbol.
+       In C++, define a namespaced alias symbol.
+       * modules/sys_stat (Depends-on): Add c++defs.
+       (Makefile.am): Update sys/stat.h rule.
+
+       sys_socket: Avoid #define replacements in C++ mode.
+       * lib/sys_socket.in.h: Handle the case of recursive include on Cygwin.
+       Include c++defs.h. Include warn-on-use.h earlier. Enable the function
+       definitions also when the system has a <sys/socket.h>.
+       (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
+       listen, recv, send, recvfrom, sendto, setsockopt, shutdown, accept4):
+       In C++, define a namespaced alias symbol.
+       * modules/sys_socket (Depends-on): Add c++defs.
+       (Makefile.am): Update sys/socket.h rule.
+
+       sys_select: Avoid #define replacements in C++ mode.
+       * lib/sys_select.in.h: Include c++defs.h. Enable the function
+       definitions also when the system has a <sys/select.h>.
+       (select): In C++, define a namespaced alias symbol.
+       * modules/sys_select (Depends-on): Add c++defs.
+       (Makefile.am): Update sys/select.h rule.
+
+       sys_ioctl: Avoid #define replacements in C++ mode.
+       * lib/sys_ioctl.in.h: Include c++defs.h.
+       (ioctl): In C++, define a namespaced alias symbol.
+       * modules/sys_ioctl (Depends-on): Add c++defs.
+       (Makefile.am): Update sys/ioctl.h rule.
+
        string: Avoid #define replacements in C++ mode.
        * lib/string.in.h: Include c++defs.h.
        (stpncpy): Define to rpl_stpncpy, not gnu_stpncpy.