This was taken from the CoreFX repo verbatim, since we use the same
coding style. We can tweak it as appropriate (I'm thinking about
upgrading some suggestions to warnings, for example).
I already see some issues with it (e.g. insisting that we prefix statics
with `s_`, even for threadstatics - where we use `t_`).