diff --git a/include/core/SkColor.h b/include/core/SkColor.h index 53df435e46..ce74db8b27 100644 --- a/include/core/SkColor.h +++ b/include/core/SkColor.h @@ -400,6 +400,7 @@ using SkColor4f = SkRGBA4f; template <> SK_API SkColor4f SkColor4f::FromColor(SkColor); template <> SK_API SkColor SkColor4f::toSkColor() const; +template <> uint32_t SkColor4f::toBytes_RGBA() const; namespace SkColors { constexpr SkColor4f kTransparent = {0, 0, 0, 0}; diff --git a/include/private/SkColorData.h b/include/private/SkColorData.h index 2090ab4b7e..801511586f 100644 --- a/include/private/SkColorData.h +++ b/include/private/SkColorData.h @@ -441,4 +441,6 @@ constexpr SkPMColor4f SK_PMColor4fILLEGAL = { SK_FloatNegativeInfinity, SK_FloatNegativeInfinity, SK_FloatNegativeInfinity }; +template <> uint32_t SkPMColor4f::toBytes_RGBA() const; + #endif diff --git a/src/gpu/text/GrTextBlobCache.h b/src/gpu/text/GrTextBlobCache.h index 1484cee527..dcb53b20a1 100644 --- a/src/gpu/text/GrTextBlobCache.h +++ b/src/gpu/text/GrTextBlobCache.h @@ -197,4 +197,6 @@ private: SkMessageBus::Inbox fPurgeBlobInbox; }; +template<> SkMessageBus* SkMessageBus::Get(); + #endif diff --git a/src/gpu/vk/GrVkSemaphore.cpp b/src/gpu/vk/GrVkSemaphore.cpp index 191b6a3ce5..26754acccd 100644 --- a/src/gpu/vk/GrVkSemaphore.cpp +++ b/src/gpu/vk/GrVkSemaphore.cpp @@ -10,6 +10,7 @@ #include "include/gpu/GrBackendSemaphore.h" #include "src/gpu/vk/GrVkGpu.h" #include "src/gpu/vk/GrVkUtil.h" +#include "tools/gpu/vk/GrVulkanDefines.h" #ifdef VK_USE_PLATFORM_WIN32_KHR // windows wants to define this as CreateSemaphoreA or CreateSemaphoreW diff --git a/src/utils/Sk3D.cpp b/src/utils/Sk3D.cpp index 0df42b5fa9..97b85233b3 100644 --- a/src/utils/Sk3D.cpp +++ b/src/utils/Sk3D.cpp @@ -38,6 +38,9 @@ void Sk3LookAt(SkMatrix44* dst, const SkPoint3& eye, const SkPoint3& center, con dst->invert(dst); } +#undef far +#undef near + bool Sk3Perspective(SkMatrix44* dst, float near, float far, float angle) { SkASSERT(far > near); diff --git a/src/utils/win/SkDWriteGeometrySink.h b/src/utils/win/SkDWriteGeometrySink.h index 019539b191..5dd7bef353 100644 --- a/src/utils/win/SkDWriteGeometrySink.h +++ b/src/utils/win/SkDWriteGeometrySink.h @@ -13,6 +13,8 @@ class SkPath; +#define CONST const + #include #include diff --git a/third_party/skcms/skcms.cc b/third_party/skcms/skcms.cc index cc5738d977..c67310f6cc 100644 --- a/third_party/skcms/skcms.cc +++ b/third_party/skcms/skcms.cc @@ -124,7 +124,8 @@ static float minus_1_ulp(float x) { // Most transfer functions we work with are sRGBish. // For exotic HDR transfer functions, we encode them using a tf.g that makes no sense, // and repurpose the other fields to hold the parameters of the HDR functions. -enum TFKind { Bad, sRGBish, PQish, HLGish, HLGinvish }; +enum TFKind_skcms { Bad, sRGBish, PQish, HLGish, HLGinvish }; +#define TFKind TFKind_skcms struct TF_PQish { float A,B,C,D,E,F; }; struct TF_HLGish { float R,G,a,b,c; }; @@ -2011,7 +2012,9 @@ typedef enum { Op_store_hhhh, Op_store_fff, Op_store_ffff, -} Op; +} Op_skcms; + +#define Op Op_skcms #if defined(__clang__) template using Vec = T __attribute__((ext_vector_type(N)));