Live data from Hacker News

Usability Improvements in GCC 15

developers.redhat.com

161–170 of 231 posts

Re: Usability Improvements in GCC 15

#161
post #13

Earlier quoted context omitted.

Embedded compiler vendors and UNIXes want a possibly slightly patched C or C++ compiler, maybe with an extra back-end bolted on. I'm talking about use-cases like Rust and Zig and Swift, projects which want a solid optimizing back-end but their own front-end and tooling.

gccrs is a rust implementation for gcc. Just because Rust developers don't want their users to be fully free doesn't mean there are any problems with gcc. And clang is developed by Apple which is a huge warning sign by itself.

LLVM/Clang is evolving more quickly than and is a much richer base for innovation than GCC is. LLVM spawned Rust, Swift, and Zig. The most recent GCC languages are Spark and COBOL.

One of the reasons that LLVM has been able to evolve so quickly is because of all the corporate contribution it gets.

GCC users want Clang/LLVM users to know how dumb they are for taking advantage of all the voluntary corporate investment in Clang/LLVM because, if you just used GCC instead, corporate contributions would be involuntary.

The GPL teaches us that we are not really free unless we have taken choice away from the developers and contributors who provide the code we use. This is the “fifth freedom”.

The “four freedoms” that the Free Software Foundation talks about are all provided by MIT and BSD. Those only represent “partial freedom”.

Only the GPL makes you “fully free” by providing the “fifth freedom”—-freedom to claim ownership over code other people will write in the future.

Sure, the “other people” are less free. But that is the price that needs to be paid for our freedom. Proper freedom (“full freedom”) is always rooted in the subjugation of others.

Re: Usability Improvements in GCC 15

#162

Earlier quoted context omitted.

Alternatively, if you join a Stallman-led Free Software project and hope he'll accept your ideas for making life easier for proprietary vendors, you're gonna have a bad time. I mean, the GNU Emacs FAQ for MS Windows ( https://www.gnu.org/software/emacs/manual/html_mono/efaq-w32... ) says: > It is not our goal to “help Windows users” by making text editing on Windows more convenient. We aim to replace proprietary soft…

I mean, I think he is right. If everyone stopped supporting Windows, it would have long died out in favor of easy-to-install Linux distributions... probably.

In reality though Microsoft just added a WSL; not bad: Linux code can run on Windows now.

Also, if you want Windows to die you need to work with OEMs: I assume that most users simply use whatever OS is pre-installed.

Re: Usability Improvements in GCC 15

#163
post #109
post #42

Earlier quoted context omitted.

With LLVM they don't need to fork it in the first place. But still, it doesn't matter because ISO compliance is a frontend problem. The one vendor who forks LLVM and doesn't contribute their biggest patches back is Apple, and if you want bleeding edge or compliance you're not using Apple Clang at all. If you say "isn't it great vendor toolchains have to contribute back to upstream?" I'm going to say "no, it sucks tha…

Forcing vendors to contribute back upstream is an attempt at making vendor toolchains not exist. If a company makes a new MCU with some exciting new instruction set, they need to make a compiler available which supports that instruction set and make that compiler available to their customers. With LLVM as the base, the vendor could make their toolchain proprietary, making it impossible to integrate it back into LLVM,…

>making it impossible to integrate it back into LLVM

Code getting open source is not impossible. Companies do it all of the time because it's expensive to rebase.

Re: Usability Improvements in GCC 15

#164

Earlier quoted context omitted.

I mean, I think he is right. If everyone stopped supporting Windows, it would have long died out in favor of easy-to-install Linux distributions... probably.

In reality though Microsoft just added a WSL; not bad: Linux code can run on Windows now. Also, if you want Windows to die you need to work with OEMs: I assume that most users simply use whatever OS is pre-installed.

I agree.

Re: Usability Improvements in GCC 15

#165
post #109
post #42

Earlier quoted context omitted.

With LLVM they don't need to fork it in the first place. But still, it doesn't matter because ISO compliance is a frontend problem. The one vendor who forks LLVM and doesn't contribute their biggest patches back is Apple, and if you want bleeding edge or compliance you're not using Apple Clang at all. If you say "isn't it great vendor toolchains have to contribute back to upstream?" I'm going to say "no, it sucks tha…

Forcing vendors to contribute back upstream is an attempt at making vendor toolchains not exist. If a company makes a new MCU with some exciting new instruction set, they need to make a compiler available which supports that instruction set and make that compiler available to their customers. With LLVM as the base, the vendor could make their toolchain proprietary, making it impossible to integrate it back into LLVM,…

Myth: GPL means more companies contribute to GCC

Previous reality: companies write fully proprietary code to avoid GCC

Current reality: companies choose Clang over GCC because of the license and then contribute many of their changes back.

Re: Usability Improvements in GCC 15

#166
post #117
post #38

Earlier quoted context omitted.

Venders who use llvm quickly discover the cost of mainaining their own fork is too high and end up contributing back.

The point was the whole clang package, and no they don't, plenty of examples.

Except they do, plenty of examples (many already provided)

Re: Usability Improvements in GCC 15

#167
post #152

Here's the pending GCC 15 release notes: https://gcc.gnu.org/gcc-15/changes.html (since the link in the article points to GCC 14) - I'd love to see godbolt examples of the sort of optimizations [[unsequenced]] and [[reproducible]] can do. - GCC has always been in my experience smart enough to know how to optimize normal C code into ROL and ROR instructions. I've never had any issues with it. So what's the point of __…

> How about some __int128 literals

There are _BitInt literals (wb and uwb), look adequate https://godbolt.org/z/xjEEM5Pa4 despite clang's "is a C23 extension" noise.

Re: Usability Improvements in GCC 15

#169
post #7

Usability improvement request for this article: don't hijack the browser back button :P

Browser makers should straight up remove the JS API for interacting with history. There are legitimate uses for it, but the malicious actors far outweigh the good ones at this point. Just remove it.

But wouldn't you be able to replicate the same issue by using a redirect?

Re: Usability Improvements in GCC 15

#170
post #4

I hope gcc remains the default in Linux due to the GPL. But I expect someday clang will become the default. Plus I heard COBOL was merged in with the compiler collection, nice!

Clang: - has about the same quality of error messages as GCC now - is now almost exactly as slow (/fast) as GCC at compiling now - sometimes produces faster code than Clang, sometimes slower, about the same overall I see no reason why the default would change.

well for one clang uses way less memory (RAM). also ld.lld is wayyyyyyyy faster than ld (and also uses way less memory).
Post reply on HN