Deutsch English Français Italiano |
<vslilm$8mfb$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: David Brown <david.brown@hesbynett.no> Newsgroups: comp.lang.c Subject: Re: "A diagram of C23 basic types" Date: Thu, 3 Apr 2025 10:59:33 +0200 Organization: A noiseless patient Spider Lines: 78 Message-ID: <vslilm$8mfb$1@dont-email.me> References: <87y0wjaysg.fsf@gmail.com> <vsj1m8$1f8h2$1@dont-email.me> <vsj2l9$1j0as$1@dont-email.me> <vsjef3$1u4nk$1@dont-email.me> <vsjg6t$20pdb$1@dont-email.me> <vsjjd1$23ukt$1@dont-email.me> <vsjkvb$25mtg$1@dont-email.me> <vsjlkq$230a5$2@dont-email.me> <20250402232443.00003a7d@yahoo.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Thu, 03 Apr 2025 10:59:34 +0200 (CEST) Injection-Info: dont-email.me; posting-host="d65639e364606db0746acbec737df138"; logging-data="285163"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19a8a97GAyWLAejzS91kQxyRDHKajngSCE=" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Cancel-Lock: sha1:zf9f2b3xDZX9DjUATXsWEbVsBgw= Content-Language: en-GB In-Reply-To: <20250402232443.00003a7d@yahoo.com> Bytes: 3934 On 02/04/2025 22:24, Michael S wrote: > On Wed, 2 Apr 2025 16:38:03 +0100 > bart <bc@freeuk.com> wrote: > >> On 02/04/2025 16:26, Muttley@DastardlyHQ.org wrote: >>> On Wed, 2 Apr 2025 16:59:45 +0200 >>> David Brown <david.brown@hesbynett.no> wibbled: >>>> On 02/04/2025 16:05, Muttley@DastardlyHQ.org wrote: >>>>> I suspect the people who are happy with C never have any >>>>> correspondence with anyone from the committee so they get an >>>>> entirely biased sample. Just like its usually only people who had >>>>> a bad experience that fill in "How did we do" >>>> >>>>> surveys. >>>> >>>> And I suspect that you haven't a clue who the C standards >>>> committee talk to - and who those people in turn have asked. >>> >>> By imference you do - so who are they? >>> >>>> 11. nullptr for clarity and safety. >>> >>> Never understood that in C++ never mind C. NULL has worked fine for >>> 50 years. >> >> And it's been a hack for 50 years. Especially when it is just: >> >> #define NULL 0 >> >> You also need to include some header (which one?) in order to use it. >> I'd hope you wouldn't need to do that for nullptr, but backwards >> compatibility may require it (because of any forward-thinking >> individuals who have already defined their own 'nullptr'). >> >> > > C23 is rather bold in that regard, adding non-underscored keywords as > if there was no yesterday. IMHO, for no good reasons. > It is bold, perhaps, but there are certainly good reasons. As far as I can see we have some keywords that have dropped their underscore-capital form: alignas alignof bool static_assert thread_local And we have some new ones : constexpr false nullptr true typeof typeof_unequal (Other new keywords, such as _Decimal32, have the underscore-capital form.) While it is a good idea to avoid new non-reserved identifier keywords for compatibility, it would also be getting a bit silly to add <stdconstexpr.h>, <stdnullptr.h>, etc., to the existing <stdalign.h>, <stdbool.h>, etc. It is an inconvenience for programmers to have to pull in a dozen extra headers just to be able to use new standard language features in a nice manner. This does mean that some pre-C23 code will be incompatible with C23. It is like C99 in that regard - it is a significantly bigger change than C17 was. But in my opinion, it is good to see that C23 places a bit more relevance on newer code going forward, even though it is at the cost of some older code (particularly code written to pre-C99 standards).