Remix.run Logo
chubot 4 hours ago

There was also "boringcc"

https://gcc.gnu.org/wiki/boringcc

As a boring platform for the portable parts of boring crypto software, I'd like to see a free C compiler that clearly defines, and permanently commits to, carefully designed semantics for everything that's labeled "undefined" or "unspecified" or implementation-defined" in the C "standard" (DJ Bernstein)

And yeah I feel this:

The only thing stopping gcc from becoming the desired boringcc is to find the people willing to do the work.

(Because OSH has shopt --set strict:all, which is "boring bash". Not many people understand the corners well enough to disallow them - https://oils.pub/ )

---

And Proposal for a Friendly Dialect of C (2014)

https://blog.regehr.org/archives/1180

pjmlp 2 hours ago | parent | next [-]

It is kind of ironic, given the existence of Orthodox C++, and kind of proves the point, that C isn't as simple as people think, having only read the K&R C book and nothing else.

lioeters 2 hours ago | parent | prev [-]

> in the C "standard"

Oof, those passive-aggressive quotes were probably deserved at the time.

flohofwoe 16 minutes ago | parent [-]

It's still not really wrong though. The C standard is just the minimal common feature set guaranteed by different C compilers, and even then there are significant differences between how those compilers implement the standard (e.g. the new C23 auto behaves differently between gcc and clang - and that's fully sanctioned by the C standard).

The actually interesting stuff happens outside the standard in vendor-specific language extensions (like the clang extended vector extension).