[wwwdocs] Update Fortran part in gcc-4.9/changes.html

Message ID 51C97D70.8080300@net-b.de
State New
Headers show

Commit Message

Tobias Burnus June 25, 2013, 11:22 a.m.
The attached patch updates the Fortran part of the GCC 4.9 release notes.

Comments are welcome. Otherwise, I intent to commit it soon. (Well, 
comments are also welcome after committal ;-)



Index: changes.html
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.9/changes.html,v
retrieving revision 1.19
diff -u -p -r1.19 changes.html
--- changes.html	25 Jun 2013 08:05:13 -0000	1.19
+++ changes.html	25 Jun 2013 11:22:14 -0000
@@ -137,12 +137,32 @@  void f(int n) {
     <li>Compatibility notice:
-      <li>Note that the argument passing ABI has changed for scalar dummy
-	arguments of type <code>INTEGER</code>, <code>REAL</code>,
-	<code>COMPLEX</code> and <code>LOGICAL</code>, which have
-	<em>both</em> the <code>VALUE</code> and the <code>OPTIONAL</code>
-	attribute.</li>
-    </ul></li>
+      <li>Module files: The version of the module files (<code>.mod</code>)
+        has been incremented; additionally, module files are now compressed.
+        Fortran <code>MODULE</code>s compiled by earlier GCC versions have
+        to be recompiled, when they are <code>USE</code>d by files compiled
+        with GCC 4.9, because GCC 4.9 is not able to read <code>.mod</code>
+        files of earlier GCC versions; attempting to do so gives an error
+        message. Note: The ABI of the produced assembler data itself has not
+        changed: object files and libraries are fully compatible to older
+        versions. (Except for the next items.)</li>
+      <li>ABI changes:
+      <ul>
+        <li>Note that the <a
+          href="http://gcc.gnu.org/onlinedocs/gfortran/Argument-passing-conventions.html"
+          >argument passing ABI</a> has changed for scalar dummy
+  	  arguments of type <code>INTEGER</code>, <code>REAL</code>,
+	  <code>COMPLEX</code> and <code>LOGICAL</code>, which have
+	  <em>both</em> the <code>VALUE</code> and the <code>OPTIONAL</code>
+	  attribute.</li>
+        <li>Due to the support of finalization, the virtual table associated
+          with polymorphic variables has changed. Therefore, code containing
+          <code>CLASS</code> should be recompiled, including all files which
+          define derived types involved in the type definition used by
+          polymorphic variables. (Note: Due to the incremented module version,
+          trying to mix old code with new code will usually give an error
+          message.)</li>
+      </ul></li>
     <li>The deprecated command-line option <code>-fno-whole-file</code>
       has been removed. (<code>-fwhole-file</code> is the default since
       GCC 4.6.) <code>-fwhole-file</code>/<code>-fno-whole-file</code>
@@ -167,6 +187,21 @@  void f(int n) {
       rank; contrary to <code>NO_ARG_CHECK</code> assumed-rank arguments
       pass an array descriptor which contains the array shape and stride
       of the argument.</li>
+    <li><a href="http://gcc.gnu.org/wiki/Fortran2003Status">Fortran 2003</a>:
+    <ul>
+      <li>Finalization is now supported. Note that finalization is currently
+        only done for a subset of the situations in which it should occur.</li>
+    </li></ul>
+    <li><a href="http://gcc.gnu.org/wiki/Fortran2008Status">Fortran 2008</a>:
+    <ul>
+      <li>When <code>STOP</code> or <code>ERROR STOP</code> is used to terminate
+        the execution and any exception (but inexact) is signaling, a warning is
+        printed to <code>ERROR_UNIT</code>, indicating which exceptions are
+        signaling. The <code><a
+        href="http://gcc.gnu.org/onlinedocs/gfortran/Debugging-Options.html"
+        >-ffpe-summary=</a></code> command-line option can be used to fine-tune
+        for which exception the warning should be shown.</li>
+    </li></ul>