| Deutsch English Français Italiano |
|
<87msh7xf19.fsf@bsb.me.uk> View for Bookmarking (what is this?) Look up another Usenet article |
Path: news.eternal-september.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Ben Bacarisse <ben@bsb.me.uk>
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: <vi54e9$3ie0o$1@dont-email.me> <vil82t$3ie9o$2@dont-email.me>
<vila9j$3j4dg$1@dont-email.me> <vin4su$49a6$1@dont-email.me>
<vin95m$5da6$1@dont-email.me> <vinh3h$7ppb$1@dont-email.me>
<vinjf8$8jur$1@dont-email.me> <vip5rf$p44n$1@dont-email.me>
<viprao$umjj$1@dont-email.me> <viqfk9$13esp$1@dont-email.me>
<viqhmn$131h8$3@dont-email.me> <visbmp$1ks59$1@dont-email.me>
<visgs7$1mgdb$1@dont-email.me> <viv5ve$2dqir$1@dont-email.me>
<vivggi$2gkth$1@dont-email.me> <vj1r8n$35lal$1@dont-email.me>
<vj1uge$36ugq$1@dont-email.me> <vj22ce$37g4b$1@dont-email.me>
<vj263c$396ln$1@dont-email.me> <vj2d21$3aqf3$1@dont-email.me>
<vj2e34$3b1j8$1@dont-email.me>
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
Bart <bc@freeuk.com> writes:
> On 07/12/2024 21:00, David Brown wrote:
>
>> <snip purely subjective opinion on unrealistic code>
>
> 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.