On 1/31/2017 3:00 PM, Richard Delorme wrote:
May we have an example of how the memory safety of arguments supplied to memcpy
is checked in a way gcc cannot do?
I was thinking of the return attribute, that prevents for example to return the
address of a local variable through a call to memcpy:
The thing about memcpy is compilers build in a LOT of information about it that
simply is not there in the declaration. I suggest retrying your example for
gcc/clang, but use your own memcpy, i.e.:
void* mymemcpy(void * restrict s1, const void * restrict s2, size_t n);
Let us know what the results are!