This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Patch,wwwdocs] 4.5 changes: MPC and Fortran

Hello Gerald, hi Kaveh, dear all,

I updated gcc-4.5/changes.html with the items from the
news section of the gfortran wiki for MPC and Fortran.

I think the list should be reasonably complete, but
I am sure the wording can be improved.

Suggestions for the wording? OK for check in?

Index: htdocs/gcc-4.5/changes.html
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.5/changes.html,v
retrieving revision 1.15
diff -u -p -r1.15 changes.html
--- htdocs/gcc-4.5/changes.html	3 Jun 2009 09:31:29 -0000	1.15
+++ htdocs/gcc-4.5/changes.html	8 Jun 2009 18:56:33 -0000
@@ -40,6 +40,13 @@
     allows the user to get debugging dumps when doing parallel builds
     without two builds of the same filename interfering with each other.</li>
+    <li>The <a href="";>Multiple Precision
+    Complex Library</a> (MPC) is now used if found at during configure.
+    This allows GCC to evaluate and replace at compile-time calls to
+    complex built-in math functions having constant arguments with their
+    mathematically equivalent results. Some complex functions were
+    supported before; those are used as fall back if MPC is not used.</li>
 <h2>New Languages and Language specific improvements</h2>
@@ -88,6 +95,81 @@
   <h4>Runtime Library (libstdc++)</h4>
+  <ul>
+    <li>The <code>COMMON</code> default padding has been changed &ndash;
+    instead of adding the padding before a variable it is now added
+    afterwards, which increases the compatibility with other vendors
+    and helps to obtain the correct output in some cases. Cf. also the
+    <code>-falign-commons</code> flag (<a href="../gcc-4.4/changes.html">added
+    in 4.4</a>).</li>
+    <li>The <code>-finit-real=</code> flag now supports also the value
+    <code>snan</code> for signalling not-a-number; one needs to enable
+    trapping (e.g. via <code>-ffpe-trap=</code>) to make them really
+    signalling. Note: Compile-time optimizations can turn a signalling
+    NaN into a quiet one.</li>
+    <li>The new flag <code>-fcheck=</code> had been added with the options
+    <code>bounds</code> and <code>array-temps</code>, which are equivalent
+    to <code>-fbounds-check</code> and
+    <code>-fcheck-array-temporaries</code>, and the new tests
+    <code>do</code> for finding invalid modification of loop iteration
+    variables and <code>recursive</code> for finding recursive calls to
+    subroutines/functions which are not marked as recursive. Using
+    <code>-fcheck=all</code> enables all those run-time checks.</li>
+    <li>The run-time checking <code>-fcheck=bounds</code> now warns
+    about invalid string-lengths of character dummy arguments. Additionally,
+    more compile-time checks have been added.</li>
+    <li>GNU Fortran no longer links agains <code>libgfortranbegin</code>.
+    As before <code>MAIN__</code> (assembler symbol name) is the actual
+    Fortran main program, which is invoked by <code>main</code> function.
+    However, <code>main</code> is now generated and in the same object
+    file as <code>MAIN__</code>. For the time being,
+    <code>libgfortranbegin</code> still exists for backward
+    compatibility. For details see the new <a
+    href="";>Mixed-Language
+    Programming</a> chapter in the manual.</li>
+    <li>The I/O library was restructured for performance and cleaner
+    code.</li>
+    <li>Array assignments and <code>WHERE</code> are now run in parallel when
+    OpenMP's <code>WORKSHARE</code> is used.</li>
+    <li>The experimental flag <code>-fwhole-file</code> was added. The flag
+    allows whole-file checking of procedure arguments and allows better
+    optimizations. It can also be used with <code>-fwhole-program</code>,
+    which is now also supported in gfortran.</li>
+    <li>Extended the support for using Fortran 2003 and Fortran 2008
+    mathematical functions in initialization expressions.</li>
+    <li>Fortran 2003 support has been extended:
+      <ul>
+       <li>Procedure-pointer function results and procedure-pointer
+       components with the NOPASS attribute,</li> 
+       <li><code>DEFERRED</code> type-bound procedures, and</li>
+       <li>the ERRMSG= argument of the ALLOCATE and DEALLOCATE statements
+       has been implemented.</li>
+       <li>The <code>INT_FAST{8,16,32,64,128}_T</code> kind type parameters
+       of the intrisic module <code>ISO_C_BINDING</code> are now supported.
+      </ul>
+    </li>
+    <li>Fortran 2008 support has been extended:
+      <ul>
+        <li>The <code>OPEN</code> statement now supports the
+        <code>NEWUNIT=</code> option, which returns a unique file unit,
+        thus preventing inadvertently uses the same unit at different parts
+	of the program.</li>
+        <li>The <code>INT{8,16,32}</code> and <code>REAL{32,64,128}</code>
+        kind type parameters of the <code>ISO_FORTRAN_ENV</code> module are
+        now supported.</li>
+      </ul>
+    </li>
+  </ul>
 <h3>Java (GCJ)</h3>

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]