https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95224

            Bug ID: 95224
           Summary: -flto -save-temps uses very unusual name for
                    resolution file, looks arbitrary
           Product: gcc
           Version: 10.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: lto
          Assignee: unassigned at gcc dot gnu.org
          Reporter: slyfox at inbox dot ru
                CC: hubicka at gcc dot gnu.org, marxin at gcc dot gnu.org,
                    rguenth at gcc dot gnu.org
  Target Milestone: ---

Encountered when was debugging lto/95194.

Reproducer:

  # good
  $ rm -- *; echo 'int main(){}' | gcc -c -x c -flto - -o main.o; gcc main.o -o
main -flto -save-temps; ls -- *.res
  main.res

  # unexpected
  $ rm -- *; echo 'int main(){}' | gcc -c -x c -flto - -o main.o; gcc main.o -o
main -flto -save-temps -lm; ls -- *.res
  -lm.res

Expected behaviour: always get 'main.res' resolution file.

In real scenario I was building 'genmatch' and got '-lm.res'. It confused me
quite a bit: I explored very strange possibilities: driver did not recognize
-lm as a library, '-lm.res' is not the only response file out there, etc.

Would it be reasonable for response file to always use the same basename as
'-o' paramemter?

Reply via email to