2010-06-04 Bruno Haible * gettext-0.18.1 released. 2010-05-09 Bruno Haible * gettext-0.18 released. 2010-05-09 Bruno Haible vasnprintf: Fix syntax errors in libintl build on mingw. * vasnprintf.c (VASNPRINTF): Move a closing brace. Undefine pad_ourselves and prec_ourselves after use. 2010-04-24 Bruno Haible vasnprintf: Correct errno value in case of out-of-memory. * vasnprintf.c (VASNPRINTF): Set errno to 0 before calling SNPRINTF or sprintf. Use the errno value from SNPRINTF or sprintf. Reported by Ian Beckwith . 2010-04-10 Bruno Haible vasnprintf: Correct handling of unconvertible wide string arguments. * vasnprintf.c (MAX_ROOM_NEEDED): New function, extracted from VASNPRINTF. (VASNPRINTF): Use it. After snprintf failed, allocate more memory only if HAVE_SNPRINTF_RETVAL_C99 is false and the allocated memory is smaller than the expected maximum need for the directive. Set errno to EILSEQ, not EINVAL, when the directive is 'c' or 's'. (local_strnlen, local_wcslen, local_wcsnlen): Update conditions. Reported by Jarno Rajahalme . 2010-04-10 Bruno Haible vasnprintf: Fix crash in %ls directive. * vasnprintf.c (VASNPRINTF): Don't abort when a unconvertible wide string is passed as argument to %ls, with no precision and no width. Reported by Jarno Rajahalme . 2010-04-10 Bruno Haible vasnprintf: Fix multiple test failures on mingw. * vasnprintf.c (SNPRINTF) [mingw]: Define to snprintf, not _snprintf, or snwprintf, not _snwprintf. 2010-01-01 Bruno Haible * vasnprintf.c (VASNPRINTF): If GNULIB_defined_mbstate_t is defined, use wctomb instead of wcrtomb. 2009-12-12 Bruno Haible * *.h, *.c: Untabify. 2009-11-22 Bruno Haible * vasnprintf.c (decimal_point_char): Choose the fast path also on MacOS X. 2009-11-17 Eric Blake * vasnprintf.c (VASNPRINTF): Avoid shadowing our own local variables. 2009-08-20 Eric Blake * vasnprintf.c (decimal_point_char): Avoid warning on old-style declaration. 2009-08-14 Bruno Haible Use the gnulib module 'errno'. * Makefile.am: Include Makefile.gnulib. (ACLOCAL_AMFLAGS): Add -I gnulib-m4. (EXTRA_DIST): Add gnulib-m4/gnulib-cache.m4. (BUILT_SOURCES, noinst_LTLIBRARIES): New variables. * configure.ac (AC_PREREQ): Require autoconf 2.59 or newer. Invoke gl_EARLY, gl_INIT. Don't invoke gl_EOVERFLOW. Remove the alloca tests. 2009-08-10 Bruno Haible * vasnprintf.c (DCHAR_SET): Undefine at the end. 2009-06-06 Bruno Haible * configure.ac (AM_INIT_AUTOMAKE): Add 'silent-rules' option. * Makefile.am (libasprintf.la): Silence 'make' output if silent-rules. 2009-06-06 Bruno Haible * configure.ac: Pass package and version to AC_INIT instead of AM_INIT_AUTOMAKE. 2009-05-21 Bruno Haible Assume automake >= 1.10.2. * configure.ac (AC_CONFIG_FILES): Remove FIX_MAKEFILE_COMPILE, FIX_MAKEFILE_INFO invocations. 2009-04-26 Bruno Haible * vasnprintf.c (VASNPRINTF): Update after the calling convention of u*_conv_from_encoding and u*_conv_to_encoding changed. 2009-04-08 Bruno Haible * Makefile.am (SUFFIXES, CLEANFILES): Remove variables. Not needed any more. 2009-03-23 Jim Meyering * vasnprintf.c (divide): Fix typo in comment. 2009-02-26 Bruno Haible Fix *printf behaviour regarding the %ls directive. * vasnprintf.c (local_wcslen, VASNPRINTF): Handle NEED_PRINTF_DIRECTIVE_LS. 2009-02-23 Bruno Haible Fix invalid read past end of memory block. * vasnprintf.c (DCHAR_SET): Define. (local_wcslen): Define only when needed. (local_strnlen, local_wcsnlen): New functions. (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls directives that involve a conversion ourselves. * configure.ac: Also check for strnlen, wcsnlen, mbrtowc, wcrtomb. 2009-01-14 Bruno Haible * configure.ac: More consistent m4 quoting. 2008-09-22 Eric Blake Bruno Haible vasnprintf: fix x86/glibc regression on printf("%La", 0.0L) * vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that supply %A but mishandle pseudo-NaN. Reported by Simon Josefsson. 2008-09-18 Bruno Haible * vasnprintf.c (VASNPRINTF): When printing ±0.0L in NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two digits for the exponent. 2008-09-18 Jim Meyering Bruno Haible * vasnprintf.c (decimal_point_char): Define also if NEED_PRINTF_INFINITE_LONG_DOUBLE. 2008-09-16 Bruno Haible and Eric Blake vasnprintf: support Irix 5.3 * vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms that mishandle long double infinity. Reported by Tom G. Christensen. 2008-09-02 Eric Blake vasnprintf-posix: handle large precision via %.*d * vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf when handling it ourselves. Reported by Alain Guibert. 2008-07-10 Ben Pfaff * vasnprintf.c: Update references to renamed include files. 2008-05-21 Bruno Haible Avoid one more warning from gcc. * vasnprintf.c (IF_LINT): Update comments. (VASNPRINTF): Use it also for the 'prefix' array initializer. 2008-05-21 Jim Meyering avoid a warning from gcc * vasnprintf.c (IF_LINT): Define. (scale10_round_decimal_long_double): Use it to avoid a "may be used uninitialized" warning. (scale10_round_decimal_double): Likewise. 2008-05-16 Jim Meyering Bruno Haible Avoid some warnings from "gcc -Wshadow". * vasnprintf.c (exp, remainder): Define to different identifiers. 2008-04-19 Bruno Haible Work around snprintf bug on Linux libc5. * vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems. 2008-04-19 Bruno Haible * vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error from 0.0058 to less than 10^-7. 2008-04-19 Bruno Haible Fix rounding when a precision is given. * vasnprintf.c (is_borderline): New function. (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with 9...9x. Reported by John Darrington via Ben Pfaff . 2008-03-30 Bruno Haible Fix buffer overrun. * vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves: Don't consider the width for tmp_length. Check count against tmp_length before doing the padding. Ensure enough allocation during padding. 2008-03-30 Bruno Haible * vasnprintf.c (EOVERFLOW): Remove fallback. 2008-03-30 Bruno Haible Fix bug introduced on 2007-06-10. * vasnprintf.c (VASNPRINTF): When performing zero-padding, use spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO. 2008-02-28 Atsushi SAKAI * xsize.h: Fix typo in comment: s/tupe/type/. 2008-02-07 Bruno Haible * vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems. Avoids a crash on Windows Vista. Reported by Adam Strzelecki via Simon Josefsson . 2008-02-06 Bruno Haible Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20. * vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST. Reported by Peter Fales . 2008-02-06 Bruno Haible Fix bug introduced on 2007-06-10. * vasnprintf.c (VASNPRINTF): Perform zero-padding also if !NEED_PRINTF_FLAG_ZERO. 2008-01-29 Jim Meyering vasnprintf.c: Avoid warning about unused label * vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the "overflow" label definition and associated code with the same cpp condition that guards the sole use of that label. 2008-01-26 Bruno Haible Rename isnan, applicable to 'double' only, to isnand. * vasnprintf.c: Include isnand.h instead of isnan.h. (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan. 2008-01-08 Jim Meyering Bruno Haible * printf-parse.c (PRINTF_PARSE): Handle a size specifier "q" on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX. Reported by Peter Fales in . 2008-04-20 Bruno Haible * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL. 2007-11-26 Bruno Haible * vasnprintf.c (decode_long_double): Don't abort if the 'long double' type has excess precision. Reported by Jim Meyering in . 2007-11-10 Bruno Haible * configure.ac: Do _snprintf check like gnulib's vasnprintf.m4 does. 2007-11-10 Bruno Haible * configure.ac: Invoke AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG. Don't invoke gt_TYPE_LONGDOUBLE. Report and patch by Kacper. 2007-11-10 Bruno Haible * configure.ac: Invoke gl_EOVERFLOW. 2007-11-09 Bruno Haible * vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf with a size argument < 2. 2007-11-09 Bruno Haible * vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf buffer. Fixes an inefficiency introduced on 2007-11-03. 2007-11-07 Bruno Haible * gettext-0.17 released. 2007-11-05 Bruno Haible * vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set. Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE. Reported by Eric Blake. 2007-11-04 Bruno Haible * vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end. 2007-06-11 Bruno Haible * printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL replacement string. Reported by Eric Blake. 2007-06-10 Bruno Haible * printf-args.h (PRINTF_FETCHARGS): New macro. (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING, TYPE_U32_STRING. (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string, a_u32_string variants. (PRINTF_FETCHARGS): Renamed from printf_fetchargs. * printf-args.c: Don't include config.h and the specification header if PRINTF_FETCHARGS is already defined. (PRINTF_FETCHARGS): Renamed from printf_fetchargs. (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING, TYPE_U16_STRING, TYPE_U32_STRING. 2007-11-04 Bruno Haible * vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION. 2007-11-04 Bruno Haible * vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop. 2007-11-03 Bruno Haible * vasnprintf.c: Implement NEED_PRINTF_DOUBLE. (decode_double): New function, copied from decode_long_double. (scale10_round_decimal_decoded): New function, extracted from scale10_round_decimal_long_double. (scale10_round_decimal_long_double): Use it. (scale10_round_decimal_double): New function. (floorlog10): New function. (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case. 2007-11-03 Bruno Haible * vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return value is C99 compliant. Needed for OSF/1 5.1. 2007-11-03 Bruno Haible Fix out-of-memory handling of vasnprintf. * printf-parse.c: Include . (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM. * vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno is already set. 2007-10-20 Bruno Haible * vasnprintf.c (VASNPRINTF): Don't report overflow if the available length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T). Reported by Ralf Wildenhues . 2007-10-18 Bruno Haible * vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems. Reported by Jim Meyering. 2007-07-13 Bruno Haible * vasnprintf.c (decimal_point_char): Define also if (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE) && !NEED_PRINTF_DIRECTIVE_A. Reported by Clemens Koller via Gary V. Vaughan . 2007-06-10 Bruno Haible * vasnprintf.c: Don't include config.h and the specification header if VASNPRINTF is already defined. (DCHAR_IS_TCHAR, DCHAR_CPY): New macros. (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same type. Handle the case that TCHAR_T and FCHAR_T are not of the same size. Handle the case that DCHAR_T and TCHAR_T are not the same type, add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding code accordingly. (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable pad_ourselves also in this case, with the 'c' and 's' directives, and with a different notion of "width". 2007-06-10 Bruno Haible * vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable 'maxlen'. Ensure only length + width bytes are allocated, not length + 1 + width. 2007-06-09 Bruno Haible * vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros. (CHAR_T): Remove macro. (VASNPRINTF): Update. 2007-06-05 Bruno Haible * vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf also the %a / %A. Handle the %a / %A code before this extra handling. 2007-06-05 Bruno Haible * vasnprintf.c [NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h. 2007-10-21 Bruno Haible * printf-parse.c: Don't assume exists in IN_LIBASPRINTF context. 2007-06-10 Bruno Haible * printf-parse.c: Don't include config.h and the specification header if PRINTF_PARSE is already defined. Eliminate the set of parameters for WIDE_CHAR_VERSION; the user of this file must provide them now. Include c-ctype.h. (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U' directive and CHAR_T_ONLY_ASCII. 2007-09-04 Bruno Haible * alloca.in.h: Renamed from alloca_.h. * Makefile.am (EXTRA_DIST, alloca.h): Update. 2007-09-01 Bruno Haible * autosprintf.texi (Class autosprintf): Explain memory mangement details. Reported at . 2007-05-05 Bruno Haible * autosprintf.texi (ifmakeinfo): Remove alias. (makeinfo): New variable. * Makefile.am (autosprintf_all.html): Don't pass option -expandinfo to texi2html. 2007-05-21 Bruno Haible * vasnprintf.c: Update comments. 2007-05-20 Bruno Haible * vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of NEED_PRINTF_INFINITE. (is_infinitel): New function. (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case. 2007-05-19 Bruno Haible * vasnprintf.c: Include math.h and isnan.h. (is_infinite_or_zero): New function. (VASNPRINTF): Fix also the handling of infinite or zero 'double' values in the %f, %F, %e, %E, %g, %G directives. 2007-05-19 Bruno Haible * vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument. (scale10_round_decimal_long_double): Inline scale10_round_long_double. Instead of multiplying with 10^k, set extra_zeroes to k. (scale10_round_long_double): Remove function. 2007-05-18 Bruno Haible * vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug introduced on 2007-05-06. 2007-05-18 Bruno Haible * vasnprintf.c: Include math.h and float+.h. (mp_limb_t): New type. (GMP_LIMB_BITS): New macro. (mp_twolimb_t): New type. (GMP_TWOLIMB_BITS): New macro. (mpn_t): New type. (multiply, divide, convert_to_decimal, decode_long_double, scale10_round_long_double, scale10_round_decimal_long_double, floorlog10l): New functions. (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support for the %f, %F, %e, %E, %g, %G directives. 2007-05-18 Bruno Haible * vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS. 2007-05-18 Bruno Haible * vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld for printing 64-bit integers. Needed for mingw. 2007-05-06 Bruno Haible * vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the padding ourselves for the floating-point directives. 2007-05-06 Bruno Haible * vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't pass the ' flag character to sprintf or snprintf. 2007-04-11 Bruno Haible * vasnprintf.c (VASNPRINTF): Implement the %F directive using the %f directive, if NEED_PRINTF_DIRECTIVE_F is defined. 2007-04-06 Bruno Haible * vasnprintf.c: Include . Don't include float+.h. (VASNPRINTF): Use signbit for faster determination whether to print a minus sign. 2007-03-27 Bruno Haible * vasnprintf.c (decimal_point_char): New function. (VASNPRINTF): Use it. 2007-03-25 Bruno Haible * vasnprintf.c: Include langinfo.h. (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more multithread-safe. 2007-03-24 Bruno Haible * vasnprintf.c: Include fpucw.h. (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the 'long double' calculations. 2007-03-24 Bruno Haible * vasnprintf.c: Include float+.h. (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only SIZEOF_LDBL or SIZEOF_DBL bytes. 2007-03-24 Bruno Haible * vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't include isnanl-nolibm.h. 2007-03-21 Bruno Haible * vasnprintf.c: Update after isnanl.h was renamed to isnanl-nolibm.h. 2007-03-18 Bruno Haible * vasnprintf.c (VASNPRINTF): Undo first part of last patch. 2007-03-17 Bruno Haible * vasnprintf.c (EOVERFLOW): New fallback definition. (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is larger than INT_MAX, or when it grow to a value larger than INT_MAX. 2007-03-17 Bruno Haible * vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem before comparing it. Needed because on some platforms (e.g. x86) a 'long double' occupies less bytes than sizeof (long double). 2007-03-11 Bruno Haible * vasnprintf.c (sprintf): Undefine. 2007-03-11 Bruno Haible * vasnprintf.c (snprintf): Undefine. Avoids an endless recursion. 2007-03-09 Bruno Haible * vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use a locale dependent decimal point, rather than always '.'. 2007-03-04 Bruno Haible * vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h, printf-frexpl.h. (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed. 2007-03-30 Bruno Haible * alloca_.h: Change prefix of double-inclusion guard macro to _GL_. 2006-06-19 Paul Eggert * alloca_.h (alloca) [defined alloca]: Don't define or declare. 2007-03-08 Bruno Haible * vasnprintf.h: Convert tabs in the middle of lines to spaces. 2007-05-03 Bruno Haible Add support for both "makeinfo --html" and texi2html. * autosprintf.texi (ifmakeinfo): New alias. (Top): Use it instead of @ifinfo. 2007-04-06 Bruno Haible * printf-args.h: Assume HAVE_LONG_DOUBLE to be true. * printf-args.c: Likewise. * printf-parse.c: Likewise. * vasnprintf.c: Likewise. 2007-03-29 Bruno Haible * Makefile.am (DEFS): New variable. * vasprintf.c: Sync with gnulib. * asprintf.c: Likewise. 2007-03-25 Bruno Haible * printf-parse.c [!IN_LIBINTL]: Include , for intmax_t. (PRINTF_PARSE): Make the support for size specifier 'j' unconditional. 2007-02-25 Bruno Haible * vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a 'a' or 'A' conversion. 2007-01-29 Bruno Haible * printf-args.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'. * printf-args.c: Likewise. * printf-parse.c: Likewise. * vasnprintf.c: Likewise. 2006-11-01 Bruno Haible * printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results. 2006-10-27 Bruno Haible Work around automake-1.10 annoyance. * Makefile.am (ACLOCAL): New macro. 2006-11-27 Bruno Haible * gettext-0.16.1 released. 2006-10-26 Bruno Haible * gettext-0.16 released. 2006-10-16 Bruno Haible Switch to automake-1.10. * Makefile.am (install-dvi, install-ps, install-pdf): Remove rules. (HTMLS): New variable. (html-local): Use it. (install-html): Remove rule. 2006-10-11 Paul Eggert Bruno Haible * printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG. * printf-args.c (printf_fetchargs): Likewise. * printf-parse.c (PRINTF_PARSE): Likewise. * vasnprintf.c (VASNPRINTF): Likewise. 2006-09-14 Bruno Haible * lib-asprintf.c: Include unconditionally. * asnprintf.c: Likewise. * asprintf.c: Likewise. * printf-args.c: Likewise. * printf-parse.c: Likewise. * vasnprintf.c: Likewise. * vasprintf.c: Likewise. 2006-08-26 Bruno Haible * vasnprintf.c (EOVERFLOW): Remove definition. (VASNPRINTF): Return a string of length > INT_MAX without failing. * vasprintf.c: Include errno.h, limits.h. (EOVERFLOW): New fallback definition. (vasprintf): Test here whether the string length is > INT_MAX. 2006-08-28 Bruno Haible * configure.ac: Remove bh_C_SIGNED invocation. 2006-08-08 Ralf Wildenhues * autosprintf.texi: Reduce spacing after "i.e." and "e.g.". 2006-07-25 Bruno Haible * windows: Remove directory. * Makefile.msvc: Remove file. * Makefile.am (config.h.msvc, autosprintf.h.msvc-shared): Remove rules. (EXTRA_DIST): Remove Makefile.msvc, config.h.msvc, autosprintf.h.msvc-shared, windows/*. 2006-07-25 Bruno Haible * Makefile.vms: Remove file. * Makefile.am (config.h_vms): Remove rule. (EXTRA_DIST): Remove Makefile.vms, config.h_vms. 2006-07-21 Bruno Haible * gettext-0.15 released. 2006-06-27 Bruno Haible Assume working 'const'. * configure.ac: Remove AC_C_CONST invocation. 2006-04-14 Bruno Haible Assume autoconf >= 2.60. * Makefile.am (docdir, dvidir, psdir, pdfdir, htmldir): Remove variables. 2006-05-24 Bruno Haible * printf-args.c (printf_fetchargs): Turn NULL pointers for TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement. Reported by Thorsten Maerz via Aaron Stone . 2006-05-02 Charles Wilson * configure.ac (LTNOUNDEF): Set to -no-undefined also on mingw and Cygwin. 2006-04-17 Bruno Haible * Makefile.am: Use $(mkdir_p) instead of $(mkinstalldirs). 2006-04-11 Bruno Haible * autosprintf.texi: Change license terms to FDL | GPL. 2006-04-01 Bruno Haible * texi2html: Add option -expandtex. Expand @ifhtml by default, not @ifinfo. Use Unicode quotation marks instead of grave and acute accents. Emit charset=UTF-8 declaration. Bump version number to 1.52b. 2006-01-22 Bruno Haible * vasnprintf.c (VASNPRINTF): In the computation of the size of the temporary buffer for sprintf, take into account the precision also for 'd', 'i', 'u', 'o', 'x', 'X'. 2005-11-23 Bruno Haible Cygwin portability. * configure.ac: Invoke gl_WOE32_DLL. 2005-07-07 Bruno Haible Add ability to create shared library on BeOS. * configure.ac (LTNOUNDEF): New macro. * Makefile.am (libasprintf_la_LDFLAGS): New variable. 2005-07-05 Bruno Haible * printf-args.c (printf_fetchargs): Work around broken definition of wint_t on mingw. 2006-06-21 Bruno Haible * gettext-0.14.6 released. 2005-05-23 Bruno Haible * gettext-0.14.5 released. 2005-04-11 Bruno Haible * gettext-0.14.4 released. 2005-03-22 Bruno Haible * configure.ac (AC_CONFIG_AUX_DIR): Use ../../build-aux. * Makefile.am (ACLOCAL_AMFLAGS): Replace config/m4 with m4. 2005-03-14 Bruno Haible * gettext-0.14.3 released. 2005-02-24 Bruno Haible * gettext-0.14.2 released. 2005-02-13 Bruno Haible * Makefile.am (libasprintf.la): New rule. Needed for BeOS. 2005-02-12 Bruno Haible * Makefile.msvc (install): Update for 2004-01-18 change. * Makefile.vms (install): Likewise. 2005-02-12 Bruno Haible * vasnprintf.c (EOVERFLOW): Define to a fallback if needed. 2004-12-19 Paul Eggert * alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H. 2004-09-08 Bruno Haible * vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting length is > INT_MAX. * vasprintf.c (vasprintf): Don't test for length > INT_MAX any more. 2004-05-14 Bruno Haible * vasnprintf.c (VASNPRINTF): Correctly handle the case of a precision that consists of a '.' followed by an empty digit string. Patch by Tor Lillqvist . 2004-04-19 Bruno Haible * gettext.m4: Change jm_ to gl_ in all uses of AC_DEFINE'd names. 2004-03-11 Bruno Haible * Makefile.am (config.h.msvc): Fix the value of SIZE_MAX. 2004-02-02 Bruno Haible * Makefile.am (RM): New variable. 2004-01-29 Bruno Haible * gettext-0.14.1 released. 2004-01-28 Bruno Haible * gettext-0.14 released. 2004-01-18 Bruno Haible * Makefile.am (autosprintf_all.html): Renamed from autosprintf.html. Works around a problem with automake-1.8: It removes autosprintf.html during "make mostlyclean". 2003-10-30 Paul Eggert Bruno Haible * vasprintf.c: Include , . (vasprintf): Fail if the resulting length doesn't fit in an 'int'. 2003-12-12 Bruno Haible Assume automake-1.8. * Makefile.am (clean-local): Renamed from clean-am. (html-local): Renamed from html. (ps, pdf, .texi.pdf): Remove rules. (TEXI2PDF): Remove variable. 2003-12-17 Bruno Haible * gettext-0.13.1 released. 2003-12-09 Bruno Haible * Makefile.am (MAKEINFOFLAGS): New variable. 2003-11-30 Bruno Haible * gettext-0.13 released. 2003-11-28 Bruno Haible * configure.ac: Invoke AC_C_INLINE. * Makefile.am (config.h.msvc): Define SIZE_MAX and inline. 2003-11-23 Paul Eggert Bruno Haible * printf-parse.h: Don't include sys/types.h. (ARG_NONE): New macro. (char_directive): Change type of *arg_index fields to size_t. * printf-parse.c: Don't include sys/types.h. (SSIZE_MAX): Remove macro. (PRINTF_PARSE): Change the type of the arg_index variables to size_t. Remove unnecessary overflow check. * vasnprintf.c (VASNPRINTF): Update for type change of *arg_index fields. * configure.ac: Don't invoke gt_TYPE_SSIZE_T. 2003-11-19 Bruno Haible * configure.ac: Better test for ptrdiff_t. Invoke gt_TYPE_SSIZE_T and gl_XSIZE. 2003-11-17 Bruno Haible * vasnprintf.c (alloca): Remove fallback definition. (freea): Remove definition. (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes. Reported by Paul Eggert. 2003-11-16 Paul Eggert Bruno Haible Protect against address arithmetic overflow. * printf-args.h: Include stddef.h. (arguments): Change type of field 'count' to size_t. * printf-args.c (printf_fetchargs): Use size_t instead of 'unsigned int' where appropriate. * printf-parse.h: Include sys/types.h. (char_directive): Change type of *arg_index fields to ssize_t. (char_directives): Change type of fields 'count', max_*_length to size_t. * printf-parse.c: Include sys/types.h and xsize.h. (SSIZE_MAX): Define fallback value. (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t instead of 'int' where appropriate. Check a_allocated, d_allocated against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1. * vasnprintf.c: Include xsize.h. (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate. Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against overflow. Avoid wraparound when converting a width or precision from decimal to binary. * xsize.h: New file, from gnulib. * Makefile.am (lib_asprintf_EXTRASOURCES): Add xsize.h. 2003-11-04 Bruno Haible * Makefile.am (MAKEINFO): Set LC_MESSAGES and LC_ALL to empty as well. 2003-10-31 Bruno Haible * configure.ac: Remove argument of FIX_MAKEFILE_COMPILE, FIX_MAKEFILE_INFO. 2003-10-19 Jim Meyering * vasnprintf.c (VASNPRINTF): Work around losing snprintf on HPUX 10.20. 2003-08-29 Bruno Haible * configure.ac: Test whether _snprintf is declared, not only existent as a function. * vasnprintf.c: Test HAVE_DECL__SNPRINTF instead of HAVE__SNPRINTF. Test HAVE_DECL__SNWPRINTF instead of HAVE__SNWPRINTF. * Makefile.am (config.h.msvc): Define HAVE_DECL__SNPRINTF instead of defining snprintf as a macro. 2003-08-24 Bruno Haible * vasnprintf.c (local_wcslen): Protect against multiple definition. (USE_SNPRINTF): Define also if only _snprintf() is available. (SNPRINTF): Possibly define as _snprintf or _snwprintf. * configure.ac: Also check for _snprintf. 2003-08-11 Bruno Haible * vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1. (VASNPRINTF): Use it instead of wcslen. * configure.ac: Also check for wcslen. * Makefile.am (config.h_vms): Set HAVE_WCSLEN. (config.h.msvc): Likewise. 2003-06-20 Bruno Haible * configure.ac: Invoke gt_PRINTF_POSIX. * lib-asprintf.h: Ignore an existing vasprintf() if it doesn't support POSIX/XSI format strings. * lib-asprintf.c: Likewise. * Makefile.am (config.h_vms): Define HAVE_POSIX_PRINTF. 2003-06-19 Bruno Haible * configure.ac (jm_AC_TYPE_LONG_LONG): Replaces gt_TYPE_LONGLONG. * printf-parse.c: Generalize to it can be compiled for wide strings. (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros. * vasnprintf.c: Generalize to it can be compiled for wide strings. (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF, SNPRINTF): New macros. Don't include if the file is used inside libintl. 2003-05-30 Bruno Haible * autosprintf.texi: Tweak @dircategory and @direntry. Reported by Karl Berry . 2003-05-22 Bruno Haible * gettext-0.12.1 released. 2003-05-20 Bruno Haible * Makefile.am (config.h_vms, config.h.msvc, autosprintf.h.msvc-shared): Don't use $< here. 2003-05-19 Bruno Haible * windows/asprintf.rc: Include . Reported by Perry Rapp. 2003-05-18 Bruno Haible * Makefile.msvc (DEBUGFLAGS): New variable. (asprintf.lib): Use it. 2003-05-17 Bruno Haible * gettext-0.12 released. 2003-04-12 Bruno Haible * Makefile.am (config.h_vms): Renamed from config.h.vms. * Makefile.vms: New variables ABIFLAGS, DEFS. Avoid rules with no lines. Update library creation rule. Don't use the force target. Correct wildcard syntax. Suggested by Jouk Jansen . 2003-04-12 Bruno Haible * Makefile.am (docdir): Use datadir instead of prefix. * Makefile.msvc (datadir): New variable. (sub_docdir): Use it instead of prefix. (install, installdirs): Update. * Makefile.vms (datadir): New variable. (sub_docdir): Use it instead of prefix. 2003-03-30 Bruno Haible * Makefile.vms: New file. * Makefile.am (config.h.vms): New rule. (EXTRA_DIST): Add Makefile.vms and config.h.vms. 2003-03-17 Bruno Haible Native Woe32/MSVC support. * autosprintf.h.in: Renamed from autosprintf.h. * Makefile.msvc: New file. * README.woe32: New file. * windows/dllexport.h: New file. * windows/asprintf.rc: New file. * Makefile.am (EXTRA_DIST): Add them and config.h.msvc and autosprintf.h.in. (autosprintf.h): New rule. (MOSTLYCLEANFILES): Add autosprintf.h. (dist-hook): Don't distribute autosprintf.h. (config.h.msvc, autosprintf.h.msvc-shared): New rules. 2003-02-22 Bruno Haible * autosprintf.texi: Add comment about indices. * Makefile.am (MOSTLYCLEANFILES): No need to clean the unused indices. (The automake generated rule already cleans them.) 2003-02-22 Bruno Haible * Makefile.am (installdirs): Remove dependency, redundant with automake >= 1.6. 2003-02-18 Bruno Haible * Makefile.am (clean-am): New rule. For Solaris cc. 2003-02-12 Bruno Haible * configure.ac: Renamed from configure.in. Invoke AC_CONFIG_AUX_DIR. Invoke AC_FUNC_ALLOCA instead of gl_FUNC_ALLOCA. Remove redundant postprocessing of Makefile. * Makefile.am (ACLOCAL_AMFLAGS): Add -I ../../config/m4. ($(libasprintf_la_OBJECTS)): Make alloca.h dependency effective. 2003-01-03 Albert Chin * ltmain.sh: Don't pass -R flags found in a .la's dependency_libs variable directly down to the linker. Reported by Tim Mooney . 2003-01-12 Bruno Haible * configure.in: Invoke gl_FUNC_ALLOCA instead of AC_FUNC_ALLOCA. * alloca_.h: New file, from gnulib. * liballoca.h: Remove file. * Makefile.am: Add snippet from gnulib module alloca. (lib_asprintf_EXTRASOURCES): Remove liballoca.h. * vasnprintf.c: Include alloca.h instead of liballoca.h. 2003-01-12 Bruno Haible * Makefile.am: Make use of += for variables. 2003-01-12 Bruno Haible Portability to FreeBSD. * configure.in: Invoke gt_TYPE_WINT_T. * printf-args.h: Use HAVE_WINT_T, not HAVE_WCHAR_T, to check for availability of wint_t. * printf-argc.c: Likewise. * printf-parse.c: Likewise. * vasnprintf.c: Likewise. 2002-12-07 Bruno Haible Switch to autoconf-2.57 and automake-1.7.2. * configure.in: Use AC_CONFIG_FILES, because the AC_OUTPUT commands and not run any more when config.status is called to create a single file. 2002-11-13 Bruno Haible Assume ANSI C. * libstdarg.h: Remove file. * Makefile.am (lib_asprintf_EXTRASOURCES): Remove libstdarg.h. * asnprintf.c: Include instead of libstdarg.h. (asnprintf): Use ANSI C function declarations. Use va_start instead of VA_START. * asprintf.c: Include instead of libstdarg.h. (asnprintf): Use ANSI C function declarations. Use va_start instead of VA_START. * printf-args.h (PARAMS): Remove macro. (printf_fetchargs): Use ANSI C function declarations. * printf-args.c (printf_fetchargs): Likewise. * printf-parse.h (printf_parse): Likewise. * printf-parse.c (printf_parse): Likewise. * vasnprintf.h (PARAMS): Remove macro. (asnprintf, vasnprintf): Use ANSI C function declarations. * vasnprintf.c (vasnprintf): Likewise. * vasprintf.h (PARAMS): Remove macro. (asprintf, vasprintf): Use ANSI C function declarations. * vasprintf.c (vasprintf): Likewise. 2002-10-27 Bruno Haible * printf-args.h, printf-args.c: New files. * printf-parse.h, printf-parse.c: New files. * vasnprintf.h, vasnprintf.c, asnprintf.c: New files. * vasprintf.h, vasprintf.c, asprintf.c: New files. * lib-asprintf.h, lib-asprintf.c: New files. * autosprintf.h, autosprintf.cc: New files. * README, NEWS, AUTHORS, COPYING, autosprintf.texi: New files. * Makefile.am, configure.in: New files. * liballoca.h, libstdarg.h: New files, from gettext-0.11.6/lib. * COPYING.LIB, INSTALL, config.guess, config.sub, install-sh, ltmain.sh, missing, mkinstalldirs, texi2html, texinfo.tex: Standard infrastructure files, from gettext-0.11.6.