For include/probes_mysql_nodtrace.h: in the places where these macros are used there was a warning "Logical || on a numeric constant" (I don't remember the exact wording but something like that).
For sql/item.cc: "memcpy on a class with virtual table" – really bad thing. It should have different, more elaborate fix but I realized that knowing intrinsics of how virtual table is represented inside the class layout it's good enough to have such fix in this place. But if you want to Do The Right Thing you should do something better than that.
For sql/unireg.cc: "accessing array element with negative index". clang somehow doesn't understand that there's conversion to unsigned char here, but converting to unsigned int with masking only lower byte works.
I've applied most of your patches.
I didn't apply changes to include/probes_mysql_nodtrace.h, sql/item.cc, sql/unireg.cc.
Could you please clarify what warnings exactly did you get there?