https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93057
Bug ID: 93057 Summary: -flto=64 -o "t#o" leads to an error Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: hubicka at gcc dot gnu.org CC: marxin at gcc dot gnu.org Target Milestone: --- When generating the internal makefile in lto-wrapper we need to avoid or escape characters in filenames which are special for make. jan@skylake:~> cat t.c main() { } jan@skylake:~> gcc -O2 t.c -o "t#o" -flto=64 t.c:1:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 1 | main() { } | ^~~~ /tmp/cc6loZ7P.mk:1: *** missing separator. Stop. lto-wrapper: fatal error: make returned 2 exit status compilation terminated. /usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status