Deutsch English Français Italiano |
<v5posa$2kq0$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: bart <bc@freeuk.com> Newsgroups: comp.lang.c Subject: Re: Baby X is bor nagain Date: Sat, 29 Jun 2024 20:55:54 +0100 Organization: A noiseless patient Spider Lines: 33 Message-ID: <v5posa$2kq0$1@dont-email.me> References: <v494f9$von8$1@dont-email.me> <v53i4s$33k73$2@dont-email.me> <v53lf7$34huc$1@dont-email.me> <v53vh6$368vf$1@dont-email.me> <v54se1$3bqsk$1@dont-email.me> <20240624160941.0000646a@yahoo.com> <v5bu5r$va3a$1@dont-email.me> <20240624181006.00003b94@yahoo.com> <v5c86d$11ac7$1@dont-email.me> <JEheO.108086$ED9b.74955@fx11.iad> <v5cblg$11q0j$1@dont-email.me> <gEieO.108089$ED9b.25598@fx11.iad> <20240625113616.000075e0@yahoo.com> <mUzeO.141609$Cqra.55051@fx10.iad> <v5elql$1jmii$1@dont-email.me> <m3BeO.24907$Gurd.16179@fx34.iad> <v5empd$1jndv$2@dont-email.me> <v5eph4$1k6a9$1@dont-email.me> <87ed8jnbmf.fsf@bsb.me.uk> <v5jhls$2m7np$1@dont-email.me> <v5jm32$2nqvp$1@dont-email.me> <v5k3v2$2qllm$1@dont-email.me> <v5kfst$2svt3$1@dont-email.me> <v5kmlm$2u918$1@dont-email.me> <20240627201830.854@kylheku.com> <v5m2nl$39qob$3@dont-email.me> <20240628032211.403@kylheku.com> <v5p4rv$3u92q$1@dont-email.me> <v5phah$168u$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Sat, 29 Jun 2024 21:55:54 +0200 (CEST) Injection-Info: dont-email.me; posting-host="8999aade17fef69a77001a25d1c0d2c5"; logging-data="86848"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18V5BAJPNQ9imU9iMfCyUnc" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:6SrRS5VlIYJcXw5QIH94a7fN25g= Content-Language: en-GB In-Reply-To: <v5phah$168u$1@dont-email.me> Bytes: 3152 On 29/06/2024 18:46, Richard Harnden wrote: > On 29/06/2024 15:14, bart wrote: > [...] >> My older bcc compiler reported 4 as a hard error unless an override >> was used. > > But you didn't say anything about main's args. I did, indirectly. The actual error was the use of "()" as an empty parameter list (for any function, not just main, but my example could also have been 'void H(){H(123);}'). If you tried to compile: int main() { main(123); } then it wouldn't get past the () to the call. Eventually I dropped that restriction, and the reason was that so much code used such parameter lists, for any function. Not because they wanted unchecked args (there are some legitimate use-cases within function pointer types), but because so many people assumed () meant zero parameters like (void). Why was such code so common? Presumably because compilers said nothing; and they couldn't because the language allowed it. If they had required an override like mine did, more would have got the message. Now it's too late because apparently the meaning of () is changing to mean (void). All those people who got it wrong (and introduced a dangerous bug) have won!