New features in GCC 16: Improved error messages and SARIF output
developers.redhat.com
New features in GCC 16: Improved error messages and SARIF output
1–10 of 23 posts
Re: New features in GCC 16: Improved error messages and SARIF output
#2Also, that interactive `-fanalyze`-output with the pointer visualisation looks super handy!
Happy to see there's still focus on the DX in GCC. C and C++ sorely needs it.
Re: New features in GCC 16: Improved error messages and SARIF output
#3Great news! As someone who's moving back to a C++ job after having worked with Rust for several years now, the error message parsing is one of the things I've been dreading the most... I'm still dreading it, but now sliiightly less. Also, that interactive `-fanalyze`-output with the pointer visualisation looks super handy! Happy to see there's still focus on the DX in GCC. C and C++ sorely needs it.
After more than 20 years in c++, I gave up that the situation will ever really be fixed vs constantly being made better at the margins, but not as fast as new ideas get added to the language.
Re: New features in GCC 16: Improved error messages and SARIF output
#4Great news! As someone who's moving back to a C++ job after having worked with Rust for several years now, the error message parsing is one of the things I've been dreading the most... I'm still dreading it, but now sliiightly less. Also, that interactive `-fanalyze`-output with the pointer visualisation looks super handy! Happy to see there's still focus on the DX in GCC. C and C++ sorely needs it.
This has appeared multiple times over the years as “compiler improves c++ errors” and is even the reason given as motivating things like concepts. Sure it keeps improving but the errors don’t seem to actually get smaller. The problem is inherent to templates - c++ got it wrong by having templates start weakly typed and it has no mechanisms to correct it in the language - concepts helped but didn’t definitively fix it…
Concepts at least tells you which criteria you didn't satisfy (as long as the concept is correct...), which - admittedly - feels like putting a bandaid on bullet wound.
Re: New features in GCC 16: Improved error messages and SARIF output
#5Great news! As someone who's moving back to a C++ job after having worked with Rust for several years now, the error message parsing is one of the things I've been dreading the most... I'm still dreading it, but now sliiightly less. Also, that interactive `-fanalyze`-output with the pointer visualisation looks super handy! Happy to see there's still focus on the DX in GCC. C and C++ sorely needs it.
This has appeared multiple times over the years as “compiler improves c++ errors” and is even the reason given as motivating things like concepts. Sure it keeps improving but the errors don’t seem to actually get smaller. The problem is inherent to templates - c++ got it wrong by having templates start weakly typed and it has no mechanisms to correct it in the language - concepts helped but didn’t definitively fix it…
Hence why SARIF has seen big adoption, as they hope that by exposing that , there are others ways to have others have tools that process SARIF.
Re: New features in GCC 16: Improved error messages and SARIF output
#6Earlier quoted context omitted.
This has appeared multiple times over the years as “compiler improves c++ errors” and is even the reason given as motivating things like concepts. Sure it keeps improving but the errors don’t seem to actually get smaller. The problem is inherent to templates - c++ got it wrong by having templates start weakly typed and it has no mechanisms to correct it in the language - concepts helped but didn’t definitively fix it…
You're not wrong there. The late stage (compilation wise) of template instantiation doesn't help either, as so much context has been built up. The art of debugging C++ compiler output is knowing which 90% to ignore. If you read it all you'll simply go mad. Concepts at least tells you which criteria you didn't satisfy (as long as the concept is correct...), which - admittedly - feels like putting a bandaid on bullet w…
Also, so far I would say they haven't been getting people rushing out to use them anyway, as C++20 is still too new for many projects.
Even GCC only now changed to C++20 as default mode.
Re: New features in GCC 16: Improved error messages and SARIF output
#7I looked into using SARIF once before and found it's an enormous over-engineered design-by-committee spec, but I guess it's still better than regexes (do people really do that?).
Re: New features in GCC 16: Improved error messages and SARIF output
#8Earlier quoted context omitted.
This has appeared multiple times over the years as “compiler improves c++ errors” and is even the reason given as motivating things like concepts. Sure it keeps improving but the errors don’t seem to actually get smaller. The problem is inherent to templates - c++ got it wrong by having templates start weakly typed and it has no mechanisms to correct it in the language - concepts helped but didn’t definitively fix it…
You're not wrong there. The late stage (compilation wise) of template instantiation doesn't help either, as so much context has been built up. The art of debugging C++ compiler output is knowing which 90% to ignore. If you read it all you'll simply go mad. Concepts at least tells you which criteria you didn't satisfy (as long as the concept is correct...), which - admittedly - feels like putting a bandaid on bullet w…
Re: New features in GCC 16: Improved error messages and SARIF output
#9Re: New features in GCC 16: Improved error messages and SARIF output
#10Great news! As someone who's moving back to a C++ job after having worked with Rust for several years now, the error message parsing is one of the things I've been dreading the most... I'm still dreading it, but now sliiightly less. Also, that interactive `-fanalyze`-output with the pointer visualisation looks super handy! Happy to see there's still focus on the DX in GCC. C and C++ sorely needs it.