* Jonathan Wakely:

> On 17 November 2013 18:25, Dominic News wrote:
>> In the following code (from xorg-server)
>>
>>     if (a == 0)
>>         addr = 0;
>>     (...)
>>     memset(addr, '\0', a);
>>
>> the path for a==0 is turned into a trap by -fisolate-erroneous-paths. (Is
>> calling memset like this undefined behaviour?)
>
> Yes. 7.23.1 in the C standard says that even with a zero size the
> pointer argument must be valid.

Is this new in C11?  Does it apply to functions such as strnlen as well?

Reply via email to