New Gcc-4.4.0 almost ready
By Elena on Mar 09, 2009
The new gcc-4.4.0 is in the final stabilization phase and should be released shortly. I asked our team member Paolo Carlini what is new in this gcc release. Here is what he says:
If everything goes well a few week from now gcc4.4.0 will be released by the GNU Compiler Collection Project. The number of open high priority regressions is already well below the threshold of 100 set by the release managers, that is 81, thus a release branch will be created very soon and the actual release of the .0 version will shortly follow.
As usual, this new series offers a mix of new features and improvements, in the core compilers, in the libraries and improved conformance to the standards in force. The main entry point for the release notes is the following:
but it's still being finalized, thus some additions are expected, and a few small tweaks too. In particular, many news in the C++ runtime, library area, contributed or closely followed by our in-house GCC hackers, and summarized here as follows:
- Many C++0x headers have been added, following as close as possible the most recent draft (N2800, http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2800.pdf) of the forthcoming new ISO standard:
<cstdatomic>, supporting multithreaded programming.
<ratio>, for general use and providing infrastructure to the above.
<forward_list>, a new container, a single-linked list.
<system_error>, providing components to report OS / low-level error conditions.
- Existing facilities have been extended to exploit in C++0x mode the new core language facilities implemented in the gcc4.4 C++ front-end for the first time, like initializer lists, defaulted / deleted functions and strongly typed enums. Headers
<string> have been extended to support the new char16_t and char32_t character types.
- Existing containers in C++0x mode are now more efficient together with stateful allocators (i.e., no allocators are created on the fly at element construction time).
- Many bugs have been fixed in existing TR1 facilities. Likewise for a series of subtle corner cases in the
- All the headers have been further cleaned-up wrt the 4.3.x release series (e.g., most of the times the relatively big
<cstdio> is not included anymore as an implementation detail) for the benefit of building times, in particular at -O0, and also helping the maintainers when dealing with large user-provided testcases.
- Some long standing bugs have been fixed, for example FSF issue libstdc++/30928: the prototypes of some "C" string search facilities (like memchr, strchr, etc, and the wchar_t counterparts) have been fixed according to the ISO C++ Standard.
Nothing is set in stone yet, a few weeks of pure bug fixing activities are expected before the final release date, thus all the interested colleagues are encouraged to test the weekly snapshots or trees checked out via svn. The reference web page is the usual:
and of course, in particular for issues having to do with the C++ library and front-end but really for any non-trivial doubt and curiosity, people are also encouraged to keep in touch with our in-house colleagues working on GCC, thus Kris Van Hees, Paolo Carlini, and Pearly Zhao.