Messages in this thread | | | From | Johannes Weiner <> | Subject | Re: Why is the kfree() argument const? | Date | Wed, 16 Jan 2008 23:37:04 +0100 |
| |
Hi,
Christoph Lameter <clameter@sgi.com> writes:
> On Wed, 16 Jan 2008, Johannes Weiner wrote: > >> So if I got it right and you actually modify the memory you only got a >> const pointer to, you reach a level where you _have to_ break this >> policy and cast to a non-const pointer, as it is currently done in >> kfree(). No? > > Correct and we have gcc 4.2 currently spitting out warnings because of > casting to non const. Any idea how to convince gcc that this is okay?
Two dirty hacks where gcc at least does not complain:
void *y = (void *)x;
and then pass y, or passing
*(void **)&x
directly.
Both approaches seem just too ugly to silence a bogus warning.
Hannes
| |