Path: csiph.com!eternal-september.org!feeder.eternal-september.org!nntp.eternal-september.org!.POSTED!not-for-mail
From: Tim Rentsch
Newsgroups: comp.lang.c
Subject: Re: A thought of C
Date: Sat, 25 Apr 2026 19:58:25 -0700
Organization: A noiseless patient Spider
Lines: 19
Message-ID: <867bpu2zse.fsf@linuxsc.com>
References: <3a3462bdd72c4ed9d392a78b7d369a7b5ccc3b04.camel@gmail.com> <10s4gtb$grfo$1@dont-email.me> <10s53k2$mlh7$1@dont-email.me> <10s9c7a$2b5i9$4@dont-email.me> <10sal4e$2967c$1@dont-email.me> <10sbera$2iai7$2@kst.eternal-september.org> <10sbl72$2knde$1@dont-email.me> <10sbue0$2mtc2$1@kst.eternal-september.org> <10scqh1$2u305$1@dont-email.me> <10se1pa$3b5kb$2@dont-email.me> <10se5r1$3c90c$1@dont-email.me> <10sehaa$3e0ld$1@dont-email.me> <10sh4sk$ge59$2@dont-email.me> <10sh5aa$ghpi$1@dont-email.me> <10siolv$t20v$1@dont-email.me> <10sj2vv$127t8$1@dont-email.me> <10sj7tj$14il7$1@dont-email.me> <86o6j63gqs.fsf@linuxsc.com> <10sjbk3$15idp$1@dont-email.me> <86bjf6373z.fsf@linuxsc.com> <10sjqdt$19c5j$3@kst.eternal-september.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Injection-Date: Sun, 26 Apr 2026 02:58:26 +0000 (UTC)
Injection-Info: dont-email.me; posting-host="ba9581de696c0982039c62980e84b25b"; logging-data="1394327"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+pThzmqx4Zy7DOkTsC/kN95FpaVqx9++k="
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Cancel-Lock: sha1:JVnGKSIdtZHT/QIvJDEfcXjeu78= sha1:qtlZlripsYl4pyuNx4IDNo5gatE=
Xref: csiph.com comp.lang.c:397977
Keith Thompson writes:
> Tim Rentsch writes:
> [...]
>
>> It sounds like you're confusing a compile-time notion and a
>> run-time notion. The symbol NULL is a compile-time construct,
>> either simply 0 (or equivalent), or (void*)0 (or equivalent).
>
> A small quibble, not relevant to the current discussion: (void*)0
> is a null pointer constant, but not a valid expansion of NULL.
> The expansion of NULL must be fully protected by parentheses, so
> ((void*)0) is a valid expansion.
>
> One might also quibble about the meaning of "or equivalent".
> 0LL would not normally be considered equivalent to 0, but both are
> valid NPCs and valid expansions of NULL.
The point of saying "or equivalent" is to avoid such quibbling.