[PATCH] C undefined behavior fix
Momchil Velikov
velco@fadata.bg
Wed Jan 2 02:42:00 GMT 2002
>>>>> "Florian" == Florian Weimer <fw@deneb.enyo.de> writes:
Florian> Momchil Velikov <velco@fadata.bg> writes:
>> - strcpy(namep, RELOC("linux,phandle"));
>> + memcpy (namep, RELOC("linux,phandle"), sizeof("linux,phandle"));
Florian> Doesn't this still trigger undefined behavior, as far as the C
Florian> standard is concerned? It's probably a better idea to fix the linker,
Florian> so that it performs proper relocation.
Well, strictly speaking it _is_ undefined, however adding/subtracting
__PAGE_OFFSET is far too common operation and one can resonably expect
to get away with it in the _vast_ majority of cases. IMHO, it is
better to fix the particular case, which triggers the undefined
behaviour, as these cases are bound to be _very_ rare.
Regards,
-velco
More information about the Gcc
mailing list