This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Release notes for c-4_5-branch changes
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 1 Apr 2009 16:25:34 +0000 (UTC)
- Subject: Release notes for c-4_5-branch changes
I've applied this patch adding release notes for the constant expressions
and excess precision changes merged from c-4_5-branch.
I didn't mention the VLA size evaluation fixes (I do not expect normal
user code to involve side effects in VLA size expressions, which is mainly
what's affected by those bug fixes). I didn't mention the stdint.h
changes since the correct description of those will depend so much on
whether people fill in the information for all targets. (Right now it's
along the lines of "GCC provides a <stdint.h> on a few targets that is
self-contained for freestanding compilations, so could be e.g. used in
Linux kernel compilations in a way that glibc's could not."; the aim would
be for "GCC ensures a C99-conforming <stdint.h> is available on all
targets for both hosted and freestanding compilations."; any associated
Fortran changes would of course get their own release note.)
Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.5/changes.html,v
retrieving revision 1.4
diff -u -r1.4 changes.html
--- changes.html 1 Apr 2009 06:17:44 -0000 1.4
+++ changes.html 1 Apr 2009 16:20:03 -0000
@@ -37,6 +37,10 @@
found, the compiler exits immediately. This avoids a cascade of
errors arising from declarations expected to be found in that
header being missing.</li>
+ <li>GCC now implements C90- and C99-conforming rules for constant
+ expressions. This may cause warnings or errors for some code
+ using expressions that can be folded to a constant but are not
+ constant expressions as defined by ISO C.</li>
</ul>
<h3>C++</h3>
@@ -57,7 +61,12 @@
<h3>IA-32/x86-64</h3>
<ul>
- <li>...</li>
+ <li>GCC now supports handling floating-point excess precision
+ arising from use of the x87 floating-point unit in a way that
+ conforms to ISO C99. This is enabled
+ with <code>-fexcess-precision=standard</code> and with standards
+ conformance options such as <code>-std=c99</code>, and may be
+ disabled using <code>-fexcess-precision=fast</code>.</li>
</ul>
<h3>MIPS</h3>
--
Joseph S. Myers
joseph@codesourcery.com