Index: src/core/SkPMFloat.h |
diff --git a/src/core/SkPMFloat.h b/src/core/SkPMFloat.h |
index 7db689917e11cead29f878a744f8d26a3cd23d4b..f97f25c9c6edf36198805b04269b6496a540c173 100644 |
--- a/src/core/SkPMFloat.h |
+++ b/src/core/SkPMFloat.h |
@@ -12,6 +12,13 @@ |
#include "SkColor.h" |
#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, 1]. |
@@ -52,6 +59,8 @@ |
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" |