Re: [PATCH] C undefined behavior fix

Florian Weimer
2002-01-04T09:08:08Z

Paul Mackerras <paulus@samba.org> writes:

> One of the reasons why C is a good language for the kernel is that its
> memory model is a good match to the memory organization used by the
> processors that linux runs on. Thus, for these processors, adding an
> offset to a pointer is in fact simply an arithmetic addition.

But this is not the memory model of C! Adding an offset to a pointer
is an operation involving objects defined by the C language, and not
machine registers. Sometimes, this makes a noticeable difference.