[Vorbis-dev] Add vorbis_dsp_init() ?

Conrad Parker conrad at metadecks.org
Sun Mar 15 07:55:41 PDT 2009


2009/3/15 ogg.k.ogg.k at googlemail.com <ogg.k.ogg.k at googlemail.com>:
>> Is a memset of zeros also promised to create proper null pointers just
>> as assigning with zero?  (The value in memory for a null pointer isn't
>> guarenteed to be the all zero bit sequence)
>
> Pedantically, I think not (though I'm very hazy with the distinction
> of the null pointer and its bit pattern that can be non zeros).
> Are you aware of an implementation that does this ? I do recall
> eerie discussions about assigments of a pointer with 0 yielding
> this non zero bit pattern, but that was years ago.
>
> Moreover, I'm entirely in the dark what would then happen to:
>
> void foo(char *p)
> {
>  if (p) *p=0;
> }
>
> Would the test of p test against the null pointer, or cast p to an
> int, then test this int ?

http://c-faq.com/null/

esp. read 5.13 a few times.

(Basically: runtime assigned zero value is not guaranteed to be
equivalent to NULL (whereas compile-time constant 0 is), but like you
say it happens to work on all current systems).

Back to the patch in question, we can drop the bit that removed the
explicit 0 and NULL assignments, and I'm still waiting on feedback
about the appropriateness of adding the public vorbis_dsp_init()
function.

Conrad.


More information about the Vorbis-dev mailing list