Well, one big reason is I can't rely on clang being available for every bespoke platform I write code for Unless all compilers supported it and implementation specifics could be controlled through pragmas or compiler flags then it is safer, easier and more workable to mange this myself.