don't break strict aliasing rules in older gcc versions
older gcc versions complaints about some unknown warning flags

(we can enable those only if clang is being used)