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!