https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96700
Bug ID: 96700 Summary: undefined reference to `failure_on_line_796' Product: gcc Version: 7.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: sujian.liu at huawei dot com CC: marxin at gcc dot gnu.org Target Milestone: --- Created attachment 49079 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49079&action=edit the source code When I compile without -flto, it has no errors. riscv32-unknown-elf-gcc gcc.dg/tree-ssa/builtin-sprintf.c -fno-optimize-sibling-calls -fstack-protector -fno-diagnostics-show-caret -fdiagnostics-color=never -ansi -pedantic-errors -O2 -Wall -Wno-pedantic -fprintf-return-value -lm -o ./builtin-sprintf.exe gcc.dg/tree-ssa/builtin-sprintf.c: In function 'test_d_i': gcc.dg/tree-ssa/builtin-sprintf.c:307:20: warning: '0' flag ignored with precision and '%i' gnu_printf format [-Wformat=] gcc.dg/tree-ssa/builtin-sprintf.c:128:44: note: in definition of macro 'RNG' gcc.dg/tree-ssa/builtin-sprintf.c: In function 'test_percent': gcc.dg/tree-ssa/builtin-sprintf.c:796:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' gcc.dg/tree-ssa/builtin-sprintf.c:797:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' gcc.dg/tree-ssa/builtin-sprintf.c:798:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' When I compile with -flto, I will get the error as follow: riscv32-unknown-elf-gcc gcc.dg/tree-ssa/builtin-sprintf.c -fno-optimize-sibling-calls -fstack-protector -fno-diagnostics-show-caret -fdiagnostics-color=never -ansi -pedantic-errors -O2 -Wall -Wno-pedantic -fprintf-return-value -lm -o ./builtin-sprintf.exe -flto gcc.dg/tree-ssa/builtin-sprintf.c: In function 'test_d_i': gcc.dg/tree-ssa/builtin-sprintf.c:307:20: warning: '0' flag ignored with precision and '%i' gnu_printf format [-Wformat=] gcc.dg/tree-ssa/builtin-sprintf.c:128:44: note: in definition of macro 'RNG' gcc.dg/tree-ssa/builtin-sprintf.c: In function 'test_percent': gcc.dg/tree-ssa/builtin-sprintf.c:796:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' gcc.dg/tree-ssa/builtin-sprintf.c:797:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' gcc.dg/tree-ssa/builtin-sprintf.c:798:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccvVHTzC.ltrans0.ltrans.o: in function `check': <artificial>:(.text+0x182): undefined reference to `failure_on_line_796' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccvVHTzC.ltrans0.ltrans.o: in function `test_percent': <artificial>:(.text+0x1c6): undefined reference to `failure_on_line_797' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: <artificial>:(.text+0x206): undefined reference to `failure_on_line_798' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: <artificial>:(.text+0x248): undefined reference to `failure_on_line_799' ...... /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccvVHTzC.ltrans0.ltrans.o: in function `.L576': <artificial>:(.text+0x7744): undefined reference to `failure_on_line_164' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccvVHTzC.ltrans0.ltrans.o: in function `.L577': <artificial>:(.text+0x77a4): undefined reference to `failure_on_line_165' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccvVHTzC.ltrans0.ltrans.o: in function `.L579': <artificial>:(.text+0x7808): undefined reference to `failure_on_line_167' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccvVHTzC.ltrans0.ltrans.o: in function `.L580': <artificial>:(.text+0x7862): undefined reference to `failure_on_line_168' /home/lsj/b014/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/7.3.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccvVHTzC.ltrans0.ltrans.o: in function `.L581': <artificial>:(.text+0x78b4): undefined reference to `failure_on_line_169' collect2: error: ld returned 1 exit status I trited with the lastest gcc version (10.1.0),it show the same error without the option -flto: riscv32-unknown-elf-gcc gcc.dg/tree-ssa/builtin-sprintf.c -fno-optimize-sibling-calls -fstack-protector -fno-diagnostics-show-caret -fdiagnostics-color=never -ansi -pedantic-errors -O2 -Wall -Wno-pedantic -fprintf-return-value -lm -o ./builtin-sprintf.exe gcc.dg/tree-ssa/builtin-sprintf.c: In function 'test_d_i': gcc.dg/tree-ssa/builtin-sprintf.c:307:20: warning: '0' flag ignored with precision and '%i' gnu_printf format [-Wformat=] gcc.dg/tree-ssa/builtin-sprintf.c:128:44: note: in definition of macro 'RNG' gcc.dg/tree-ssa/builtin-sprintf.c: In function 'test_percent': gcc.dg/tree-ssa/builtin-sprintf.c:796:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' gcc.dg/tree-ssa/builtin-sprintf.c:797:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' gcc.dg/tree-ssa/builtin-sprintf.c:798:18: warning: too many arguments for format [-Wformat-extra-args] gcc.dg/tree-ssa/builtin-sprintf.c:114:44: note: in definition of macro 'EQL' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `test_a_double': builtin-sprintf.c:(.text+0x10e0): undefined reference to `failure_on_line_482' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x10ee): undefined reference to `failure_on_line_487' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x10fc): undefined reference to `failure_on_line_486' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `.L36': builtin-sprintf.c:(.text+0x1938): undefined reference to `failure_on_line_525' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x1946): undefined reference to `failure_on_line_547' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `.L37': builtin-sprintf.c:(.text+0x1954): undefined reference to `failure_on_line_545' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x1962): undefined reference to `failure_on_line_544' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x1970): undefined reference to `failure_on_line_543' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x197e): undefined reference to `failure_on_line_542' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x198c): undefined reference to `failure_on_line_541' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `.L38': builtin-sprintf.c:(.text+0x199a): undefined reference to `failure_on_line_540' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x19a8): undefined reference to `failure_on_line_539' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x19b6): undefined reference to `failure_on_line_538' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x19c4): undefined reference to `failure_on_line_536' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x19d2): undefined reference to `failure_on_line_534' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `.L39': builtin-sprintf.c:(.text+0x19e0): undefined reference to `failure_on_line_533' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x19ee): undefined reference to `failure_on_line_532' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x19fc): undefined reference to `failure_on_line_531' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x1a0a): undefined reference to `failure_on_line_530' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x1a18): undefined reference to `failure_on_line_529' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `.L40': builtin-sprintf.c:(.text+0x1a26): undefined reference to `failure_on_line_528' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x1a34): undefined reference to `failure_on_line_527' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x1a42): undefined reference to `failure_on_line_526' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `.L58': builtin-sprintf.c:(.text+0x1dde): undefined reference to `failure_on_line_629' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /tmp/ccRCyJbM.o: in function `test_e_long_double': builtin-sprintf.c:(.text+0x34bc): undefined reference to `failure_on_line_588' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x34ca): undefined reference to `failure_on_line_606' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x34d8): undefined reference to `failure_on_line_605' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x34e6): undefined reference to `failure_on_line_604' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x34f4): undefined reference to `failure_on_line_603' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x3502): undefined reference to `failure_on_line_602' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x3510): undefined reference to `failure_on_line_601' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x351e): undefined reference to `failure_on_line_600' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x352c): undefined reference to `failure_on_line_599' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x353a): undefined reference to `failure_on_line_597' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x3548): undefined reference to `failure_on_line_596' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x3556): undefined reference to `failure_on_line_595' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x3564): undefined reference to `failure_on_line_594' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x3572): undefined reference to `failure_on_line_593' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x3580): undefined reference to `failure_on_line_592' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x358e): undefined reference to `failure_on_line_591' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x359c): undefined reference to `failure_on_line_590' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: builtin-sprintf.c:(.text+0x35aa): undefined reference to `failure_on_line_589' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/libgcc.a(unwind-dw2-fde.o): in function `__register_frame_info': /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/../../open_source/hcc_riscv32_build_src/gcc-10.1.0/libgcc/unwind-dw2-fde.c:124: undefined reference to `malloc' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/libgcc.a(unwind-dw2-fde.o): in function `__register_frame_info_table_bases': /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/../../open_source/hcc_riscv32_build_src/gcc-10.1.0/libgcc/unwind-dw2-fde.c:173: undefined reference to `malloc' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/libgcc.a(unwind-dw2-fde.o): in function `__deregister_frame_info_bases': /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/../../open_source/hcc_riscv32_build_src/gcc-10.1.0/libgcc/unwind-dw2-fde.c:221: undefined reference to `free' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/../../open_source/hcc_riscv32_build_src/gcc-10.1.0/libgcc/unwind-dw2-fde.c:244: undefined reference to `free' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/libgcc.a(unwind-dw2-fde.o): in function `fde_mixed_encoding_compare': /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/../../open_source/hcc_riscv32_build_src/gcc-10.1.0/libgcc/unwind-dw2-fde.c:398: undefined reference to `malloc' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/../../open_source/hcc_riscv32_build_src/gcc-10.1.0/libgcc/unwind-dw2-fde.c:401: undefined reference to `malloc' /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/../../../../riscv32-unknown-elf/bin/ld: /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/riscv32_elf_build_dir/hcc_riscv32/bin/../lib/gcc/riscv32-unknown-elf/10.1.0/libgcc.a(unwind-dw2-fde.o): in function `end_fde_sort': /home/lsj/b014/hcc_gcc_10/build/hcc_riscv32/../../open_source/hcc_riscv32_build_src/gcc-10.1.0/libgcc/unwind-dw2-fde.c:606: undefined reference to `free' collect2: error: ld returned 1 exit status GCC 8.x 9.x 10.x all have the same error when compile without -flto. I will attach the source code, and the compile command as follow: riscv32-unknown-elf-gcc gcc.dg/tree-ssa/builtin-sprintf.c -fno-optimize-sibling-calls -fstack-protector -fno-diagnostics-show-caret -fdiagnostics-color=never -ansi -pedantic-errors -O2 -Wall -Wno-pedantic -fprintf-return-value -lm -o ./builtin-sprintf.exe -flto