limite use of platform macros within compiler.hpp