Index: src/core/SkPMFloat.h |
diff --git a/src/core/SkPMFloat.h b/src/core/SkPMFloat.h |
index eb575f2ee4520b92c204ad2bdde8e6bd7f1b0857..ce7b75e705f002c91c224e53f077e72e16d0b7c3 100644 |
--- a/src/core/SkPMFloat.h |
+++ b/src/core/SkPMFloat.h |
@@ -13,6 +13,13 @@ |
#include "SkColorPriv.h" |
#include "SkNx.h" |
+// This file may be included multiple times by .cpp files with different flags, leading |
+// to different definitions. Usually that doesn't matter because it's all inlined, but |
+// in Debug modes the compilers may not inline everything. So wrap everything in an |
+// anonymous namespace to give each includer their own silo of this code (or the linker |
+// will probably pick one randomly for us, which is rarely correct). |
+namespace { |
+ |
// A pre-multiplied color storing each component in the same order as SkPMColor, |
// but as a float in the range [0, 255]. |
class SkPMFloat : public Sk4f { |
@@ -67,6 +74,8 @@ private: |
typedef Sk4f INHERITED; |
}; |
+} // namespace |
+ |
#ifdef SKNX_NO_SIMD |
// Platform implementations of SkPMFloat assume Sk4f uses SSE or NEON. _none is generic. |
#include "../opts/SkPMFloat_none.h" |