Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Ben Bacarisse Newsgroups: comp.lang.c Subject: Re: question about linker Date: Sat, 07 Dec 2024 23:13:38 +0000 Organization: A noiseless patient Spider Lines: 45 Message-ID: <87msh7xf19.fsf@bsb.me.uk> References: MIME-Version: 1.0 Content-Type: text/plain Injection-Date: Sun, 08 Dec 2024 00:13:39 +0100 (CET) Injection-Info: dont-email.me; posting-host="2dc6852b926581c3c73a85fb3b579f3f"; logging-data="3508837"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1//rhsfPVccQ0juXPM7Zxa21L8RtNPp/AQ=" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:uzer6u85q2pDK+0Dzztem4mpuCU= sha1:lfMYubgX0psJUil12lYRDUyceFo= X-BSB-Auth: 1.bdbd88e1d8bd9f3708c6.20241207231338GMT.87msh7xf19.fsf@bsb.me.uk Bytes: 2479 Bart writes: > On 07/12/2024 21:00, David Brown wrote: > >> > > You mean that /real/ example where a function needed a type written 6 times > instead of once? OK. I've always wondered why prototypes in C did not simply use the existing syntax for declarations. After all, it was right there in K&R C, just outside the parentheses: f(m, n, s) int m, n; char *s; { ... } could have become f(int m, n; char *s) { ... } rather than f(int m, int n, char *s) { ... } Does anyone know if there even /was/ a reason? OK, I know the declarations were not /always/ there. Implicit int meant that one could write f(m, n, s) char *s; { ... } but that could also have been preserved by allowing f(m, n; char *s) { ... } -- Ben.