Disclaimer: this does not currently work. The front-end and library compile successfully, but fail to link at the very end. This is due to a regression caused by 1dedc12d186a110854537e1279b4e6c29f2df35a, which I have been unable to solve.
Nevertheless, I am posting this patch series for two reasons. Firstly, to get feedback and reviews on the 56 already existing patches, even though most are just re-adding code or making idiomatic changes, so that when the final issue is solved everything has already been approved (hopefully) and the merge is good to go. Secondly, to get assistance with the final issue, because it is simply beyond me, and history has shown that asking for help via gcc-patches will yield nothing. You'll need libtool 2.4.7 and a bleeding-edge version of bdwgc to build it, in case anyone planned to do some testing. I have compressed the larger patches with bzip3, and attached the rest, hopefully as plaintext.