Live data from Hacker News

Usability Improvements in GCC 15

developers.redhat.com

31–40 of 231 posts

Re: Usability Improvements in GCC 15

#31

Already looking forward to `grep`ing warning emojis in output. What's next? Poop emoji for errors?

I do not want any emojis from my compiler's output, heck, in my terminal in general. Please, do not make it the default behavior.

(BTW my terminal does not even support emojis.)

Re: Usability Improvements in GCC 15

#32
post #9
post #5

Earlier quoted context omitted.

GCC can honestly only blame itself for its inevitable increasing obsolescence. LLVM only has the attention it has because it can be used as a building block in other compilers. GCC could've made a tool and library which accepts IR, performs optimizations and emits machine code, but the project avoided that for ideological reasons, and as a result created a void in the ecosystem for a project like LLVM.

Yet another reason why I'm not a fan of Richard Stallman. Most of the decisions he made over the past 25 years have been self-defeating and led directly to the decline of the influence of his own movement. It's not that "the GCC project" avoided that for ideological reason, Stallman was personally a veto on that issue for years, and his personal objection led to several people quitting the project for LLVM, with a co…

Without GNU, GPL and Richard Stallman, FOSS would not exist in the first place. The GPL forced companies to make FOSS a thing, whether they liked it or not.

Re: Usability Improvements in GCC 15

#33
post #3

The template error messages look great. I wonder if it’s worth writing a translator from clang/gcc messages to these ones, for users of clang and older gcc (to pipe one’s error messages to)

I mean why not show a proper image instead of doing fancier ASCII art. Or skip it entirely and have an LLM describe the issues and fix it for you.

Re: Usability Improvements in GCC 15

#34
post #26
post #23

Earlier quoted context omitted.

Which open-source licenses can't be used together?

GPLv2 and GPLv3, for one example... It's sad when two licenses from the same organization are incompatible. GPLv2 and Apache.

The number of significant software projects which are licensed as GPLv2-only, and which are therefore incompatible with GPLv3, can probably be counted on one hand. Normal GPLv2 projects are licensed – as instructed by the text in the license itself – as “GPLv2 or later”. Which means that any normal GPLv2-licensed software can be relicensed to GPLv3, and can therefore be combined with any other GPLv3-licensed program without any issue whatsoever.

Re: Usability Improvements in GCC 15

#35
post #9
post #5

Earlier quoted context omitted.

GCC can honestly only blame itself for its inevitable increasing obsolescence. LLVM only has the attention it has because it can be used as a building block in other compilers. GCC could've made a tool and library which accepts IR, performs optimizations and emits machine code, but the project avoided that for ideological reasons, and as a result created a void in the ecosystem for a project like LLVM.

Yet another reason why I'm not a fan of Richard Stallman. Most of the decisions he made over the past 25 years have been self-defeating and led directly to the decline of the influence of his own movement. It's not that "the GCC project" avoided that for ideological reason, Stallman was personally a veto on that issue for years, and his personal objection led to several people quitting the project for LLVM, with a co…

Don't forget that the LLVM folks actually went to GNU and offered it to them, and they failed to pay attention and respond. (It's not even that they responded negatively; they just dropped it on the floor completely.) There's an alternate history where LLVM was a GNU project.

With the benefit of hindsight, I'm glad that that didn't happen, even though I have mixed feelings about LLVM being permissively licensed.

Re: Usability Improvements in GCC 15

#36
Using a hierarchy to show template errors is brilliant and I'm sort of surprised compilers haven't always done that.

I was investigating C++-style templates for a hobby language of mine and SFINAE is an important property to make them work in realistic codebases, but leads to exactly this problem. When a compile error occurs, there isn't a single cause, or even a linear chain of causes, but an potentially arbitrarily large tree of them.

For example, it sees a call to foo() and there is a template foo(). It tries to instantiate that but the body of foo() calls bar(). It tries to resolve that and finds a template bar() which it tries to instantiate, and so on.

The compiler is basically searching the entire tree of possible instantiations/overloads and backtracking when it hits dead ends.

Showing that tree as a tree makes a lot of sense.

Re: Usability Improvements in GCC 15

#37
post #9

Earlier quoted context omitted.

Yet another reason why I'm not a fan of Richard Stallman. Most of the decisions he made over the past 25 years have been self-defeating and led directly to the decline of the influence of his own movement. It's not that "the GCC project" avoided that for ideological reason, Stallman was personally a veto on that issue for years, and his personal objection led to several people quitting the project for LLVM, with a co…

Kind like how GPL 3 makes it infeasible for most companies to use/support free software. At least Stallman gets to feel morally superior though

Honestly at least Linus has his head in the right place

Re: Usability Improvements in GCC 15

#38
post #17
post #15

Earlier quoted context omitted.

It's not like GCC or the embedded toolchains are a shining beacon of ISO compliance... and if you mean video game consoles, are any of them using GCC today? Sony and Nintendo are both LLVM and Microsoft is Microsoft

The difference being that vendors forks not compliant with GPL can be legally asked for the changes they haven't sent upstream.

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

Re: Usability Improvements in GCC 15

#39
post #7

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

In Firefox, you can prevent this by setting `browser.navigation.requireUserInteraction` via about:config. I've been told that it breaks some stuff, but to date I haven't noticed any downsides

> you can prevent this by setting `browser.navigation.requireUserInteraction`

Setting it to what?

Re: Usability Improvements in GCC 15

#40
post #27

Earlier quoted context omitted.

I think that's an unreasonable lens for viewing his work. Of course he values purity over practicality. That's his entire platform. His decision making process always prioritizes supporting Free Software over proprietary efforts, pragmatism be damned. Expecting Stallman to make life easier for commercial vendors is like expecting PETA to recommend a good foie gras farm. That's not what they do.

>Expecting Stallman to make life easier for commercial vendors is like expecting PETA to recommend a good foie gras farm. That's not what they do. He threw open-source developers under the bus in the process. As a result approximately nobody writes GCC plugins, open source or otherwise.

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 software, not to enhance it. So why support GNU Emacs on Windows?

> We hope that the experience of using GNU Emacs on Windows will give programmers a taste of freedom, and that this will later inspire them to move to a free operating system such as GNU/Linux. That is the main valid reason to support free applications on nonfree operating systems.

RMS has been exceedingly clear about his views for decades. At this point it's hard to be surprised that he’ll make a pro-Free Software decision every time, without fail. That doesn't mean you have to agree with his decisions, of course! But to be shocked or disappointed by them is a sign of not understanding his platform.

Post reply on HN