GFortran releases

Is there any timeline regarding the implementation of Fortran 202x?

As another poster sometimes says, that depends on how many people volunteer or how much money is raised for paid work on gfortran. Koenig commented in comp.lang.fortran on what he may work on.

2 Likes

Is there a way to donate/raise money? The recent thread on Catalyzing gfortran development didnā€™t gain much traction.

4 Likes

I think if everyone of us can contribute just 5$ a month it would be great donation. Imagine 200 of us contributing 5$ a month for an year itā€™s 12000$. Letā€™s conduct a poll on how many are willing to donate 5$ a month to Fortran development.

7 Likes

C++ dudes are also complaining.

Install GCC 12 on MacOS here: Releases Ā· fxcoudert/gfortran-for-macOS Ā· GitHub

3 Likes

If youā€™re using Spack package manager you can install it using the following command:

spack install gcc@12.1.0

Edit: fixed version in command (was 12.0.1)

1 Like

Homebrew (both MacOS and Linux) stays at 11.3.

2 Likes

I have detected a new warning with GFortran 12: when a variable may be used uninitialized, it tells you on which line it was declared:

/home/osboxes/gtk-fortran/src/gtk-hl-tree.f90:1871:34:

 1871 |        call g_value_unset(pstring)
      |                                  ^
Warning: ā€˜pstringā€™ may be used uninitialized [-Wmaybe-uninitialized]
/home/osboxes/gtk-fortran/src/gtk-hl-tree.f90:1837:33:

 1837 |     type(c_ptr) :: store, pstring, col, rlist, renderer, pmodel, model
      |                                 ^
note: ā€˜pstringā€™ was declared here

GFortran 12.1.1 is now available in Fedora Rawhide.

I believe it already did, but maybe itā€™s on by default now instead of requiring an option?

Yes, youā€™re right as I have found the same warning in that March 2021 post :smiling_face::
https://fortran-lang.discourse.group/t/interesting-output-from-gfortran-when-using-parameterized-derived-types/919

The GCC and GFortran documentations are now rendered with Sphinx & Furo:

Updated 2022-11-18: the doc has been reverted to its old rendering. We can just hope this is temporary.

6 Likes

This change is merged for GCC 13 with -O2. The GCC 13.1 stable release should be out in its usual March~April timeframe.

At the moment, in the changelog page the word ā€œFortranā€ appears only one time, related to OpenMP: ā€œFortran now supports non-rectangular loop nests, which were added for C/C++ in GCC 11.ā€

1 Like

Iā€™m curious, are those the only changes in GFortran? I vaguely recall some Fortran patches submitted by @kargl for import host association, did they not make it in, or is the Fortran Changelog section out of date?

I guess youā€™re right, this document does not yet include changes in the non-C/C++ compilers of the collection, as the stable release date is still far away. If I make a print preview of the GCC 12 release page, I obtain around 10 pages, with Ada, D, Fortran, etc. For GCC 13, only 3.5 pages by nowā€¦

Concerning GFortran, I donā€™t know if it is the right place to look at, but I have found that changelog:
https://gcc.gnu.org/git/?p=gcc.git;a=blob_plain;f=libgfortran/ChangeLog;hb=refs/heads/master

We can also search ā€œFortranā€ related commits here:
https://gcc.gnu.org/git/?p=gcc.git&a=search&h=HEAD&st=commit&s=fortran

Another solution to look at changes:

Assuming you have Git installed, you can check out the GCC sources using the following command:
git clone git://gcc.gnu.org/git/gcc.git SomeLocalDir

And since GCC 12 the -O2 optimization option has flag -ftree-vectorize switched on by defalt.

1 Like

Is GitHub - gcc-mirror/gcc the best entry point for submitting pull requests?

1 Like

Thatā€™s a shame, If you have the will and time to point me/others to those patches we could open merge requests and get them into GFortran. It is a real shame for peopleā€™s completed work to not be recognised and used because of a tool change.

2 Likes

Thanks, I did not see the fortran directory in the overcrowded gcc dirā€¦
https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/fortran/ChangeLog;h=08ed6caefa238d6c766455b8ae3dd695c6f40717;hb=HEAD