Deutsch English Français Italiano |
<20240708192708.531@kylheku.com> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Kaz Kylheku <643-408-1753@kylheku.com> Newsgroups: comp.lang.c Subject: Re: question about nullptr Date: Tue, 9 Jul 2024 02:32:46 -0000 (UTC) Organization: A noiseless patient Spider Lines: 47 Message-ID: <20240708192708.531@kylheku.com> References: <v6bavg$3pu5i$1@dont-email.me> <20240706054641.175@kylheku.com> <v6bfi1$3qn4u$1@dont-email.me> <l9ciO.7$cr5e.2@fx05.iad> <877cdyuq0f.fsf@bsb.me.uk> <2ckiO.19403$7Ej.4487@fx46.iad> <87plrpt4du.fsf@bsb.me.uk> <9bCiO.7108$sXW9.3805@fx41.iad> <87jzhwu5v9.fsf@bsb.me.uk> <20240708001722.280@kylheku.com> <v6gab6$qdd2$1@dont-email.me> <878qyctcdt.fsf@bsb.me.uk> Injection-Date: Tue, 09 Jul 2024 04:32:46 +0200 (CEST) Injection-Info: dont-email.me; posting-host="eb6f9df33a8cab964bf8a3b5b8508662"; logging-data="1297100"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19rpYbPqEwlboNC7aMyayrFJ8MkfGjA/TI=" User-Agent: slrn/pre1.0.4-9 (Linux) Cancel-Lock: sha1:bQW3N0yZbmXowGD47tIOcvrR8Qc= Bytes: 3196 On 2024-07-08, Ben Bacarisse <ben@bsb.me.uk> wrote: > Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes: > >> On 08.07.2024 09:19, Kaz Kylheku wrote: >>> On 2024-07-07, Ben Bacarisse <ben@bsb.me.uk> wrote: >>>> I find myself completely out of step with many posters here about >>>> "explicit code" should look like. I think >>>> >>>> char *p = 0; >>>> >>>> is explicit enough and, in fact, I consider it a plus point if someone >>>> reading it goes "hey, what's going on here?" and ends up learning that 0 >>>> is null pointer constant in C. >>> >>> And if that person is on the C or C++ langauge committee, that bit of >>> learning could just prevent a superfluous non-invention like nullptr. >> >> What's superfluous to one is useful for others (e.g. for grep'ing >> occurrences of a null-pointer value in source codes); > > This is been suggested twice now but I'm struggling to see why that is > useful. I can see management wanting one to find all uses of a null > pointer constant to check that they have all been replaced by the > "safer" nullptr, but what's the value in searching for nullptr? We could patch GCC to have a -Wnull-ptr-zero, which will give you a diagnostic for every occurrence of a zero valued integer expression that becomes a null pointer constant rather than an integer or floating-point value (and that isn't cast to pointer type). (If this were so hugely useful, someone woulda done it by now?) (Of course, it would go off on occurrences of NULL where NULL is defined as just zero; the diagnostic could be clever enough not to go off on expressions that are the expansion descendants of NULL, or optionally so.) (The option would actually be useful to someone wanting to convert 0 to NULL or nullptr.) (Just like -Wold-style-cast in GNU C++ helps coders who only want to use static_cast and friends.) -- TXR Programming Language: http://nongnu.org/txr Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal Mastodon: @Kazinator@mstdn.ca