Hey Lawrence, thanks for this work and for keeping the public up-to-date with this gcc-patches posting.
This looks pretty good to me. The only remaining issue for me is the fuzzyness/handwaving around inlining. I think the only way to really enforce "what can be inlined" is not to have people use their best judgement, or what they think is a small function, or what they intend for the compiler to inline, but to have -Winline mandatory. And thus flag things that are written as inlined, but cannot then be inlined by the compiler. This area seems historically fraught, in terms of expectations. I'm not trying to poke at the hornets nest here. -benjamin