May 04, 2019
Gfortran 9.1 (part of GCC) has been released. Apparently this is a significant GCC release with a "huge number of improvements" including a new D language component. Of course, the Fortran updates are a little more modest. According to the release notes, the updates are:
- Asynchronous I/O is now fully supported [Fortran 2003].
- The
BACK
argument for MINLOC
and MAXLOC
has been implemented [Fortran 2008].
- The
FINDLOC
intrinsic function has been implemented [Fortran 2008].
- The
IS_CONTIGUOUS
intrinsic function has been implemented [Fortran 2008].
- Direct access to the real and imaginary parts of a complex variable via
c%re
and c%im
has been implemented [Fortran 2008].
- Type parameter inquiry via
str%len
and a%kind
has been implemented [Fortran 2008].
- C descriptors and the
ISO_Fortran_binding.h
source file have been implemented [Fortran 2018].
- The
MAX
and MIN
intrinsics are no longer guaranteed to return any particular value in case one of the arguments is NaN
.
- A new command-line option
-fdec-include
, has been added as an extension for compatibility with legacy code using some non-standard behavior from the old DEC compiler.
- A new
BUILTIN
directive, has been added. The purpose of the directive is to provide an API between the GCC compiler and the GNU C Library which would define vector implementations of math routines.
In addition, the release includes a bunch of bug fixes. Gfortran has more-or-less complete support for Fortran 2003, and only a couple things missing from Fortran 2008. There is a ways to go for full Fortran 2018 support. Gfortran is maintained by a very small number of volunteers, and their hard work is greatly appreciated!
See also
Mar 10, 2018
OpenCoarrays 2.0.0 has been released. According to the release notes, this release adds support for:
- Fortran 2018 teams (note that this requires the use of GFortran 8.x, currently under development)
- Fortran 2018
QUIET
specifier in STOP
and ERROR STOP
statements
- Fortran 2008 allocatable & pointer components of derived-type coarrays
Since Fortran 2008 (with the inclusion of coarrays in the standard), Fortran has been a PGAS programming language. Fortran 2018 adds additional enhancements for coarrays (including the teams feature, and support for detection of failed images). OpenCoarrays is an open source (permissive BSD license) library that enables coarray support in the GFortran compiler.
See also
May 02, 2017
GCC (which includes GFortran) version 7.1 has just been released. Various features from Fortran 2003-2015 have been added, including:
- User-defined derived-type input/output (UDTIO).
- Partial support for derived type coarrays with allocatable and pointer components.
- Non-constant stop codes and error stop codes.
- Derived types with allocatable components of recursive type.
- Intrinsic assignment to polymorphic variables.
Partial support for OpenMP 4.5 is also included. It looks like they also added support for several non-standard extensions that are present in legacy code. GFortran still hasn't quite made it to full Fortran 2003 support, over a decade after that standard was published. But they are getting there. Thanks to the small number of volunteers who work on this. You are the real heroes!
See also
Apr 28, 2016
Gfortran 6.1 (part of GCC) has been released. The release notes don't say much with respect to Fortran:
- The
MATMUL
intrinsic is now inlined for straightforward cases if front-end optimization is active. The maximum size for inlining can be set to n
with the -finline-matmul-limit=n
option and turned off with -finline-matmul-llimit=0
.
- The
-Wconversion-extra
option will warn about REAL constants which have excess precision for their kind.
- The
-Winteger-division
option has been added, which warns about divisions of integer constants which are truncated. This option is included in -Wall
by default.
But, apparently, this version includes some nice updates, including support for Fortran 2008 submodules, Fortran 2015 Coarray events, as well as bug fixes for deferred-length character variables.
See also
Apr 25, 2015
The GNU Project just announced the availability of GCC 5.1. There are various new GFortran features, including:
- Availability of the intrinsic IEEE modules (
ieee_features
, ieee_exceptions
and ieee_arithmetic
) from Fortran 2003.
- Support for
implicit none (external, type)
from Fortran 2015.
GFortran is still not completely Fortran 2003 compatible, however.
In Intel news, Intel Parallel Studio XE 2016 is now in beta (which includes v16 of the Intel Fortran Compiler). The major new features are:
- Submodules from Fortran 2008!
impure elemental
from Fortran 2008.
- "Further Interoperability with C" features from TS29113 (Fortran 2015 draft).
Jul 20, 2014
GCC 4.9.1 has been released. The big news for Fortran users is that OpenMP 4.0 is now supported in gfortran.