From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16065 invoked by alias); 15 Sep 2008 16:47:50 -0000 Received: (qmail 15003 invoked by uid 22791); 15 Sep 2008 16:43:13 -0000 X-Spam-Check-By: sourceware.org Message-ID: <2bf229d30809150942w3d1a5a84tf293a9f8d54afb79@mail.gmail.com> Date: Mon, 15 Sep 2008 16:47:00 -0000 From: "Chris Sutcliffe" To: cygwin-announce@cygwin.com Subject: Updated: mingw-runtime-3.15 MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Mailing-List: contact cygwin-announce-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-announce-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Reply-To: The Cygwin Mailing List X-SW-Source: 2008-09/txt/msg00008.txt.bz2 I've made a new version of the mingw-runtime available for download. For a list of changes see: http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/mingw/ChangeLog?rev=1.409&cvsroot=src New features in release 3.15 ============================ * A replacement implementation for MinGW's snprintf() and vsnprintf() functions; this further extends the scope of replacement to include printf(), fprintf(), sprintf(), vprintf(), vfprintf() and vsprintf() featuring:-- - Full support for *all* of the *standard* format conversion specs mandated by ISO-C99 and POSIX, (excluding POSIX-XSI extensions). - Microsoft's non-standard format conversion specs also supported. - Correct formatting of values with MinGW's long double data type. As in previous releases, the MinGW implementations of snprintf() and vsnprintf() are the default for these two functions, with the MSVCRT alternatives being called as _snprintf() and _vsnprintf(). In the case of the other six replacement functions, MSVCRT provides no underscore decorated name by which they may be invoked; thus, the MSVCRT implementation for these remains the default. To enable the MinGW replacements for these six functions, users may employ any one (or more) of the following, (and *must* #include stdio.h):-- - Include the `-posix' option, in the GCC command, when compiling. - Compile with the `-ansi' option, or any of the `std' options which causes __STRICT_ANSI__ to be defined. - Define any of __STRICT_ANSI__, _ISOC99_SOURCE, _POSIX_SOURCE, _POSIX_C_SOURCE, _GNU_SOURCE, _BSD_SOURCE, _SVID_SOURCE, _XOPEN_SOURCE or _XOPEN_SOURCE_EXTENDED, *before* including *any* system header file, and in particular stdio.h, (which *must* be included). - Define __USE_MINGW_ANSI_STDIO with a non-zero value, *before* including *any* system header file. - Define __MINGW_FEATURES__ to represent any odd valued unsigned long long integer, (i.e. __MINGW_FEATURES__ & 0x1ULL == 0x1ULL), *before* including *any* system header file. - Microsoft's convention of printing at least three exponent digits, for "%e" format, (and for "%g" when appropriate), is retained as default; support for _set_output_format(_TWO_DIGIT_EXPONENT) is included, for users of MSVCR80.DLL (and later). - Users preferring the ISO-C99/POSIX standard of only two exponent digits may set PRINTF_EXPONENT_DIGITS=2, in the environment; this capability is supported by all of the MinGW replacement functions named above, for users of all versions of MSVCRT. N.B. *All* of the above techniques, which induce the selection of the MinGW replacement functions may be overridden, by *explicitly* defining __USE_MINGW_ANSI_STDIO as zero, *before* including *any* system header file. When the MinGW replacement functions have been selected, by any of the above methods, the original MSVCRT function may be invoked by prefixing `__msvcrt_' to the function name, e.g. __msvcrt_printf(). * A replacement implementation for the getopt() family of functions, adding support for the GNU getopt_long_only() function. Users should note that this intentionally *removes* support for the BSD or Mac OS-X specific, and non-standard, `optreset' global variable; to reset the getopt() scanner, use `optind = 0;' instead of relying on this non-standard, non-portable and now-unsupported feature. To update your installation, click on the "Install Cygwin now" link on the http://cygwin.com/ web page. This downloads setup.exe to your system. Then, run setup and answer all of the questions. If you have questions or comments, please send them to the Cygwin mailing list at: cygwin@cygwin.com . *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO *** If you want to unsubscribe from the cygwin-announce mailing list, look at the "List-Unsubscribe: " tag in the email header of this message. Send email to the address specified there. It will be in the format: cygwin-announce-unsubscribe-you=yourdomain.com@cygwin.com If you need more information on unsubscribing, start reading here: http://sources.redhat.com/lists.html#unsubscribe-simple Please read *all* of the information on unsubscribing that is available starting at this URL. Chris -- Chris Sutcliffe http://emergedesktop.org