michael@0: diff --git a/gfx/skia/include/core/SkPostConfig.h b/gfx/skia/include/core/SkPostConfig.h michael@0: --- a/gfx/skia/include/core/SkPostConfig.h michael@0: +++ b/gfx/skia/include/core/SkPostConfig.h michael@0: @@ -277,19 +277,28 @@ michael@0: #endif michael@0: michael@0: ////////////////////////////////////////////////////////////////////// michael@0: michael@0: #ifndef SK_OVERRIDE michael@0: #if defined(_MSC_VER) michael@0: #define SK_OVERRIDE override michael@0: #elif defined(__clang__) michael@0: +#if __has_feature(cxx_override_control) michael@0: // Some documentation suggests we should be using __attribute__((override)), michael@0: // but it doesn't work. michael@0: #define SK_OVERRIDE override michael@0: +#elif defined(__has_extension) michael@0: +#if __has_extension(cxx_override_control) michael@0: +#define SK_OVERRIDE override michael@0: +#endif michael@0: +#endif michael@0: +#ifndef SK_OVERRIDE michael@0: +#define SK_OVERRIDE michael@0: +#endif michael@0: #else michael@0: // Linux GCC ignores "__attribute__((override))" and rejects "override". michael@0: #define SK_OVERRIDE michael@0: #endif michael@0: #endif michael@0: michael@0: ////////////////////////////////////////////////////////////////////// michael@0: