Support for language enhancements and APIs

API and language enhancements can offer you additional ease of use and flexibility when developing your applications, as well as making it easier for you to develop code that more fully exploits the capabilities of your hardware platform.

XL Fortran language enhancements

XL Fortran V10.1 implements new features compliant to the Fortran 2003 standard. These features, supported when -qlanglvl=2003std or -qlanglvl=2003pure is in effect, include:

ENUM statement
You can specify an ENUM statement to define and group a set of named integer constants called enumerators. The storage size of the enumerators can be set by the new -qenum compiler option.
READ statement - new BLANK and PAD specifiers
The BLANK specifier controls the default interpretation of blanks when you are using a format specification. The setting of the PAD specifier determines if input records are padded with blanks.
WRITE statement - new DELIM specifier
The DELIM specifier specifies what delimiter, if any, is used to delimit character constants written with list-directed or namelist formatting.
Relaxed rules for specification expression
XL Fortran now allows recursive functions to be specification functions.
Procedure pointers
This release adds support for procedure pointers. A procedure pointer is a PROCEDURE entity that has the EXTERNAL and POINTER attributes. It may be a pointer associated with an external procedure, a module procedure, an intrinsic procedure, or a dummy procedure that is not a procedure pointer.

See IBM XL Fortran Advanced Edition V10.1 for Linux Language Reference for more information.

OpenMP API V2.5 support for C, C++, and Fortran

XL Fortran now supports the OpenMP API V2.5 standard. This latest level of the OpenMP specification combines the previous C/C++ and Fortran OpenMP specifications into one single specification for both C/C++ and Fortran, and resolves previous inconsistencies between them.

The OpenMP Application Program Interface (API) is a portable, scalable programming model that provides a standard interface for developing user-directed shared-memory parallelization in C, C++, and Fortran applications. The specification is defined by the OpenMP organization, a group of computer hardware and software vendors, including IBM.

You can find more information about OpenMP specifications at:

www.openmp.org

Related Information