Remix.run Logo
sylware 3 hours ago

cproc/tcc/scc/etc are C compilers not c++.

If you want to compile a recent c++ compiler (gcc/clang), you must have already a c++ compiler (one of the biggest mistake in open source software ever was to move gcc to c++, clang doing the wrong thing right from the start...).

You can start to compile gcc 4.7.4, the last gcc compiler with buggy c++98 you could compile with a C compiler (you will need to patch it, and even unroll its full SDK), then you will have to compile at least 2 gccs to reach the last gcc. This insane mess is due to the infinite versions of c++ ISO "standard", introducing tons of feature creep which will force you to "upgrade" (mostly no real good reasons, namely developer tantrums, or planned obsolescence).

This is disgusting, Big Tech grade abomination of software engineering, shame on the people who did that and those in power who are not trying to fix it (probably the GCC steering committee).

kragen 2 hours ago | parent | next [-]

Rewriting GCC's C++ codebase in C is also not realistic.

sylware 2 hours ago | parent [-]

I pointed out that some people seems to get good results at porting c++ to C using "AI"(LLM).

And big mistakes require big fixing.

kragen 2 hours ago | parent [-]

Yeah, we doin', big pimpin', we spendin' cheese

Big pimpin' on B-L-A-D’s, we doin'

Big pimpin' up in NYC

It's just that Jigga Man, Pimp C and B-U-N B

anthk an hour ago | parent | prev [-]

Rust it's worse for that; for full reproducibility you almost need to create a release-centipede from an old GCC-rs (or GCC) compilable release to the current one. At least that's the norm under Guix.

On cproc, cparser, I meant that we have no lightweight c++ compilers and sadly the closest to cparser in lightness it's clang++, because it's either that or the g++ behemoth.