Deutsch   English   Français   Italiano  
<87msmnu5e3.fsf@nosuchdomain.example.com>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith Thompson <Keith.S.Thompson+u@gmail.com>
Newsgroups: comp.lang.c
Subject: Re: technology discussion =?utf-8?Q?=E2=86=92?= does the world need
 a "new" C ?
Date: Thu, 11 Jul 2024 11:53:40 -0700
Organization: None to speak of
Lines: 24
Message-ID: <87msmnu5e3.fsf@nosuchdomain.example.com>
References: <v66eci$2qeee$1@dont-email.me> <v6f7vg$hgam$1@dont-email.me>
	<20240707164747.258@kylheku.com> <v6gl83$s72a$1@dont-email.me>
	<v6h8ao$ur1v$1@dont-email.me> <v6jhk3$1drd6$1@dont-email.me>
	<v6jiud$1dsjb$1@dont-email.me> <877cdur1z9.fsf@bsb.me.uk>
	<v6joi4$1epoj$1@dont-email.me> <871q42qy33.fsf@bsb.me.uk>
	<v6k6i0$1h4d3$1@dont-email.me> <87ed82p28y.fsf@bsb.me.uk>
	<v6m03l$1tf05$1@dont-email.me> <87r0c1nzjj.fsf@bsb.me.uk>
	<v6m716$1urj4$1@dont-email.me> <86ikxd8czu.fsf@linuxsc.com>
	<v6mggd$20g3f$1@dont-email.me> <20240710213910.00000afd@yahoo.com>
	<v6mm02$21cpb$1@dont-email.me> <865xtc87yo.fsf@linuxsc.com>
	<v6ol14$2fdrj$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Date: Thu, 11 Jul 2024 20:53:41 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="c51c7f9518f437252e8df6d7af482dc8";
	logging-data="2723276"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX194SSz7bVJBLWiZXZ2+Mqzr"
User-Agent: Gnus/5.13 (Gnus v5.13)
Cancel-Lock: sha1:SH7Nj9WGWSwrHVZ+yU1AoCl1lo0=
	sha1:2/hVJO/t6aZuouFP7P/sG+iFfq0=
Bytes: 2589

bart <bc@freeuk.com> writes:
[...]
> For that purpose, in the mind of the user, it does the same job as 'by
> by reference'. That it does so by some other quirks (array decay, and
> the ability to index pointers as thought they were arrays), is by the
> by.
[...]

Those "quirks" are a rich source of confusion and bugs for anyone who
doesn't understand how this stuff is actually defined.  (Yes, I'm
acknowledging, yet again, that the way C specifies its treatment of
arrays is confusing.)

A user who thinks that arrays are simply "passed by reference" is likely
to try to apply sizeof to an array parameter (and might or might not get
a diagnostic from the compiler).  A slightly more sophisticated user is
still likely to be unsure of just where the "quirks" are.

What have you ever done to help make that kind of error less likely?
What is your goal?

-- 
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
void Void(void) { Void(); } /* The recursive call of the void */