On 12/19/23 12:02 AM, FX Coudert wrote:
When gfortran invokes the linker, it reads the linking spec from libgfortran. 
This ends up doing things like:

-lm -lgcc_s -lgcc -lc -lgcc_s -lgcc

where you can see that libgcc (both -lgcc and -lgcc_s) is linked in twice. This 
wasn’t a problem, until the new macOS linker, which gives a warning for this: 
the warning is innocuous, but having a warning for every time you call gfortran 
for linking clutters the terminal, and makes all the testsuite fail. And 
linking twice is superfluous, so removing it will not be a problem.

I am the author of the original commit to the spec, in 2010, but honestly I 
have no memory: I think I vaguely remember saying “better safe than sorry”, but 
13 years later it could just be a false memory ;)

Anyway, this was tested on x86_64-darwin and x64_86-linux, as well as 
*-*-solaris2.11 by Rainer.
OK to commit? (seems admissible in stage 3 because it fixes regtesting on 
darwin22 and darwin23).

FX



libgfortran/ChangeLog:

        PR libfortran/110651
        * libgfortran.spec.in: Remove duplicate libraries.
---
  libgfortran/libgfortran.spec.in | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)


I am getting side notes about people having these issues with gfortran 13. Is this something that should be backported. Apparently it is causing some none gfortran compilations to break, but I do not know if this is the same issue.

I say OK for trunk.

Jerry

Reply via email to