Path: csiph.com!eternal-september.org!feeder.eternal-september.org!nntp.eternal-september.org!.POSTED!not-for-mail
From: Tim Rentsch
Newsgroups: comp.lang.c
Subject: Re: switch/extension for see below strongly needed
Date: Thu, 04 Jun 2026 07:19:27 -0700
Organization: A noiseless patient Spider
Lines: 33
Message-ID: <86se72bd74.fsf@linuxsc.com>
References: <10uapjs$19723$1@dont-email.me> <10uprpn$1hfpm$1@dont-email.me> <10uvic7$63b$1@reader1.panix.com> <10v17h4$18mp3$1@dont-email.me> <10v49ic$3fq$1@reader1.panix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Injection-Date: Thu, 04 Jun 2026 14:19:29 +0000 (UTC)
Injection-Info: dont-email.me; logging-data="469035"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+FoMt2BGRqHq2qJb/meAuKhWFCjepdapk="; posting-host="d6853a47af6b5e28b854b4233267d531"
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Cancel-Lock: sha1:rxRyjC1kTyA+ad/ZhEXv4rqTbf8= sha1:i6Nb/OmbRW1jr7YTNWYU/rsMoNo= sha256:ALWLYVbJTgWYPBwsLGElAICqJ/KNCBd5lCexERzhBi0= sha1:096Ku2ighS8mFKAn+y4a44PYVdo=
Xref: csiph.com comp.lang.c:399687
cross@spitfire.i.gajendra.net (Dan Cross) writes:
> [...] An observation pointed out to me at my last gig, and that
> I now point out occasionally myself, is that Linux (for example)
> is not so much written in C but rather in Linux C, which is the
> dialect of the language defined by the compilers they use and
> the specific behaviors they force using flags, pragmas, etc, for
> those compilers.
Any program accepted by a conforming implementation is a C program.
That remains true even if the program relies on compiler options
such as -fwrap or -fno-strict-aliasing, or takes advantage of
specific behaviors chosen by the compiler in situations that the C
standard deems undefined behavior, or uses non-standard #pragmas
that the implementation has chosen to define. As long as the
implementation stays inside the bounds of being conforming, any
program it accepts is written in C. Writing in a subset of the full
language doesn't change that: a C program that has no 'goto'
statements in it is still a C program. The same reasoning applies
to programs that make use of -fwrapv, etc.
> At any rate, it's certainly not strictly
> conforming ISO C: is _any_ large program strictly conforming at
> this point? I suspect many projects strive for such, but few
> actually attain it.
I expect most people don't realize how high a bar it is to write a C
program that is strictly conforming. Except for toy examples I
don't think I've ever seen one. I wouldn't advocate choosing such a
criterion. Even more than that, if a member of any team I was part
of did suggest doing so I would strongly argue against it. Even if
it could be done, which I think is unlikely, the amount of effort
needed to do so would be prohibitive.