| Deutsch English Français Italiano |
|
<87a58msdo1.fsf@nosuchdomain.example.com> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: Keith Thompson <Keith.S.Thompson+u@gmail.com>
Newsgroups: comp.lang.c
Subject: Re: Endless complaints [was Re: do { quit; } else { }]
Date: Fri, 11 Apr 2025 12:26:06 -0700
Organization: None to speak of
Lines: 84
Message-ID: <87a58msdo1.fsf@nosuchdomain.example.com>
References: <vspbjh$8dvd$1@dont-email.me> <vt3d4g$2djqe$1@dont-email.me>
<vt3iqh$2ka99$1@dont-email.me> <868qoaeezc.fsf@linuxsc.com>
<vt3oeo$2oq3p$1@dont-email.me> <86mscqcpy1.fsf@linuxsc.com>
<vt48go$35hh3$2@dont-email.me> <86iknecjz8.fsf@linuxsc.com>
<vt4del$3a9sk$1@dont-email.me> <86o6x5at05.fsf@linuxsc.com>
<vt712u$1m84p$1@dont-email.me> <20250409170901.947@kylheku.com>
<vt88bk$2rv8r$1@dont-email.me>
<87wmbs45oa.fsf@nosuchdomain.example.com>
<vt8hdp$333f0$1@dont-email.me> <eFQJP.51897$j2D.28734@fx09.iad>
<vt8n5k$385mm$1@dont-email.me> <vt9g3b$3v929$1@dont-email.me>
<vt9j4j$1rdm$2@dont-email.me> <vtaj0f$11tb7$1@dont-email.me>
<vtaukr$1dp7m$2@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Fri, 11 Apr 2025 21:26:07 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="c7132c9dc01e9da84b004e8ef39b7407";
logging-data="2384762"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+iWVWw4Y6yTaOWnGYLiGuV"
User-Agent: Gnus/5.13 (Gnus v5.13)
Cancel-Lock: sha1:MD3ZthHlZj1oIXlJy0wJcL5d81U=
sha1:QjD5oqpw+8cHHruVD5jeov7QZow=
Bytes: 5508
bart <bc@freeuk.com> writes:
> On 11/04/2025 09:14, David Brown wrote:
>> On 11/04/2025 01:10, bart wrote:
>>> On 10/04/2025 23:18, Janis Papanagnou wrote:
>>>> *If* you're really interested in the topic, and since all the other
>>>> posters obviously gave up to continue explaining their sight to you,
>>>> why don't you accept that suggestion and read the standard document
>>>> to have clarity about the topic? [FYI; this was a rhetoric question.]
>>>
>> I had certainly given up and moved on.
>>
>>> I've read the document, or the relevant section.
>> Finally! Now you too can move on.
>>
>>> According to that, DB was wrong, and TR was half-right.
>>
>> Yes, it seems I was inaccurate about the compatibility - the names
>> of the struct and fields need to match across translation units, not
>> just the types of the fields. That's why it is important that /you/
>> read the standard.
>
> But no one, absolutely no one, said outright that you were wrong. Only
> Keith eventually agreed that one of you (and Tim) was right, but
> didn't care who, and the next day admitted that one of you might be
> wrong, but still didn't want to commit himself as to who it might be.
Somebody made a mistake. It wasn't immediately caught. It happens.
This is a very long thread, and IIRC by the time the two posters made
their contradictory posts, it wasn't clear exactly which code they were
referring to. I for one was not willing to dig through the thread to
find it.
Understanding the rules for type compatibility is important.
Determining whether two types posted in a long Usenet thread are
compatible is less so, and likely not worth the effort.
Later, you posted a summary of the relevant code and a paraphrase of
the statements about it. At that point, all the information was in one
place, and I commented.
I eventually made a post saying that the two types (in your summary) are
clearly not compatible.
> On the other hand, I was the only one not to make a bold claim one way
> or another (I said types were compatible enough for my test to work),
> but Keith had no hesitation in telling me I was 100% wrong!
You claimed that people were saying that both contradictory claims were
right. Nobody said that. You have not withdrawn your claim.
I told you that you were wrong because the term "compatible enough"
doesn't make sense. I've explained that at some length. I think what
you meant is that the types (almost certainly) have the same
representation. That's a perfectly valid observation, but you explained
it incorrectly.
Do you now understand the difference between two types being compatible
and two types having the same representation?
> That is what is very worrying to me, and makes this a toxic
> environment (see my last post here where I remark on the contrast with
> how KT treats me and how he treats TR.)
>
>> Tim was, as usual in these matters, entirely correct as far as I can
>> see. I don't see how he could be considered "half-right" here. Tim
>> has a communication style that some people find grating (to put it
>> mildly), but there is no question that his knowledge of the C
>> standards is outstanding.
>
> I said half-right because as he put it, it sounded as though
> compatibility depended entirely on struct tags.
That's your misinterpretation of what he wrote. The difference in tags
is *sufficient but not necessary* to determine that the types are
incompatible. Reread what he wrote with that in mind.
Your misinterpretation is understandable (his explanation was rather
terse), but it was an error on your part. Do you understand that?
[...]
--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
void Void(void) { Void(); } /* The recursive call of the void */