Language features
This topic lists new language features that are introduced in this release of XL Fortran.
BIND attribute for an internal procedure
You can specify the BIND attribute without the NAME= specifier on an internal procedure. In previous releases, the BIND attribute could not be specified on an internal procedure.DO CONCURRENT construct
With the DO CONCURRENT construct, you can specify that individual loop iterations have no interdependencies, in which case the execution order of the iterations can be indeterminate at the beginning of the execution of the DO CONCURRENT construct.
Polymorphic variable in an intrinsic assignment
In an intrinsic assignment variable = expression, variable now can be polymorphic. If variable is polymorphic, the following rules apply:- variable must be allocatable.
- variable must be type-compatible with expression, or the declared types of variable and expression must conform.
Multiple allocate objects allowed on an ALLOCATE statement
You can allocate more than one allocate_object by using an ALLOCATE statement that contains the SOURCE= or MOLD= specifier. In previous releases, you could only allocate one allocate_object by using an ALLOCATE statement that contains the SOURCE= or MOLD= specifier.VALUE attribute
You can specify the VALUE attribute on an array dummy argument that has either assumed shape or explicit shape. In the previous releases, you could not specify the VALUE attribute on array dummy arguments.