http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61001
Bug ID: 61001 Summary: Builtin memcpy and memset cannot be overridden when -flto is used Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: eblot.ml at gmail dot com On arm-none-eabi target, when -flto mode is enabled, the linker does not allow to override the builtin definitions for memset and memcpy: /var/folders/g0/7v4by70d4nd052zj7wj7v3m80000gn/T//cc3YmscA.ltrans8.ltrans.o: In function `memset': main/src/fastmem.c:94: multiple definition of `memset' /usr/local/Cellar/arm-eabi-gcc49/4.9.0/lib/gcc/arm-eabi/4.9.0/../../../../arm-eabi/lib/libg.a(lib_a-memset.o):memset.c:(.text+0x0): first defined here /var/folders/g0/7v4by70d4nd052zj7wj7v3m80000gn/T//cc3YmscA.ltrans8.ltrans.o: In function `memcpy': main/src/fastmem.c:15: multiple definition of `memcpy' /usr/local/Cellar/arm-eabi-gcc49/4.9.0/lib/gcc/arm-eabi/4.9.0/../../../../arm-eabi/lib/libg.a(lib_a-memcpy-stub.o):memcpy-stub.c:(.text+0x0): first defined here This issue has already been reported here: http://permalink.gmane.org/gmane.comp.gcc.help/46588