On Mon, 15 Jan 2024 at 11:21, Dallman, John via Gcc-help <gcc-help@xxxxxxxxxxx> wrote: > > Hi, folks, > > I'm trying to eliminate calls to classic string functions (strcpy, strcat, etc.) and memcpy from a shared library, built from C and C++ code with GCC 11.2. With -D_FORTIFY=2 and a bit of work with macros, I've eliminated all of them from the source, but I still have calls to memcpy from the object files. My suspected causes of these are: > > a) Struct copying, with memcpy calls inserted by the compiler. > b) memcpy calls in the C++ Standard Template Library. > > Is there a way to ask GCC to use __builtin___memcpy_chk() in place of plain memcpy() for either of these? I don't know about the first, but for the second, no, that would require code changes to libstdc++. There's no way to make that happen automatically.