From: Po Lu <luangruo@yahoo.com>
To: Eli Schwartz <eschwartz93@gmail.com>
Cc: gcc@gcc.gnu.org
Subject: Re: More C type errors by default for GCC 14
Date: Thu, 11 May 2023 14:18:51 +0800 [thread overview]
Message-ID: <87wn1fcrw4.fsf@yahoo.com> (raw)
In-Reply-To: <67e65b41-5400-d1c2-9f43-f94d0ea7da9b@gmail.com> (Eli Schwartz's message of "Thu, 11 May 2023 00:46:23 -0400")
Eli Schwartz <eschwartz93@gmail.com> writes:
> Right, this is what I said. Although your bullet points 1 and 2 don't
> really have much of anything to do with it.
>
> In between points 3 and 4, I noted that you wish to *use* such bad code.
> I didn't say you wish to write it, merely that you wish to use it
> (without judging when it was written).
[...]
> Absolutely! It's a very good point. It's a point that people writing
> traditional not-C in this day and age are doing so with highly complex
> toolchains they have personally written to do things that no non-bespoke
> toolchain does. As such, they are unaffected by any and all decisions
> GCC makes. But if they were affected by such decisions, they would have
> the technical knowledge to modify GCC to suit themselves.
Upper management types performed a cost analysis and decided that it
would be more appropriate to license another C compiler. Please don't
expect that only technical ability affects decisions made in the real
world.
> But your bespoke toolchain did not support the code which you need to
> compile either. That's why you began hacking on it at all, to suit your
> needs.
>
> So if neither GCC nor your bespoke toolchain support the code you need
> to compile, and you must modify *something* to suit yourself, then it is
> definitely possible to do it for GCC instead.
>
> I don't see what the welcome for making these modifications into the
> default flagship experience for the entire free software ecosystem, has
> to do with your being welcome to hack on GCC for your own personal use.
>
> Do you feel welcome by your proprietary vendor, who refuses to let you
> touch it at all by withholding source code?
No, I do not. I can not speak for my management.
But I also do not feel any welcome from a group of developers who are
interested in breaking other code, some of which I have written for
myself, and then religiously defend their decisions.
In short, I do not like being told what to do with my own code!
> BRB, renaming all my python files to *.c and symlinking /usr/bin/cc to
> /usr/bin/python.
>
> ...
>
> No, the criteria for whether something constitutes a given programming
> language are not "the file extension says so" or "the compiler name says
> so".
>
> A programming language is defined by the syntax and meaning of that
> programming language.
OK, and the Portable C Compiler from Bell Labs followed one such
definition of its syntax and meaning.
ANSI and ISO simply define several such variants of the C language,
collectively known as Standard C. 1st edition K&R defines another, and
each compiler, in practice, defines its own. Just like there are
different varieties of English, or perhaps German.
> (If we were to replace this conversation with a definition of what
> constitutes python, then as a scripted language, all files without file
> extensions could be python scripts. And similarly, people play
> interesting games with C files by naming them unconventional names and
> passing -xc to the compiler. File extension autodetection isn't everything.)
This is pure pedantry. My point is:
If it looks like a duck, and quacks like a duck, then it is a duck.
or, IOW:
If it looks like C, compiles in a C compiler, then it is C.
> Well no, because if they are sufficiently dedicated to their existing
> code to not have changed in over 30 years then they are writing c89 code
> and passing -std=c89, and this is acceptable as far as GCC is concerned
> and their code will still compile.
They are not writing ``C89'' code. They are writing ``GNU99'', or perhaps
``GNU11'' code.
> So they won't feel inclined to find some other compiler, and quite
> frankly, if they were doing the right thing in accordance with the
> standard way to use the language they prefer to use, then they probably
> will not notice that GCC changed anything?
What gives you the right to dictate what the Right Thing is and what is
not?
> What guarantees of the future do you have for anything?
>
> What guarantees do you have that a meteor won't hit Earth and wipe out
> all human life in a great catastrophe?
>
> What guarantees do you have that GCC will still be run by the current
> maintainers?
>
> What guarantees do you have that GCC will still be maintained at all?
>
> What guarantees do you have that GCC won't decide next year that they
> are deleting all support for std > c89, making -traditional the default,
> and becoming a historical recreation society?
>
> What guarantees do you have that GCC won't decide next year that they
> are deleting all support for std < c23, mandating that everyone upgrade
> to the very latest std that isn't even fully implemented today?
>
> What guarantees do you have that reality exists as you think of it?
> Maybe you are a pink elephant and computers are a figment of your
> imagination.
You are arguing to absurdity.
> I think that what-ifs aren't the most productive use of our time. The
> current proposal provides for -std=c89 and similar, so the current
> proposal does not cause current GCC users to be unable to use GCC after
> the proposed change.
Perhaps you must try writing a program which strictly conforms to the
Standard, since you seem to be asking everyone to write in such a way.
My point is that there is a very significant body of economically
valuable code written in the dialect of C actually implemented by GCC,
as it stands right now, just as there is a significant (albiet not so
much) body of traditional C (K&R) code.
If GCC is no longer able to compile such code, it will attract the
legitimate anger of its users. And making users angry is not productive
in any way.
> If a future proposal causes current GCC users to be unable to use GCC
> after the future proposal is implemented, then, and only then, should we
> worry about whether it will be possible to use GCC. Then, and only then,
> will a threat to prevent doing so have actually materialized.
Parse error.
next prev parent reply other threads:[~2023-05-11 6:19 UTC|newest]
Thread overview: 246+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-09 12:15 Florian Weimer
2023-05-09 14:16 ` Dave Blanchard
2023-05-09 15:03 ` David Edelsohn
2023-05-09 15:07 ` Sam James
2023-05-09 15:35 ` Dave Blanchard
2023-05-09 15:58 ` Jonathan Wakely
2023-05-09 16:26 ` Arsen Arsenović
2023-05-09 15:14 ` Jonathan Wakely
2023-05-09 15:22 ` Dave Blanchard
2023-05-09 16:38 ` Arsen Arsenović
2023-05-09 16:57 ` Eli Zaretskii
2023-05-09 17:05 ` Sam James
2023-05-09 18:55 ` Eli Zaretskii
2023-05-09 17:15 ` Jonathan Wakely
2023-05-09 19:04 ` Eli Zaretskii
2023-05-09 19:07 ` Jakub Jelinek
2023-05-09 19:22 ` Eli Zaretskii
2023-05-09 20:13 ` David Edelsohn
2023-05-09 20:21 ` Arsen Arsenović
2023-05-10 2:38 ` Eli Zaretskii
2023-05-10 8:36 ` Arsen Arsenović
2023-05-10 11:52 ` Eli Zaretskii
2023-05-10 11:56 ` Jonathan Wakely
2023-05-10 12:25 ` Eli Zaretskii
2023-05-10 12:30 ` Jonathan Wakely
2023-05-10 12:44 ` Eli Zaretskii
2023-05-15 12:28 ` Richard Earnshaw (lists)
2023-05-15 20:17 ` Eric Gallager
2023-05-16 7:05 ` Florian Weimer
2023-05-16 15:56 ` Jason Merrill
2023-05-09 20:40 ` Jonathan Wakely
2023-05-09 22:27 ` David Edelsohn
2023-05-09 22:37 ` Joel Sherrill
2023-05-09 22:45 ` Jonathan Wakely
2023-05-10 10:40 ` Eric Gallager
2023-05-10 10:45 ` Sam James
2023-05-10 10:56 ` Neal Gompa
2023-05-10 12:06 ` Eli Zaretskii
2023-05-10 12:10 ` Neal Gompa
2023-05-10 12:41 ` Eli Zaretskii
2023-05-10 10:48 ` Jonathan Wakely
2023-05-10 10:51 ` Jonathan Wakely
2023-05-10 12:00 ` Eli Zaretskii
2023-05-10 12:42 ` Sam James
2023-05-10 15:10 ` Joel Sherrill
2023-05-10 15:14 ` Jakub Jelinek
2023-05-10 16:36 ` Joel Sherrill
2023-05-10 16:44 ` Jakub Jelinek
2023-05-10 17:05 ` Jonathan Wakely
2023-05-10 18:37 ` James K. Lowden
2023-05-10 23:26 ` Jonathan Wakely
2023-05-11 18:47 ` Jason Merrill
2023-05-10 23:33 ` Sam James
2023-05-11 5:48 ` Eli Zaretskii
2023-05-11 2:28 ` Po Lu
2023-05-11 2:09 ` Po Lu
2023-05-11 2:14 ` Sam James
2023-05-11 2:23 ` Po Lu
2023-05-11 3:14 ` Eli Schwartz
2023-05-11 3:56 ` Po Lu
2023-05-11 4:46 ` Eli Schwartz
2023-05-11 4:49 ` Eli Schwartz
2023-05-11 6:23 ` Po Lu
2023-05-11 6:18 ` Po Lu [this message]
2023-05-11 22:41 ` Eli Schwartz
2023-05-12 2:08 ` Po Lu
2023-05-12 3:07 ` Eli Schwartz
2023-05-12 5:57 ` Po Lu
2023-05-12 11:05 ` Gabriel Ravier
2023-05-12 13:53 ` Po Lu
2023-05-12 14:03 ` Jonathan Wakely
2023-05-14 12:35 ` Mark Wielaard
2023-05-12 11:48 ` Is the GNUC dialect anything that GCC does when given source code containing UB? (Was: More C type errors by default for GCC 14) Eli Schwartz
2023-05-12 13:07 ` Is the GNUC dialect anything that GCC does when given source code containing UB? Po Lu
2023-05-12 6:56 ` More C type errors by default for GCC 14 Eli Zaretskii
2023-05-12 7:28 ` Jonathan Wakely
2023-05-12 10:36 ` Eli Zaretskii
2023-05-12 13:19 ` Po Lu
2023-05-12 13:25 ` Gabriel Ravier
2023-05-13 0:45 ` Po Lu
2023-05-13 5:30 ` Thomas Koenig
2023-05-13 5:53 ` Po Lu
2023-05-14 5:10 ` Eli Schwartz
2023-05-14 5:38 ` Po Lu
2023-05-14 9:46 ` David Brown
2023-05-14 10:21 ` Jonathan Wakely
2023-05-14 10:23 ` Jonathan Wakely
2023-05-14 5:08 ` Eli Schwartz
2023-05-14 5:28 ` Po Lu
2023-05-14 5:56 ` Eli Schwartz
2023-05-14 11:55 ` Po Lu
2023-05-14 12:22 ` Arsen Arsenović
2023-05-15 1:05 ` Po Lu
2023-05-14 6:03 ` Eli Schwartz
2023-05-14 8:47 ` Jonathan Wakely
2023-05-14 12:05 ` Po Lu
2023-05-14 12:48 ` Nicholas Vinson
2023-05-14 10:29 ` David Brown
2023-05-12 15:51 ` Jason Merrill
2023-05-17 10:06 ` Florian Weimer
2023-05-12 11:26 ` David Brown
2023-05-11 6:24 ` Eli Zaretskii
2023-05-11 22:43 ` Eli Schwartz
2023-05-12 2:38 ` Po Lu
2023-05-12 2:55 ` Jason Merrill
2023-05-12 6:01 ` Po Lu
2023-05-12 6:40 ` Jonathan Wakely
2023-05-12 13:23 ` Po Lu
2023-05-12 10:49 ` Pedro Alves
2023-05-12 13:26 ` Po Lu
2023-05-12 11:55 ` Eli Schwartz
2023-05-12 13:54 ` Po Lu
2023-05-12 6:49 ` Eli Zaretskii
2023-05-12 2:56 ` Sam James
2023-05-12 6:03 ` Po Lu
2023-05-12 3:06 ` Sam James
2023-05-12 6:25 ` Eli Zaretskii
2023-05-12 11:23 ` Gabriel Ravier
2023-05-11 6:12 ` Eli Zaretskii
2023-05-11 7:04 ` Jonathan Wakely
2023-05-11 22:30 ` Eli Schwartz
2023-05-11 22:35 ` Sam James
2023-05-12 2:40 ` Po Lu
2023-05-12 2:52 ` Sam James
2023-05-12 5:32 ` Po Lu
2023-05-12 2:39 ` Po Lu
2023-05-12 3:18 ` Eli Schwartz
2023-05-12 6:17 ` Eli Zaretskii
2023-05-11 7:59 ` David Brown
2023-05-09 21:00 ` Thomas Koenig
2023-05-09 21:17 ` Arsen Arsenović
2023-05-10 13:57 ` Florian Weimer
2023-05-10 11:00 ` David Brown
2023-05-11 10:49 ` James K. Lowden
2023-05-11 1:38 ` Po Lu
2023-05-11 1:43 ` Sam James
2023-05-11 2:20 ` Po Lu
2023-05-09 20:57 ` Florian Weimer
2023-05-10 2:33 ` Eli Zaretskii
2023-05-10 8:04 ` Jonathan Wakely
2023-05-10 8:46 ` Richard Biener
2023-05-10 12:26 ` Florian Weimer
2023-05-10 11:30 ` Eli Zaretskii
2023-05-10 12:03 ` Jakub Jelinek
2023-05-10 12:36 ` Eli Zaretskii
2023-05-10 12:41 ` Gabriel Ravier
2023-05-10 14:14 ` Eli Zaretskii
2023-05-10 14:22 ` Jakub Jelinek
2023-05-10 15:30 ` Eli Zaretskii
2023-05-10 16:02 ` Jakub Jelinek
2023-05-10 16:31 ` Eli Zaretskii
2023-05-10 16:33 ` Richard Biener
2023-05-10 16:57 ` Eli Zaretskii
2023-05-10 17:08 ` Joseph Myers
2023-05-10 18:18 ` Eli Zaretskii
2023-05-12 15:02 ` Florian Weimer
2023-05-12 17:52 ` Florian Weimer
2023-05-12 17:55 ` Gabriel Ravier
2023-05-12 18:00 ` Florian Weimer
2023-05-12 18:08 ` Alexander Monakov
2023-05-12 18:14 ` Florian Weimer
2023-05-15 12:51 ` Michael Matz
2023-05-16 8:55 ` Florian Weimer
2023-05-16 10:39 ` Alexander Monakov
2023-05-16 11:01 ` Jakub Jelinek
2023-05-16 11:09 ` Jonathan Wakely
2023-05-16 11:15 ` Florian Weimer
2023-05-12 19:44 ` Joseph Myers
2023-05-12 20:43 ` Florian Weimer
2023-05-12 20:18 ` Jason Merrill
2023-05-12 20:57 ` Florian Weimer
2023-05-12 21:20 ` Sam James
2023-05-12 21:21 ` Sam James
2023-05-12 21:37 ` Florian Weimer
2023-05-12 21:47 ` Sam James
2023-05-12 21:59 ` Florian Weimer
2023-05-10 15:58 ` David Brown
2023-05-10 16:28 ` Eli Zaretskii
2023-05-11 6:52 ` David Brown
2023-05-11 7:39 ` Eli Zaretskii
2023-05-10 14:31 ` Thomas Koenig
2023-05-10 15:37 ` Eli Zaretskii
2023-05-11 2:38 ` Po Lu
2023-05-11 7:38 ` Arsen Arsenović
2023-05-11 8:31 ` Po Lu
2023-05-11 8:44 ` Arsen Arsenović
2023-05-11 9:28 ` Po Lu
2023-05-11 21:10 ` Arsen Arsenović
2023-05-12 1:41 ` Po Lu
2023-05-11 10:35 ` Eli Zaretskii
2023-05-11 19:25 ` Arsen Arsenović
2023-05-12 2:36 ` Po Lu
2023-05-12 12:30 ` Gabriel Ravier
2023-05-12 13:56 ` Po Lu
2023-05-12 7:53 ` Eli Zaretskii
2023-05-12 8:15 ` Jakub Jelinek
2023-05-12 10:40 ` Eli Zaretskii
2023-05-12 8:45 ` Christian Groessler
2023-05-12 10:14 ` Jonathan Wakely
2023-05-12 9:11 ` Thomas Koenig
2023-05-11 8:53 ` Jonathan Wakely
2023-05-11 9:29 ` Po Lu
2023-05-10 8:49 ` David Brown
2023-05-10 11:37 ` Eli Zaretskii
2023-05-10 11:49 ` Jonathan Wakely
2023-05-10 12:22 ` Eli Zaretskii
2023-05-10 13:30 ` David Brown
2023-05-10 14:39 ` Eli Zaretskii
2023-05-10 15:21 ` Paul Koning
2023-05-10 16:20 ` David Brown
2023-05-10 16:48 ` Eli Zaretskii
2023-05-10 12:32 ` Sam James
2023-05-10 12:47 ` Eli Zaretskii
2023-05-09 19:33 ` Arsen Arsenović
2023-05-09 15:25 ` David Edelsohn
2023-05-11 1:25 ` Po Lu
2023-05-11 1:30 ` Sam James
2023-05-11 1:33 ` Sam James
2023-05-11 2:18 ` Po Lu
2023-05-11 6:44 ` Jonathan Wakely
2023-05-11 8:32 ` Po Lu
2023-05-11 8:52 ` Jonathan Wakely
2023-05-11 7:36 ` Arsen Arsenović
2023-05-11 8:23 ` Po Lu
2023-05-09 18:22 ` Florian Weimer
2023-05-11 21:32 ` Segher Boessenkool
2023-05-09 15:16 ` Richard Biener
2023-05-09 16:05 ` Jakub Jelinek
2023-05-09 16:11 ` Sam James
2023-05-09 16:13 ` David Edelsohn
[not found] ` <BBE9950C-28AA-4A1C-A4C5-7F486538004E@gmail.com>
2023-05-09 16:44 ` Florian Weimer
2023-05-09 16:58 ` Ian Lance Taylor
2023-05-09 17:08 ` Jason Merrill
2023-05-09 17:16 ` Sam James
2023-05-09 16:59 ` Florian Weimer
2023-05-09 17:07 ` Sam James
2023-05-09 17:35 ` Florian Weimer
2023-05-11 15:21 ` Peter0x44
2023-05-12 9:33 ` Martin Jambor
2023-05-12 12:30 ` Jakub Jelinek
2023-05-15 12:46 ` Michael Matz
2023-05-15 13:14 ` Richard Earnshaw (lists)
2023-05-10 12:41 Marcin Jaczewski
2023-05-10 14:19 ` Eli Zaretskii
2023-05-10 13:10 Basile Starynkevitch
2023-05-10 14:20 ` David Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wn1fcrw4.fsf@yahoo.com \
--to=luangruo@yahoo.com \
--cc=eschwartz93@gmail.com \
--cc=gcc@gcc.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).