Once 4.4 has branched I plan to merge the changes from c-4_5-branch to trunk. I plan to merge in three logical patches, each one with a logical change from the branch and all followups to that change combined into a single trunk commit, rather than merging the whole branch at once.
* Constant expressions, VLA size evaluation and delaying folding. Main patch with further information: <http://gcc.gnu.org/ml/gcc-patches/2008-10/msg01061.html>. Fixes bugs 456, 5675, 19976, 29116, 31871, 35198 and all other known target-independent constant expressions or VLA size evaluation C90 and C99 conformance issues as illustrated by the many testcases added. * C99-conforming excess precision. Main patch: <http://gcc.gnu.org/ml/gcc-patches/2008-11/msg00105.html>. Fixes bug 323 for C (other languages would need their own front-end work to implement suitable predictable semantics under the same command-line option in order to complete fixing the bug). * stdint.h. Main patch: <http://gcc.gnu.org/ml/gcc-patches/2008-11/msg00305.html>. Fixes bug 448 for glibc/uClibc, newlib and Solaris. Can be extended to fix for other targets by defining appropriate macros in the relevant tm.h headers and setting use_gcc_stdint appropriately in config.gcc according to whether the target has its own stdint.h header. Once this is in I'll post a list of target OSes needing these definitions (and if necessary, in due course propose deprecations of targets for which no-one has added the definitions, so we can move to the state where target stdint.h can be presumed to be available and the Fortran compiler will always have the information needed for the bindings to these types). The excess precision patch depends on the constant expressions patch. There are no dependencies between the stdint.h patch and the others. -- Joseph S. Myers jos...@codesourcery.com