These are supported by gcc and clang, and I don't think MSVC works well with our code anyway, so let's keep things simple and use these directly.