From https://gcc.gnu.org/gcc-16/changes.html :
- Coarrays using native shared memory mulithreading on single
node machines and handling Fortran 2018's TEAM feature.
- Fortran 2003: Parameterized Derived Types support is
improved. Handling of LEN parameters works but still requires
a future change of representation (see PR82649).
- Fortran 2018: Support the extensions to the IMPORT statement,
the REDUCE intrinsic and the new GENERIC statement.
- The Fortran 2023 additions to the trigonometric functions are
now supported (such as the sinpi intrinsic).
- Fortran 2023: The split intrinsic subroutine is now supported
and c_f_pointer now accepts an optional lower bound as a argument.
- The -fexternal-blas64 option has been added to call external BLAS
routines with 64-bit integer arguments for MATMUL. This option
is only valid for 64-bit systems and when -ffrontend-optimize is
in effect.
... gfortran 16.1 also supports the new F2023 conditional expression
such as
x = (y > 0 ? log(y) : some_error_fcn(x))
On Fri, 1 May 2026 19:31:21 -0000 (UTC), Steven G. Kargl wrote:
... gfortran 16.1 also supports the new F2023 conditional expression
such as
x = (y > 0 ? log(y) : some_error_fcn(x))
Doing it exactly the same way as C (which introduced this syntax) and
just about every other language which adopted the feature afterwards
... except Python.
By the way, do you need the parentheses around the expression?
On Fri, 1 May 2026 22:34:42 -0000 (UTC), Lawrence DrCOOliveiro wrote:
Doing it exactly the same way as C (which introduced this syntax)
and just about every other language which adopted the feature
afterwards ... except Python.
1) Why re-invent the wheel in language design?
On Fri, 1 May 2026 19:31:21 -0000 (UTC), Steven G. Kargl wrote:
... gfortran 16.1 also supports the new F2023 conditional expression
such as
x = (y > 0 ? log(y) : some_error_fcn(x))
Doing it exactly the same way as C (which introduced this syntax) and
just about every other language which adopted the feature afterwards
... except Python.
By the way, do you need the parentheses around the expression?
Lawrence DrCOOliveiro wrote:
On Fri, 1 May 2026 19:31:21 -0000 (UTC), Steven G. Kargl wrote:
... gfortran 16.1 also supports the new F2023 conditional expression
such as
x = (y > 0 ? log(y) : some_error_fcn(x))
Doing it exactly the same way as C (which introduced this syntax) and
just about every other language which adopted the feature afterwards
... except Python.
By the way, do you need the parentheses around the expression?
I first encountered that syntax in Algol68, this was around 1976.
There it would have been
x := (y > 0 | log (y) | some_error_fcn (x)) ;
- I can't remember if underscore is a permitted character in a variable
or a function name.
- The semicolon at the end is only required if another statement follows.
The first edition of my Algol68 manual was published in 1972 so I think
we can assume C got it from Algol68 (or they both got it from some other language).
From https://gcc.gnu.org/gcc-16/changes.html :
- Coarrays using native shared memory mulithreading on single
node machines and handling Fortran 2018's TEAM feature.
- Fortran 2003: Parameterized Derived Types support is
improved. Handling of LEN parameters works but still requires
a future change of representation (see PR82649).
- Fortran 2018: Support the extensions to the IMPORT statement,
the REDUCE intrinsic and the new GENERIC statement.
- The Fortran 2023 additions to the trigonometric functions are
now supported (such as the sinpi intrinsic).
- Fortran 2023: The split intrinsic subroutine is now supported
and c_f_pointer now accepts an optional lower bound as a argument.
- The -fexternal-blas64 option has been added to call external BLAS
routines with 64-bit integer arguments for MATMUL. This option
is only valid for 64-bit systems and when -ffrontend-optimize is
in effect.
Native gfortran (including gcc, c++) compiler for Windows on Arm
(Arm64) is available.
[link omitted]
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 70 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 01:55:24 |
| Calls: | 949 |
| Calls today: | 1 |
| Files: | 1,325 |
| Messages: | 281,112 |