When I was getting linker errors saying _memset and other string.h functions were undefined symbols, I found after some searching that the Makefile in sdcc/device/lib/pic16/libc didn't include string in the libraries. Once I changed the line:
SUBDIRS = ctype delay stdio stdlib utils
SUBDIRS = ctype delay stdio stdlib string utils
My code compiled fine. Should I submit a patch for this?
You are perfectly right, "string" escaped my attention while writing the new Makefiles.
I fixed this in SDCC 2.5.3 #1105.
Thanks for the report and for your search.