Path: csiph.com!eternal-september.org!feeder.eternal-september.org!nntp.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.c Subject: Re: Why is this happening? Date: Mon, 06 Apr 2026 17:42:33 -0700 Organization: None to speak of Lines: 37 Message-ID: <87tstn38jq.fsf@example.invalid> References: <10q5046$3ec1o$2@dont-email.me> <10q523v$3e865$1@dont-email.me> <10q7bug$7vod$1@dont-email.me> <87bjg8wrgl.fsf@example.invalid> <86bjg72xl6.fsf@linuxsc.com> <87zf3rurp9.fsf@example.invalid> <86ldezzyx1.fsf@linuxsc.com> <877bqj4wh1.fsf@example.invalid> <20260407020558.000055ca@yahoo.com> MIME-Version: 1.0 Content-Type: text/plain Injection-Date: Tue, 07 Apr 2026 00:42:34 +0000 (UTC) Injection-Info: dont-email.me; posting-host="c1a0ff6bd907a37b4d4b0ba219c244b5"; logging-data="2626683"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX199g/RMF58/hw5KnGOdqB36" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:fHpIMV+Ytfr9bxmejk51JW4ArgM= sha1:b7dBTv8yzMt0q2SMo+P+JIx5gnM= Xref: csiph.com comp.lang.c:397402 Michael S writes: > On Mon, 06 Apr 2026 14:20:26 -0700 > Keith Thompson wrote: [...] >> Your "C++ be damned" attitude is not shared by either language >> committee (fortunately, IMHO). > > For C11 and C17 it was true. > But C23 has at least two new (or old new) incompatibilities with C++: > - VMT are again mandatory, like in C99 > - _BitInt(N) > It sounds to me as a change of the attitude. Or may be a return to > pre-C11 attitude. It's always been true that C has some features that C++ doesn't. In some cases, it's because some features are better implemented in C++ as container classes, while C needs them to be implemented in the core language. Variably modified types are a good example; for most cases where I'd use one in C, I'd probably use std::vector in C++. Complex types are another example. There is a proposal to add _BitInt to a new edition of C++: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2025/p3666r2.html That hardly indicates a "C++ be damned" attitude. The two committees still coordinate fairly closely, and try to keep the two languages as compatible as reasonably possible. C23 uses apostrophes as digit separators because C++ does so. I don't know why Tim thinks requiring support for both apostrophes and underscores would be an improvement. [...] -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com void Void(void) { Void(); } /* The recursive call of the void */