Feature gates are generally checked before expansion so feature gates are defeated by code inside macros.