Description
Here is the list of issues approved by WG5 to go into 202X:
- UK01 - Extend procedure C_F_POINTER to allow a Fortran array pointer to have lower bounds other than 1.
- US01 - Allow much longer statement lines and overall statement length.
- US02 - Require the processor to report cases where over-long lines or statements result in lost information.
- SPLIT intrinsic #187 US03 - SPLIT string intrinsic (original proposal was to keep all module intrinsics from the withdrawn Part 2 (ISO_VARYING_STRINGS).
- Degree trigonometric functions #164 US04 - Trig functions with arguments in degrees and arc versions with results in degrees.
- US05 - Trig functions with arguments implicitly scaled by PI.
- US06 - SELECTED_LOGICAL_KIND to return a KIND of logical based on its minimum storage size.
- US07 - Additional named constants, LOGICAL8, LOGICAL16, LOGICAL32, LOGICAL64, in ISO_FORTRAN_ENV to specify KINDS supported for type LOGICAL.
- REAL16 proposal #13 US08 - Additional named constant, REAL16, in ISO_FORTRAN_ENV to specify whether the processor supports a 16-bit REAL KIND.
- US09 - Intrinsics for converting between C strings and Fortran strings.
- US10 - AT format editing specifier. Has the effect of TRIM on the corresponding character list item before output.
- US11 - Control over leading zeros in output of REAL values.
- US12 - Allow an array of a type that has an allocatable coarray component.
- Edits for Put with Notify #20 US13 - Syntax and semantics for a "Put with Notify" operation.
- Auto-allocating processor messages #160 US14 - Allow deferred-length character variables in more locations, including as actual arguments corresponding to IOMSG and ERRMSG arguments for similar variables in specifiers. Also allow for internal I/O.
- US15 Simple procedures #161 US15 - SIMPLE procedures. A form of Super-Pure that disallows references to global data.
- US16 TYPEOF and CLASSOF #158 US16 - TYPEOF and CLASSOF type declarations to indicate the object being declared has the same type/class as another object. Useful to ensure a local variable in a procedure has the same type as a dummy argument, or that two dummy arguments have the same type.
- Rank-agnostic array element and section denotation #157 US17 - Syntax to specify an element or section of an array with arbitrary rank.
- Rank-agnostic array element and section denotation #157 US18 - Syntax for generic specification of rank and bounds of an object.
- Protected Components #156 Protected attribute for variables in derived types #16 US19 - Protected components.
- Add reductions to DO CONCURRENT #17 US20 - Reduction specifier for DO CONCURRENT.
- Enumeration Type #11 US21 - Typed enumerators.
- Conditional Expressions #183 US22 - Conditional expressions. (alternatively: Short-circuiting logical expressions #19 US26 - Short-circuit logical operators.)
- Standardizing use of BOZ constants #18 US23 - Enhancements to BOZ constants.
- Allowing "const" on pointed to data #5 US27 - Syntax to specify that the target of a dummy argument pointer is not to be changed (INTENT applies to the pointer, not its target)
The list is described in the document N2165 US Feature list proposals for F202X (PL22.3) as available from https://wg5-fortran.org/documents.html, but unfortunately the link is dead. We also found the list in the minutes N2169 Minutes of the August 2019 Meeting in Tokyo available from https://wg5-fortran.org/f202x.html. Just in case, I am attaching the N2169 document to this issue, so that it does not get lost.
Once all such ideas are fully developed and passed by the J3 and WG5 Committees, then the 202X standard will get out, and we will work on 202Y.
In order to speed up the 202X release as well as to ensure that the community agrees with the proposals that the committee passes, I encourage wide community participation in the proposals for these features.
ISO-IECJTC1-SC22-WG5_N2169_Minutes_of_the_August_2019_Meeting_in_Tokyo.txt