GNU binutils code and build infrastructure sometimes is problematic. In the past, this has resulted in then-current binutils failing to compile with then-current GCC. This is about to happen again. Current GNU binutils 2.43 relies on long-obsolete / deprecated C features not available in C23 (or the GNU dialect thereof). The GNU dialect of C23 will be the default in GCC 15 to be released in early 2025.
GNU binutils maintainers are currently working on fixing the issue, so the fix should be in the next release (most likely 2.44).
Once GNU binutils 2.44 is released, we should merge it into our fork to get these fixes.
Diff:
Another reason we need this update is that this is needed for Msys2/MinGW aarch64 builds. Also, current upstream binutils is now 2.45.1, so we might as well go all the way there.
As of [r16253], libiberty has been synced with upstream binutils 2.46. I hope to be able to do the rest of the upgrade within a week or so.
P.S.: I was too optimistic, looks like I'll need a few more weeks now.
Related
Commit: [r16253]
Last edit: Philipp Klaus Krause 1 hour ago