Most of these are surrounding the ObjectiveC formatters. They use a lot of unions containing unnamed structs, which are not ISO C++ compliant and which gcc warns about. There are several other minor warnings like unused variables, etc.
The ObjectiveC ones look NFC to me, because they basically just delete some structure / union members that are never read, but I'm throwing this up here for review anyway just to be on the safe side.
This bit is fine, and it's the only one I can comment on, because I wrote it.