It is easy to reproduce this bug, create an empty main.c and try to compile it with -g or -g3:
C:\Users\ilg\tmp>"C:\Users\ilg\AppData\Roaming\GNU Tools ARM Embedded\8-2018-q4\bin\arm-none-eabi-gcc.exe" -flto -g main.c
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\ilg\AppData\Local\Temp\cck5e5XRdebugobjtem: file not recognized: file truncated
collect2.exe: error: ld returned 1 exit status
lto-wrapper.exe: fatal error: C:\Users\ilg\AppData\Roaming\GNU Tools ARM Embedded\8-2018-q4\bin\arm-none-eabi-gcc.exe returned 1 exit status
compilation terminated.
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: error: lto-wrapper failed
collect2.exe: error: ld returned 1 exit status
C:\Users\ilg\tmp>"C:\Users\ilg\AppData\Roaming\GNU Tools ARM Embedded\8-2018-q4\bin\arm-none-eabi-gcc.exe" -flto -g3 main.c
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: C:\Users\ilg\AppData\Local\Temp\ccg9waOldebugobjtem has a corrupt section with a size (a0d66) larger than the file size
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\ilg\AppData\Local\Temp\ccg9waOldebugobjtem: invalid string offset 2048 >= 22975072851460187 for section `(null)'
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\ilg\AppData\Local\Temp\ccg9waOldebugobjtem: invalid string offset 2048 >= 22975072851460187 for section `(null)'
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\ilg\AppData\Local\Temp\ccg9waOldebugobjtem: invalid string offset 12032 >= 22975072851460187 for section `(null)'
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\ilg\AppData\Local\Temp\ccg9waOldebugobjtem: invalid string offset 16640 >= 22975072851460187 for section `(null)'
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\ilg\AppData\Local\Temp\ccg9waOldebugobjtem: invalid string offset 16640 >= 22975072851460187 for section `(null)'
collect2.exe: error: ld returned 5 exit status
lto-wrapper.exe: fatal error: C:\Users\ilg\AppData\Roaming\GNU Tools ARM Embedded\8-2018-q4\bin\arm-none-eabi-gcc.exe returned 1 exit status
compilation terminated.
c:/users/ilg/appdata/roaming/gnu tools arm embedded/8-2018-q4/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: error: lto-wrapper failed
collect2.exe: error: ld returned 1 exit status
It is easy to reproduce this bug, create an empty main.c and try to compile it with -g or -g3:
C:\Users\ ilg\tmp> "C:\Users\ ilg\AppData\ Roaming\ GNU Tools ARM Embedded\ 8-2018- q4\bin\ arm-none- eabi-gcc. exe" -flto -g main.c ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: C:\Users\ ilg\AppData\ Local\Temp\ cck5e5XRdebugob jtem: file not recognized: file truncated ilg\AppData\ Roaming\ GNU Tools ARM Embedded\ 8-2018- q4\bin\ arm-none- eabi-gcc. exe returned 1 exit status ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: error: lto-wrapper failed
c:/users/
collect2.exe: error: ld returned 1 exit status
lto-wrapper.exe: fatal error: C:\Users\
compilation terminated.
c:/users/
collect2.exe: error: ld returned 1 exit status
C:\Users\ ilg\tmp> "C:\Users\ ilg\AppData\ Roaming\ GNU Tools ARM Embedded\ 8-2018- q4\bin\ arm-none- eabi-gcc. exe" -flto -g3 main.c ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: warning: C:\Users\ ilg\AppData\ Local\Temp\ ccg9waOldebugob jtem has a corrupt section with a size (a0d66) larger than the file size ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: C:\Users\ ilg\AppData\ Local\Temp\ ccg9waOldebugob jtem: invalid string offset 2048 >= 22975072851460187 for section `(null)' ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: C:\Users\ ilg\AppData\ Local\Temp\ ccg9waOldebugob jtem: invalid string offset 2048 >= 22975072851460187 for section `(null)' ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: C:\Users\ ilg\AppData\ Local\Temp\ ccg9waOldebugob jtem: invalid string offset 12032 >= 22975072851460187 for section `(null)' ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: C:\Users\ ilg\AppData\ Local\Temp\ ccg9waOldebugob jtem: invalid string offset 16640 >= 22975072851460187 for section `(null)' ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: C:\Users\ ilg\AppData\ Local\Temp\ ccg9waOldebugob jtem: invalid string offset 16640 >= 22975072851460187 for section `(null)' ilg\AppData\ Roaming\ GNU Tools ARM Embedded\ 8-2018- q4\bin\ arm-none- eabi-gcc. exe returned 1 exit status ilg/appdata/ roaming/ gnu tools arm embedded/ 8-2018- q4/bin/ ../lib/ gcc/arm- none-eabi/ 8.2.1/. ./../.. /../arm- none-eabi/ bin/ld. exe: error: lto-wrapper failed
c:/users/
c:/users/
c:/users/
c:/users/
c:/users/
c:/users/
collect2.exe: error: ld returned 5 exit status
lto-wrapper.exe: fatal error: C:\Users\
compilation terminated.
c:/users/
collect2.exe: error: ld returned 1 exit status