It's worth noting that this release breaks a lot of older code, see: https://wiki.gentoo.org/wiki/Modern_C_porting#What_changed.3... It enables a few -Werror flags by default, refusing to compile code with probable undefined behavior. Unfortunately, a lot of older code subtly raises these warnings (now hard errors), even in cases where it's "fine" (due to valid platform assumptions).
GCC 14.1
11–20 of 55 posts
Re: GCC 14.1
#12It's worth noting that this release breaks a lot of older code, see: https://wiki.gentoo.org/wiki/Modern_C_porting#What_changed.3... It enables a few -Werror flags by default, refusing to compile code with probable undefined behavior. Unfortunately, a lot of older code subtly raises these warnings (now hard errors), even in cases where it's "fine" (due to valid platform assumptions).
This is true but by now distros have fixed most of the breakage and sent the changes back upstream (certainly this is true for Fedora).
Re: GCC 14.1
#13Re: GCC 14.1
#14Re: GCC 14.1
#15Earlier quoted context omitted.
With hopefully more to come! There's a RISE project proposal being kicked around to improve vectorization support.
I didn't realize RISC-V already has so many extensions. I just briefly looked over them and apparently they are often just small parts which get grouped up into larger extensions, but I hope the extension "mess" won't kill risc-v in the end. Still very excited about RISC-V progress
It makes more sense if you think about it like programming libraries. That's the same 'mess', but it's not a problem.
There is often fear of 'fragmentation', but vendors tend to be highly responsive to their target market and competitors for each application and will coalesce around a set of extensions that make sense.
The other thing I'd add is that the one thing worse than having 'yet another extension' is not having the extension you need. Extensions are a response to market demand.
Re: GCC 14.1
#16Re: GCC 14.1
#17It's worth noting that this release breaks a lot of older code, see: https://wiki.gentoo.org/wiki/Modern_C_porting#What_changed.3... It enables a few -Werror flags by default, refusing to compile code with probable undefined behavior. Unfortunately, a lot of older code subtly raises these warnings (now hard errors), even in cases where it's "fine" (due to valid platform assumptions).
Re: GCC 14.1
#18Earlier quoted context omitted.
This is true but by now distros have fixed most of the breakage and sent the changes back upstream (certainly this is true for Fedora).
Well, yeah, for maintained upstreams. I sometimes need to build older versions of software and simply use unmaintained software, for which these changes are a bit of a pain, along with -fno-common before it.
Re: GCC 14.1
#19It's worth noting that this release breaks a lot of older code, see: https://wiki.gentoo.org/wiki/Modern_C_porting#What_changed.3... It enables a few -Werror flags by default, refusing to compile code with probable undefined behavior. Unfortunately, a lot of older code subtly raises these warnings (now hard errors), even in cases where it's "fine" (due to valid platform assumptions).
Re: GCC 14.1
#20Earlier quoted context omitted.
I didn't realize RISC-V already has so many extensions. I just briefly looked over them and apparently they are often just small parts which get grouped up into larger extensions, but I hope the extension "mess" won't kill risc-v in the end. Still very excited about RISC-V progress
For RISC-V, it's extensions all the way down. The mandatory core is tiny and all the value (outside of minuscule microcontrollers) is in the extensions. It makes more sense if you think about it like programming libraries. That's the same 'mess', but it's not a problem. There is often fear of 'fragmentation', but vendors tend to be highly responsive to their target market and competitors for each application and will…