On 16.04.21 09:06, Bernhard Reutner-Fischer via Fortran wrote:

Does this change the module format in an incompatible way, i.e. does
this require a module format version bump?
Not having looked it in detail but I doubt it – it is just a symbol
which is not output.
What happens when we read an existing module that names an intrinsic?
Without bumping the module version, we'd run into the same issue as
before, don't we?
...
Even if we'd skip reading existing intrinsic now, we'd break interop
with older compiler versions if we would stop writing them without
bumping the module format, i think?

From the function name ("write_symtree"), gfortran only skips writing it;
it still reads all symtrees which are in the .mod file.
As this is the only change of Harald's patch, it should be:

* .mod by old compiler → used by new/old compiler: bogus error for 'sqrt'.

* .mod by new compiler → used by new/old compiler: works after the patch

Thus, from that side there should be no issue.
And I see no point in bumping the .mod version to force the recompilation;
those running into the corner case can still do 'make clean && make' and
all others can keep using the old version.

Tobias

-----------------
Mentor Graphics (Deutschland) GmbH, Arnulfstrasse 201, 80634 München 
Registergericht München HRB 106955, Geschäftsführer: Thomas Heurung, Frank 
Thürauf

Reply via email to