New Language Features
The major new features for this release are as follows:
- New ways to specify iterations for a DO loop
You can now specify iterations (counts) for DO loops in several new ways. For more information,
see LOOP COUNT.
- OPTIMIZE and NOOPTIMIZE directive (Fortran 2003 feature)
The OPTIMIZE and NOOPTIMIZE directives enable or disable optimizations. For more information,
see OPTIMIZE and NOOPTIMIZE.
- New optional keyword for the PARALLEL general directive
You can now specify keyword ALWAYS for the PARALLEL general directive. For more information,
see PARALLEL and NOPARALLEL Loop Directives.
- MULT_HIGH_SIGNED intrinsic function
The MULT_HIGH_SIGNED intrinsic function multiplies two 64-bit signed integers on
systems using IA-64 architecture. For more information, see
MULT_HIGH_SIGNED.
- IS_IOSTAT_END intrinsic function (Fortran 2003 feature)
The IS_IOSTAT_END tests for an end-of-file condition. For more information, see
IS_IOSTAT_END.
- IS_IOSTAT_EOR intrinsic function (Fortran 2003 feature)
The IS_IOSTAT_EOR tests for an end-of-record condition. For more information, see
IS_IOSTAT_EOR.
- BIND attribute and statement (Fortran 2003 feature)
The BIND attribute specifies that an object is interoperable with C and has
external linkage. You can also specify language binding in functions and subroutines,
and when defining derived types. For more information, see
BIND, FUNCTION,
SUBROUTINE, and TYPE
Statement (Derived Types).
- ASYNCHRONOUS attribute and statement (Fortran 2003 feature)
The ASYNCHRONOUS attribute specifies that a variable can be used for asynchronous input and output.
You can also specify asynchronous I/O in an INQUIRE, OPEN, READ, or WRITE statement. For more information, see
ASYNCHRONOUS,
Asynchronous Specifier, READ,
and WRITE.
- A way to identify and check on a pending data transfer operation (Fortran 2003 feature)
You can now specify an ID for a pending data transfer operation for a specified unit. You can also
specify PENDING and ID in an INQUIRE statement to check on the status of a pending data transfer operation.
For more information, see READ and WRITE, and
INQUIRE specifiers
ID and PENDING.
- VALUE attribute and statement (Fortran 2003 feature)
The VALUE attribute specifies a type of argument association for a dummy argument. For
more information, see VALUE.
- FLUSH statement (Fortran 2003 feature)
The FLUSH statement causes data written to a file to become available to other
processes or causes data written to a file outside of Fortran to be accessible to
a READ statement. For
more information, see FLUSH.
- WAIT statement (Fortran 2003 feature)
The WAIT statement performs a wait operation for a specified pending
asynchronous data transfer operation. For
more information, see WAIT.
- IMPORT statement (Fortran 2003 feature)
The IMPORT statement makes host entities accessible in the interface body of
an interface block. For
more information, see IMPORT.
- NEW_LINE intrinsic function (Fortran 2003 feature)
The NEW_LINE intrinsic function returns a new line character.
For more information, see NEW_LINE.
- SELECTED_CHAR_KIND intrinsic function (Fortran 2003 feature)
The SELECTED_CHAR_KIND intrinsic function returns the value of the kind type parameter
of the character set named by the argument.
For more information, see SELECTED_CHAR_KIND.
- Intrinsic Modules (Fortran 2003 feature)
Intrinsic modules, like other module program
units, contain specifications and
definitions that can be made accessible to other program units. The intrinsic modules
are part of the Fortran library.
For more information, see Intrinsic Modules.
- MEMORYTOUCH compiler directive
The MEMORYTOUCH compiler directive ensures that a specific memory location is updated dynamically.
For more information, see MEMORYTOUCH.
- A file can be opened for stream access (Fortran 2003 feature)
You can now specify stream access in OPEN and INQUIRE statements. For more information, see
OPEN: ACCESS Specifier and INQUIRE: ACCESS Specifier.
- A way to identify the file position in a stream file. (Fortran 2003 feature)
You can now specify the file position in file storage units in a stream file (ACCESS='STREAM'). You can also specify POS in a READ or WRITE statement, or in an INQUIRE statement to to determine
the current file position in a stream file.
For more information, see READ and WRITE, and
INQUIRE specifier POS.
For more information on Fortran 2003 features, see
Fortran 2003 Features.
For information on new compiler options in this release, see
New
Options in the
Compiler Options reference.