]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gfortran.texi (Fortran 2008 status, [...]): Update implementation status, change...
authorTobias Burnus <burnus@net-b.de>
Sat, 15 Oct 2011 08:34:36 +0000 (10:34 +0200)
committerTobias Burnus <burnus@gcc.gnu.org>
Sat, 15 Oct 2011 08:34:36 +0000 (10:34 +0200)
2011-10-15  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (Fortran 2008 status, TS 29113 status,
        Further Interoperability of Fortran with C): Update implementation
        status, change references from TR 29113 to TS 29113.
        * intrinsic.texi (RANK): Change TR 29113 to TS 29113.
        * invoke.text (-std=): Ditto, change -std=f2008tr to
        * -std=f2008ts.
        * lang.opt (std=): Ditto.
        * options.c (gfc_handle_option, set_default_std_flags): Ditto
        * and
        change GFC_STD_F2008_TR to GFC_STD_F2008_TS.
        * libgfortran.h: Ditto.
        * intrinsic.c (add_functions, gfc_check_intrinsic_standard):
        * Ditto.
        * decl.c (verify_c_interop_param): Ditto.

2011-10-15  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/bind_c_usage_23.f90: Change TR 29113 to TS 29113
        * in
        the comments.
        * gfortran.dg/bind_c_usage_24.f90: Ditto.
        * gfortran.dg/rank_3.f90: Ditto.
        * gfortran.dg/bind_c_usage_22.f90: Ditto, change -std=f2008tr to
        -std=f2008ts in dg-options.
        * gfortran.dg/rank_4.f90: Ditto.

From-SVN: r180024

15 files changed:
gcc/fortran/ChangeLog
gcc/fortran/decl.c
gcc/fortran/gfortran.texi
gcc/fortran/intrinsic.c
gcc/fortran/intrinsic.texi
gcc/fortran/invoke.texi
gcc/fortran/lang.opt
gcc/fortran/libgfortran.h
gcc/fortran/options.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/bind_c_usage_22.f90
gcc/testsuite/gfortran.dg/bind_c_usage_23.f90
gcc/testsuite/gfortran.dg/bind_c_usage_24.f90
gcc/testsuite/gfortran.dg/rank_3.f90
gcc/testsuite/gfortran.dg/rank_4.f90

index d32e26cdb279a699f1c36b6e5bf277ce3bd9ea0c..591745d349c6e9791ba5d89a91949b1869d3fce8 100644 (file)
@@ -1,3 +1,17 @@
+2011-10-15  Tobias Burnus  <burnus@net-b.de>
+
+       * gfortran.texi (Fortran 2008 status, TS 29113 status,
+       Further Interoperability of Fortran with C): Update implementation
+       status, change references from TR 29113 to TS 29113.
+       * intrinsic.texi (RANK): Change TR 29113 to TS 29113.
+       * invoke.text (-std=): Ditto, change -std=f2008tr to -std=f2008ts.
+       * lang.opt (std=): Ditto.
+       * options.c (gfc_handle_option, set_default_std_flags): Ditto and
+       change GFC_STD_F2008_TR to GFC_STD_F2008_TS.
+       * libgfortran.h: Ditto.
+       * intrinsic.c (add_functions, gfc_check_intrinsic_standard): Ditto.
+       * decl.c (verify_c_interop_param): Ditto.
+
 2011-10-14  Janus Weil  <janus@gcc.gnu.org>
 
        PR fortran/50570
index 0ee257591134a12a25b44c2404907e9361a95af5..9f3a39e56608cbb9b8ae66dc9e719bef62d6380c 100644 (file)
@@ -1069,7 +1069,7 @@ verify_c_interop_param (gfc_symbol *sym)
              retval = FAILURE;
            }
          else if (sym->attr.optional == 1
-                  && gfc_notify_std (GFC_STD_F2008_TR, "TR29113: Variable '%s' "
+                  && gfc_notify_std (GFC_STD_F2008_TS, "TS29113: Variable '%s' "
                                      "at %L with OPTIONAL attribute in "
                                      "procedure '%s' which is BIND(C)",
                                      sym->name, &(sym->declared_at),
index 389c05bfaab10ba0255aadfbba902e71f646052a..f847df3840907953c19f0c61aec0322c271ee373 100644 (file)
@@ -772,7 +772,7 @@ compile option was used.
 @menu
 * Fortran 2003 status::
 * Fortran 2008 status::
-* TR 29113 status::
+* TS 29113 status::
 @end menu
 
 @node Fortran 2003 status
@@ -1003,8 +1003,11 @@ the intrinsic module @code{ISO_FORTRAN_ENV}.
 @code{ISO_C_BINDINGS} and @code{COMPILER_VERSION} and @code{COMPILER_OPTIONS}
 of @code{ISO_FORTRAN_ENV}.
 
-@item Experimental coarray, use the @option{-fcoarray=single} or
-@option{-fcoarray=lib} flag to enable it.
+@item Coarray support for serial programs with @option{-fcoarray=single} flag
+and experimental support for multiple images with the @option{-fcoarray=lib}
+flag.
+
+@item The @code{DO CONCURRENT} construct is supported.
 
 @item The @code{BLOCK} construct is supported.
 
@@ -1049,19 +1052,25 @@ arrays are supported for named constants (@code{PARAMETER}).
 
 
 
-@node TR 29113 status
-@section Fortran 29113 status
+@node TS 29113 status
+@section Technical Specification 29113 Status
 
-GNU Fortran supports some of the new features of the technical report (TR)
-29113 on Further Interoperability of Fortran with C.
-@uref{http://gcc.gnu.org/wiki/Fortran2008Status, wiki} has some information
-about the current TR 29113 implementation status.  In particular, the
+GNU Fortran supports some of the new features of the Technical
+Specification (TS) 29113 on Further Interoperability of Fortran with C.
+The @uref{http://gcc.gnu.org/wiki/TS29113Status, wiki} has some information
+about the current TS 29113 implementation status.  In particular, the
 following is implemented.
 
 @itemize
-@item The @option{-std=f2008} option.
-@item The OPTIONAL attribute is now allowed for dummy arguments of
-BIND(C) procedures.
+@item The @option{-std=f2008ts} option.
+
+@item The @code{OPTIONAL} attribute is allowed for dummy arguments
+of @code{BIND(C) procedures.}
+
+@item The RANK intrinsic is supported.
+
+@item GNU Fortran's implementation for variables with @code{ASYNCHRONOUS}
+attribute is compatible with TS 29113.
 @end itemize
 
 
@@ -2446,15 +2455,13 @@ END MODULE m
 Assumed-shape and allocatable arrays are passed using an array descriptor
 (dope vector).  The internal structure of the array descriptor used
 by GNU Fortran is not yet documented and will change.  There will also be
-a Technical Report (TR 29113) which standardizes an interoperable
+a Technical Specification (TS 29113) which standardizes an interoperable
 array descriptor.  Until then, you can use the Chasm Language
 Interoperability Tools, @url{http://chasm-interop.sourceforge.net/},
 which provide an interface to GNU Fortran's array descriptor.
 
-The technical report 29113 will presumably also include support for
-C-interoperable @code{OPTIONAL} and for assumed-rank and assumed-type
-dummy arguments.  However, the TR has neither been approved nor implemented
-in GNU Fortran; therefore, these features are not yet available.
+GNU Fortran already supports the C-interoperable @code{OPTIONAL}
+attribute; for absent arguments, a @code{NULL} pointer is passed.
 
 
 
@@ -2620,9 +2627,9 @@ Possible values are (bitwise or-ed) @code{GFC_STD_F77} (1),
 @code{GFC_STD_F95_OBS} (2), @code{GFC_STD_F95_DEL} (4), @code{GFC_STD_F95}
 (8), @code{GFC_STD_F2003} (16), @code{GFC_STD_GNU} (32),
 @code{GFC_STD_LEGACY} (64), @code{GFC_STD_F2008} (128), 
-@code{GFC_STD_F2008_OBS} (256) and GFC_STD_F2008_TR (512). Default:
+@code{GFC_STD_F2008_OBS} (256) and GFC_STD_F2008_TS (512). Default:
 @code{GFC_STD_F95_OBS | GFC_STD_F95_DEL | GFC_STD_F95 | GFC_STD_F2003
-| GFC_STD_F2008 | GFC_STD_F2008_TR | GFC_STD_F2008_OBS | GFC_STD_F77
+| GFC_STD_F2008 | GFC_STD_F2008_TS | GFC_STD_F2008_OBS | GFC_STD_F77
 | GFC_STD_GNU | GFC_STD_LEGACY}.
 @item @var{option}[1] @tab Standard-warning flag; prints a warning to
 standard error.  Default: @code{GFC_STD_F95_DEL | GFC_STD_LEGACY}.
index 5946ddd8be27bcb8823abc64702cdfa3338964b6..8f437cc05fe4000a66bf2591e16df09c7e407903 100644 (file)
@@ -2434,9 +2434,9 @@ add_functions (void)
   make_generic ("range", GFC_ISYM_RANGE, GFC_STD_F95);
 
   add_sym_1 ("rank", GFC_ISYM_RANK, CLASS_INQUIRY, ACTUAL_NO, BT_INTEGER, di,
-            GFC_STD_F2008_TR, gfc_check_rank, gfc_simplify_rank, NULL,
+            GFC_STD_F2008_TS, gfc_check_rank, gfc_simplify_rank, NULL,
             a, BT_REAL, dr, REQUIRED);
-  make_generic ("rank", GFC_ISYM_RANK, GFC_STD_F2008_TR);
+  make_generic ("rank", GFC_ISYM_RANK, GFC_STD_F2008_TS);
 
   add_sym_2 ("real", GFC_ISYM_REAL, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_F77,
             gfc_check_real, gfc_simplify_real, gfc_resolve_real,
@@ -3989,8 +3989,8 @@ gfc_check_intrinsic_standard (const gfc_intrinsic_sym* isym,
       symstd_msg = "new in Fortran 2008";
       break;
 
-    case GFC_STD_F2008_TR:
-      symstd_msg = "new in TR 29113";
+    case GFC_STD_F2008_TS:
+      symstd_msg = "new in TS 29113";
       break;
 
     case GFC_STD_GNU:
index a093bec8c7c6fc1d86eedc18322b5b6e8a1b5472..11f87a57308278cc3f3c92583afe963dc68602c4 100644 (file)
@@ -10222,7 +10222,7 @@ See @code{PRECISION} for an example.
 @code{RANK(A)} returns the rank of a scalar or array data object.
 
 @item @emph{Standard}:
-Technical Report (TR) 29113
+Technical Specification (TS) 29113
 
 @item @emph{Class}:
 Inquiry function
index 44f384eff78be4a1a6cca89eebc5ee358c8271e7..5bb9b9dbbdf82bc54ca05c3909a43d1c5f65e610 100644 (file)
@@ -368,9 +368,10 @@ extensions, and may be useful for old non-standard programs.  The
 conformance to the Fortran 95, Fortran 2003 and Fortran 2008 standards,
 respectively; errors are given for all extensions beyond the relevant
 language standard, and warnings are given for the Fortran 77 features
-that are permitted but obsolescent in later standards. @samp{-std=f2008tr}
+that are permitted but obsolescent in later standards. @samp{-std=f2008ts}
 allows the Fortran 2008 standard including the additions of the 
-technical report (TR) 29113.
+Technical Specification (TS) 29113 on Further Interoperability of Fortran
+with C.
 
 @end table
 
index 1a3d073b3fbb9a668a7fcecfb4f67d806e8d917b..081041bebe7e288eddee8f706c6752d5dc586129 100644 (file)
@@ -590,9 +590,9 @@ std=f2008
 Fortran
 Conform to the ISO Fortran 2008 standard
 
-std=f2008tr
+std=f2008ts
 Fortran
-Conform to the ISO Fortran 2008 standard including TR 29113
+Conform to the ISO Fortran 2008 standard including TS 29113
 
 std=f95
 Fortran
index b2137bbf80fb072d44960f9885861107af1bbd89..874cd9537bbb4e3bc3d3b67461a88df5bcca8515 100644 (file)
@@ -23,7 +23,7 @@ along with GCC; see the file COPYING3.  If not see
    Note that no features were obsoleted nor deleted in F2003.
    Please remember to keep those definitions in sync with
    gfortran.texi.  */
-#define GFC_STD_F2008_TR       (1<<9)  /* POST-F2008 technical reports.  */
+#define GFC_STD_F2008_TS       (1<<9)  /* POST-F2008 technical reports.  */
 #define GFC_STD_F2008_OBS      (1<<8)  /* Obsolescent in F2008.  */
 #define GFC_STD_F2008          (1<<7)  /* New in F2008.  */
 #define GFC_STD_LEGACY         (1<<6)  /* Backward compatibility.  */
index 4c59bd59eeb7ccdde0fcfa02c314ab3023810381..dcb11e85d1c7fd35f874d8dc2d7747b75fb2d4a7 100644 (file)
@@ -49,7 +49,7 @@ set_default_std_flags (void)
 {
   gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL
     | GFC_STD_F2003 | GFC_STD_F2008 | GFC_STD_F95 | GFC_STD_F77
-    | GFC_STD_F2008_OBS | GFC_STD_F2008_TR | GFC_STD_GNU | GFC_STD_LEGACY;
+    | GFC_STD_F2008_OBS | GFC_STD_F2008_TS | GFC_STD_GNU | GFC_STD_LEGACY;
   gfc_option.warn_std = GFC_STD_F95_DEL | GFC_STD_LEGACY;
 }
 
@@ -945,10 +945,10 @@ gfc_handle_option (size_t scode, const char *arg, int value,
       gfc_option.warn_tabs = 0;
       break;
 
-    case OPT_std_f2008tr:
+    case OPT_std_f2008ts:
       gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F77 
        | GFC_STD_F2003 | GFC_STD_F95 | GFC_STD_F2008 | GFC_STD_F2008_OBS
-       | GFC_STD_F2008_TR;
+       | GFC_STD_F2008_TS;
       gfc_option.warn_std = GFC_STD_F95_OBS | GFC_STD_F2008_OBS;
       gfc_option.max_identifier_length = 63;
       gfc_option.warn_ampersand = 1;
index c89e644d3d71137994a02be7901b317f9fd18208..5f88a4645a2679cec3cee65687b6eefd5c6d633e 100644 (file)
@@ -1,3 +1,13 @@
+2011-10-15  Tobias Burnus  <burnus@net-b.de>
+
+       * gfortran.dg/bind_c_usage_23.f90: Change TR 29113 to TS 29113 in
+       the comments.
+       * gfortran.dg/bind_c_usage_24.f90: Ditto.
+       * gfortran.dg/rank_3.f90: Ditto.
+       * gfortran.dg/bind_c_usage_22.f90: Ditto, change -std=f2008tr to
+       -std=f2008ts in dg-options.
+       * gfortran.dg/rank_4.f90: Ditto.
+
 2011-10-15  Oleg Endo  <oleg.endo@t-online.de>
 
        PR target/49263
index 861f8c7cfd8e3f390dc5bdbc3d78a7839871737c..5a5771c7a0f65595cdc4d4b62d43f6f273da2f98 100644 (file)
@@ -1,10 +1,10 @@
 ! { dg-do compile }
-! { dg-options "-std=f2008tr" }
+! { dg-options "-std=f2008ts" }
 !
 ! PR fortran/48858
 ! PR fortran/48820
 !
-! OPTIONAL + BIND(C) is allowed since TR 29113
+! OPTIONAL + BIND(C) is allowed since TS 29113
 !
 
 ! VALID
@@ -13,20 +13,20 @@ subroutine sub(z) bind(C)
   integer(c_int), value :: z
 end subroutine sub
 
-! VALID since TR29113
+! VALID since TS29113
 subroutine sub2(z) bind(C)
   use iso_c_binding
   integer(c_int), optional :: z
 end subroutine sub2
 
-! VALID since TR29113
+! VALID since TS29113
 subroutine sub2a(z) bind(C)
   use iso_c_binding
   integer(c_int) :: z
   optional :: z
 end subroutine sub2a
 
-! VALID since TR29113
+! VALID since TS29113
 subroutine sub2b(z) bind(C)
   use iso_c_binding
   optional :: z
index 374f8129136fcea2babbbcb0b99b0f153774aeac..3917b9d3001de1e9ca8157f20eb2aaf344dede53 100644 (file)
@@ -4,7 +4,7 @@
 ! PR fortran/48858
 ! PR fortran/48820
 !
-! OPTIONAL + BIND(C) is allowed since TR 29113
+! OPTIONAL + BIND(C) is allowed since TS 29113
 !
 
 ! VALID
@@ -13,20 +13,20 @@ subroutine sub(z) bind(C)
   integer(c_int), value :: z
 end subroutine sub
 
-! VALID since TR29113
+! VALID since TS29113
 subroutine sub2(z) bind(C) ! { dg-error "with OPTIONAL attribute in procedure" }
   use iso_c_binding
   integer(c_int), optional :: z
 end subroutine sub2
 
-! VALID since TR29113
+! VALID since TS29113
 subroutine sub2a(z) bind(C) ! { dg-error "with OPTIONAL attribute in procedure" }
   use iso_c_binding
   integer(c_int) :: z
   optional :: z
 end subroutine sub2a
 
-! VALID since TR29113
+! VALID since TS29113
 subroutine sub2b(z) bind(C) ! { dg-error "with OPTIONAL attribute in procedure" }
   use iso_c_binding
   optional :: z
index 703ab5f19fa11c8feba0ea883e10a9bb14449f64..a6ebd5833c1c195f7aef854a7d2fc0c642ea164e 100644 (file)
@@ -4,7 +4,7 @@
 ! PR fortran/48858
 ! PR fortran/48820
 !
-! TR 29113: BIND(C) with OPTIONAL
+! TS 29113: BIND(C) with OPTIONAL
 !
 module m
   use iso_c_binding
index fac2185a9fe9ab566da88115facb43ec3a34cf9c..c8f8fa775084775b48539181fcea253ca0c2ea6b 100644 (file)
@@ -3,5 +3,5 @@
 !
 ! PR fortran/48820
 !
-intrinsic :: rank  ! { dg-error "new in TR 29113" }
+intrinsic :: rank  ! { dg-error "new in TS 29113" }
 end
index 40b0209da953d0604e93fc4fce2a78f94b610248..a370df01c7da48672628031db35b9789a607167a 100644 (file)
@@ -1,5 +1,5 @@
 ! { dg-do compile }
-! { dg-options "-std=f2008tr -fdump-tree-original" }
+! { dg-options "-std=f2008ts -fdump-tree-original" }
 !
 ! PR fortran/48820
 !