aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Hal Canary <halcanary@google.com>2017-02-07 14:09:38 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-02-10 01:19:52 +0000
commit6b20a559968e1ed0d3aa4ecbd6ddda9e681b4f86 (patch)
tree7f5846aed71df057c7a6adfd226fd8e04dbc87a9
parent8616bb2544b8504949a61d123d8cd130b0d8ce25 (diff)
Make header files self-sufficient
Change-Id: Ice7d761b1023da77e50e5d6aa597964f7d9aa1d8 Reviewed-on: https://skia-review.googlesource.com/8302 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Mike Reed <reed@google.com>
-rw-r--r--bench/gUniqueGlyphIDs.h5
-rw-r--r--gm/SkAnimTimer.h1
-rw-r--r--include/core/SkDrawable.h1
-rw-r--r--include/core/SkLights.h2
-rw-r--r--include/core/SkRSXform.h3
-rw-r--r--include/core/SkRasterHandleAllocator.h1
-rw-r--r--include/core/SkYUVSizeInfo.h2
-rw-r--r--include/ports/SkFontMgr_android.h2
-rw-r--r--include/ports/SkFontMgr_fontconfig.h2
-rw-r--r--include/private/SkShadowParams.h2
-rw-r--r--include/utils/SkLuaCanvas.h1
-rw-r--r--src/android/SkBitmapRegionDecoderPriv.h2
-rw-r--r--src/core/SkDeduper.h2
-rw-r--r--src/core/SkICCPriv.h6
-rw-r--r--src/core/SkImageInfoPriv.h6
-rw-r--r--src/core/SkMatrixUtils.h1
-rw-r--r--src/core/SkPictureContentInfo.h1
-rw-r--r--src/core/SkPipe.h13
-rw-r--r--src/core/SkRecordPattern.h1
-rw-r--r--src/core/SkSpecialSurface.h8
-rw-r--r--src/core/SkStringUtils.h2
-rw-r--r--src/core/SkValidationUtils.h1
-rw-r--r--src/gpu/GrAppliedClip.h3
-rw-r--r--src/gpu/GrPathRenderingRenderTargetContext.h4
-rw-r--r--src/gpu/ops/GrStencilPathOp.h1
-rw-r--r--src/opts/SkBlurImageFilter_opts.h2
-rw-r--r--src/opts/SkMorphologyImageFilter_opts.h2
-rw-r--r--src/sfnt/SkTTCFHeader.h1
-rw-r--r--src/sksl/ast/SkSLASTParameter.h1
-rw-r--r--src/sksl/ast/SkSLASTType.h2
-rw-r--r--src/sksl/ir/SkSLField.h1
-rw-r--r--src/sksl/ir/SkSLFunctionReference.h1
-rw-r--r--src/sksl/ir/SkSLIntLiteral.h1
-rw-r--r--src/sksl/ir/SkSLInterfaceBlock.h1
-rw-r--r--src/sksl/ir/SkSLPostfixExpression.h1
-rw-r--r--src/sksl/ir/SkSLPrefixExpression.h1
-rw-r--r--src/sksl/ir/SkSLSwizzle.h1
-rw-r--r--src/sksl/ir/SkSLVarDeclarations.h1
-rw-r--r--src/sksl/ir/SkSLVariableReference.h3
-rw-r--r--src/utils/SkTextureCompressor_Utils.h2
-rw-r--r--tests/PathOpsThreadedCommon.h2
41 files changed, 78 insertions, 18 deletions
diff --git a/bench/gUniqueGlyphIDs.h b/bench/gUniqueGlyphIDs.h
index fe1c67a095..8132106340 100644
--- a/bench/gUniqueGlyphIDs.h
+++ b/bench/gUniqueGlyphIDs.h
@@ -5,6 +5,10 @@
* found in the LICENSE file.
*/
+#ifndef gUniqueGlyphIDs_DEFINED
+#define gUniqueGlyphIDs_DEFINED
+
+#include <cstdint>
/* runs of unique glyph IDs, with a 0xFFFF sentinel between different runs
*
@@ -466,3 +470,4 @@ static const uint16_t gUniqueGlyphIDs[] = {
1329, 2149, 2201, 2275, 2901, 3253, 3406, 3824, 9106, 9125, 9137, 9172, 12431, 0xFFFF,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 64, 65, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 95, 97, 98, 105, 106, 107, 108, 109, 112, 113, 114, 116, 117, 120, 121, 122, 123, 124, 125, 126, 127, 131, 138, 139, 140, 169, 170, 171, 177, 178, 179, 180, 182, 188, 194, 198, 200, 208, 234, 240, 255, 259, 264, 429, 458, 484, 570, 571, 572, 573, 574, 575, 576, 577, 578, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 593, 594, 595, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 629, 630, 631, 632, 633, 1131, 1133, 1189, 1190, 1191, 1192, 1193, 1195, 1197, 1199, 1201, 1203, 1209, 1211, 1213, 1215, 1217, 1219, 1221, 1223, 1225, 1227, 1229, 1231, 1233, 1235, 1237, 1239, 1241, 1243, 1245, 1247, 1249, 1251, 1253, 1255, 1257, 1259, 1261, 1263, 1265, 1267, 1269, 1273, 1275, 0xFFFF,
0xFFFF };
+#endif // gUniqueGlyphIDs_DEFINED
diff --git a/gm/SkAnimTimer.h b/gm/SkAnimTimer.h
index 060de00c2e..b7b9bbf227 100644
--- a/gm/SkAnimTimer.h
+++ b/gm/SkAnimTimer.h
@@ -5,6 +5,7 @@
* found in the LICENSE file.
*/
+#include "SkScalar.h"
#include "SkTime.h"
#ifndef SkAnimTimer_DEFINED
diff --git a/include/core/SkDrawable.h b/include/core/SkDrawable.h
index 6fec3fcf93..c5053a847d 100644
--- a/include/core/SkDrawable.h
+++ b/include/core/SkDrawable.h
@@ -9,6 +9,7 @@
#define SkDrawable_DEFINED
#include "SkFlattenable.h"
+#include "SkScalar.h"
class SkCanvas;
class SkMatrix;
diff --git a/include/core/SkLights.h b/include/core/SkLights.h
index 954168de4d..d91d91935d 100644
--- a/include/core/SkLights.h
+++ b/include/core/SkLights.h
@@ -10,12 +10,12 @@
#define SkLights_DEFINED
#include "../private/SkTArray.h"
+#include "SkImage.h"
#include "SkPoint3.h"
#include "SkRefCnt.h"
class SkReadBuffer;
class SkWriteBuffer;
-class SkImage;
class SK_API SkLights : public SkRefCnt {
public:
diff --git a/include/core/SkRSXform.h b/include/core/SkRSXform.h
index 7af6e67c12..dffbc59d39 100644
--- a/include/core/SkRSXform.h
+++ b/include/core/SkRSXform.h
@@ -8,7 +8,8 @@
#ifndef SkRSXform_DEFINED
#define SkRSXform_DEFINED
-#include "SkScalar.h"
+#include "SkPoint.h"
+#include "SkSize.h"
/**
* A compressed form of a rotation+scale matrix.
diff --git a/include/core/SkRasterHandleAllocator.h b/include/core/SkRasterHandleAllocator.h
index 62796cb62a..e1cc83040e 100644
--- a/include/core/SkRasterHandleAllocator.h
+++ b/include/core/SkRasterHandleAllocator.h
@@ -10,6 +10,7 @@
#include "SkImageInfo.h"
+class SkBitmap;
class SkCanvas;
class SkMatrix;
diff --git a/include/core/SkYUVSizeInfo.h b/include/core/SkYUVSizeInfo.h
index 2c5a51d794..19b5a8e89c 100644
--- a/include/core/SkYUVSizeInfo.h
+++ b/include/core/SkYUVSizeInfo.h
@@ -8,6 +8,8 @@
#ifndef SkYUVSizeInfo_DEFINED
#define SkYUVSizeInfo_DEFINED
+#include "SkSize.h"
+
struct SkYUVSizeInfo {
enum {
kY = 0,
diff --git a/include/ports/SkFontMgr_android.h b/include/ports/SkFontMgr_android.h
index e1a8fecb97..050faddbb1 100644
--- a/include/ports/SkFontMgr_android.h
+++ b/include/ports/SkFontMgr_android.h
@@ -8,7 +8,7 @@
#ifndef SkFontMgr_android_DEFINED
#define SkFontMgr_android_DEFINED
-#include "SkTypes.h"
+#include "SkRefCnt.h"
class SkFontMgr;
diff --git a/include/ports/SkFontMgr_fontconfig.h b/include/ports/SkFontMgr_fontconfig.h
index 75497cbdc7..e0f41089d5 100644
--- a/include/ports/SkFontMgr_fontconfig.h
+++ b/include/ports/SkFontMgr_fontconfig.h
@@ -8,7 +8,7 @@
#ifndef SkFontMgr_fontconfig_DEFINED
#define SkFontMgr_fontconfig_DEFINED
-#include "SkTypes.h"
+#include "SkRefCnt.h"
#include <fontconfig/fontconfig.h>
class SkFontMgr;
diff --git a/include/private/SkShadowParams.h b/include/private/SkShadowParams.h
index 3df0a44279..65d6c06b86 100644
--- a/include/private/SkShadowParams.h
+++ b/include/private/SkShadowParams.h
@@ -7,6 +7,8 @@
#ifndef SkShadowParams_DEFINED
#define SkShadowParams_DEFINED
+#include "SkScalar.h"
+
/** \struct SkShadowParams
This struct holds information needed for drawing shadows.
diff --git a/include/utils/SkLuaCanvas.h b/include/utils/SkLuaCanvas.h
index 805c2e14b6..ce374137c0 100644
--- a/include/utils/SkLuaCanvas.h
+++ b/include/utils/SkLuaCanvas.h
@@ -10,6 +10,7 @@
#include "SkCanvas.h"
#include "SkString.h"
+#include "SkVertices.h"
struct lua_State;
diff --git a/src/android/SkBitmapRegionDecoderPriv.h b/src/android/SkBitmapRegionDecoderPriv.h
index baa891e9c3..db7bd42051 100644
--- a/src/android/SkBitmapRegionDecoderPriv.h
+++ b/src/android/SkBitmapRegionDecoderPriv.h
@@ -8,6 +8,8 @@
#ifndef SkBitmapRegionDecoderPriv_DEFINED
#define SkBitmapRegionDecoderPriv_DEFINED
+#include "SkRect.h"
+
enum SubsetType {
kFullyInside_SubsetType,
kPartiallyInside_SubsetType,
diff --git a/src/core/SkDeduper.h b/src/core/SkDeduper.h
index f82f4fd8c2..4ba685f10d 100644
--- a/src/core/SkDeduper.h
+++ b/src/core/SkDeduper.h
@@ -8,7 +8,7 @@
#ifndef SkDeduper_DEFINED
#define SkDeduper_DEFINED
-#include "SkTypes.h"
+#include "SkFlattenable.h"
class SkImage;
class SkPicture;
diff --git a/src/core/SkICCPriv.h b/src/core/SkICCPriv.h
index bc8a9e9533..4c656f17d8 100644
--- a/src/core/SkICCPriv.h
+++ b/src/core/SkICCPriv.h
@@ -5,6 +5,11 @@
* found in the LICENSE file.
*/
+#ifndef SkICCPriv_DEFINED
+#define SkICCPriv_DEFINED
+
+#include "SkTypes.h"
+
// This is equal to the header size according to the ICC specification (128)
// plus the size of the tag count (4). We include the tag count since we
// always require it to be present anyway.
@@ -44,3 +49,4 @@ enum ParaCurveType {
kGABDE_ParaCurveType = 3,
kGABCDEF_ParaCurveType = 4,
};
+#endif // SkICCPriv_DEFINED
diff --git a/src/core/SkImageInfoPriv.h b/src/core/SkImageInfoPriv.h
index 81d7070062..40209f8946 100644
--- a/src/core/SkImageInfoPriv.h
+++ b/src/core/SkImageInfoPriv.h
@@ -5,6 +5,11 @@
* found in the LICENSE file.
*/
+#ifndef SkImageInfoPriv_DEFINED
+#define SkImageInfoPriv_DEFINED
+
+#include "SkImageInfo.h"
+
/**
* Returns true if |info| contains a valid combination of width, height, colorType, alphaType,
* colorSpace. Returns false otherwise.
@@ -85,3 +90,4 @@ static inline bool SkImageInfoValidConversion(const SkImageInfo& dst, const SkIm
return true;
}
+#endif // SkImageInfoPriv_DEFINED
diff --git a/src/core/SkMatrixUtils.h b/src/core/SkMatrixUtils.h
index 0e01fbe953..c311a6cfd2 100644
--- a/src/core/SkMatrixUtils.h
+++ b/src/core/SkMatrixUtils.h
@@ -8,6 +8,7 @@
#ifndef SkMatrixUtils_DEFINED
#define SkMatrixUtils_DEFINED
+#include "SkPoint.h"
#include "SkSize.h"
class SkMatrix;
diff --git a/src/core/SkPictureContentInfo.h b/src/core/SkPictureContentInfo.h
index 81c8a274e3..36cfa7784f 100644
--- a/src/core/SkPictureContentInfo.h
+++ b/src/core/SkPictureContentInfo.h
@@ -8,6 +8,7 @@
#ifndef SkPictureContentInfo_DEFINED
#define SkPictureContentInfo_DEFINED
+#include "SkPaint.h"
#include "SkTDArray.h"
class GrContext;
diff --git a/src/core/SkPipe.h b/src/core/SkPipe.h
index 1418387e3b..027edfba7a 100644
--- a/src/core/SkPipe.h
+++ b/src/core/SkPipe.h
@@ -9,16 +9,19 @@
#define SkPipe_DEFINED
#include "SkData.h"
+#include "SkImage.h"
+#include "SkPicture.h"
class SkCanvas;
-class SkImage;
-class SkPicture;
-class SkTypefaceSerializer;
-class SkTypefaceDeserializer;
-class SkImageSerializer;
class SkImageDeserializer;
+class SkImageSerializer;
+class SkTypeface;
+class SkTypefaceDeserializer;
+class SkTypefaceSerializer;
class SkWStream;
+struct SkRect;
+
class SkPipeSerializer {
public:
SkPipeSerializer();
diff --git a/src/core/SkRecordPattern.h b/src/core/SkRecordPattern.h
index 45f45724c1..73fe7630c4 100644
--- a/src/core/SkRecordPattern.h
+++ b/src/core/SkRecordPattern.h
@@ -8,6 +8,7 @@
#ifndef SkRecordPattern_DEFINED
#define SkRecordPattern_DEFINED
+#include "SkRecord.h"
#include "SkTLogic.h"
namespace SkRecords {
diff --git a/src/core/SkSpecialSurface.h b/src/core/SkSpecialSurface.h
index 2aa03dd4de..96b74a4dac 100644
--- a/src/core/SkSpecialSurface.h
+++ b/src/core/SkSpecialSurface.h
@@ -8,13 +8,17 @@
#ifndef SkSpecialSurface_DEFINED
#define SkSpecialSurface_DEFINED
+#include "SkImageInfo.h"
#include "SkRefCnt.h"
#include "SkSurfaceProps.h"
+#if SK_SUPPORT_GPU
+#include "GrTypes.h"
+#endif
+
class GrContext;
-struct GrSurfaceDesc;
+class SkBitmap;
class SkCanvas;
-struct SkImageInfo;
class SkSpecialImage;
/**
diff --git a/src/core/SkStringUtils.h b/src/core/SkStringUtils.h
index fd158c30bd..fecf833d73 100644
--- a/src/core/SkStringUtils.h
+++ b/src/core/SkStringUtils.h
@@ -8,6 +8,8 @@
#ifndef SkStringUtils_DEFINED
#define SkStringUtils_DEFINED
+#include "SkScalar.h"
+
class SkString;
/**
diff --git a/src/core/SkValidationUtils.h b/src/core/SkValidationUtils.h
index d71666c929..5e2b91d4d3 100644
--- a/src/core/SkValidationUtils.h
+++ b/src/core/SkValidationUtils.h
@@ -10,6 +10,7 @@
#include "SkBitmap.h"
#include "SkBlendMode.h"
+#include "SkXfermodePriv.h"
/** Returns true if coeff's value is in the SkXfermode::Coeff enum.
*/
diff --git a/src/gpu/GrAppliedClip.h b/src/gpu/GrAppliedClip.h
index 27fbde0b29..ed75becd3e 100644
--- a/src/gpu/GrAppliedClip.h
+++ b/src/gpu/GrAppliedClip.h
@@ -8,11 +8,10 @@
#ifndef GrAppliedClip_DEFINED
#define GrAppliedClip_DEFINED
+#include "GrFragmentProcessor.h"
#include "GrScissorState.h"
#include "GrWindowRectsState.h"
-class GrFragmentProcessor;
-
/**
* Produced by GrClip. It provides a set of modifications to the drawing state that are used to
* create the final GrPipeline for a GrOp.
diff --git a/src/gpu/GrPathRenderingRenderTargetContext.h b/src/gpu/GrPathRenderingRenderTargetContext.h
index d26f08ecdb..420bbe83b3 100644
--- a/src/gpu/GrPathRenderingRenderTargetContext.h
+++ b/src/gpu/GrPathRenderingRenderTargetContext.h
@@ -8,9 +8,7 @@
#ifndef GrPathRenderingRenderTargetContext_DEFINED
#define GrPathRenderingRenderTargetContext_DEFINED
-#include "GrRenderTargetContext.h"
-
-class GrStencilAndCoverTextContext;
+#include "text/GrStencilAndCoverTextContext.h"
class GrPathRenderingRenderTargetContext : public GrRenderTargetContext {
public:
diff --git a/src/gpu/ops/GrStencilPathOp.h b/src/gpu/ops/GrStencilPathOp.h
index f21b524f2f..462b626a83 100644
--- a/src/gpu/ops/GrStencilPathOp.h
+++ b/src/gpu/ops/GrStencilPathOp.h
@@ -14,6 +14,7 @@
#include "GrPath.h"
#include "GrPathRendering.h"
#include "GrRenderTarget.h"
+#include "GrStencilSettings.h"
class GrStencilPathOp final : public GrOp {
public:
diff --git a/src/opts/SkBlurImageFilter_opts.h b/src/opts/SkBlurImageFilter_opts.h
index 497bcde33f..f953a2e7e8 100644
--- a/src/opts/SkBlurImageFilter_opts.h
+++ b/src/opts/SkBlurImageFilter_opts.h
@@ -9,7 +9,7 @@
#define SkBlurImageFilter_opts_DEFINED
#include "SkColorPriv.h"
-#include "SkTypes.h"
+#include "SkRect.h"
#if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
#include <immintrin.h>
diff --git a/src/opts/SkMorphologyImageFilter_opts.h b/src/opts/SkMorphologyImageFilter_opts.h
index e30a9e4973..0c29ff1af2 100644
--- a/src/opts/SkMorphologyImageFilter_opts.h
+++ b/src/opts/SkMorphologyImageFilter_opts.h
@@ -8,6 +8,8 @@
#ifndef SkMorphologyImageFilter_opts_DEFINED
#define SkMorphologyImageFilter_opts_DEFINED
+#include "SkColor.h"
+
namespace SK_OPTS_NS {
enum MorphType { kDilate, kErode };
diff --git a/src/sfnt/SkTTCFHeader.h b/src/sfnt/SkTTCFHeader.h
index 2dc77eea57..71c6661e10 100644
--- a/src/sfnt/SkTTCFHeader.h
+++ b/src/sfnt/SkTTCFHeader.h
@@ -9,6 +9,7 @@
#define SkTTCFHeader_DEFINED
#include "SkOTTableTypes.h"
+#include "SkSFNTHeader.h"
#pragma pack(push, 1)
diff --git a/src/sksl/ast/SkSLASTParameter.h b/src/sksl/ast/SkSLASTParameter.h
index 7b653ad289..6bb13acf49 100644
--- a/src/sksl/ast/SkSLASTParameter.h
+++ b/src/sksl/ast/SkSLASTParameter.h
@@ -8,6 +8,7 @@
#ifndef SKSL_ASTPARAMETER
#define SKSL_ASTPARAMETER
+#include "SkSLASTPositionNode.h"
#include "SkSLASTType.h"
#include "../ir/SkSLModifiers.h"
diff --git a/src/sksl/ast/SkSLASTType.h b/src/sksl/ast/SkSLASTType.h
index 81594000e5..9cbded1043 100644
--- a/src/sksl/ast/SkSLASTType.h
+++ b/src/sksl/ast/SkSLASTType.h
@@ -8,6 +8,8 @@
#ifndef SKSL_ASTTYPE
#define SKSL_ASTTYPE
+#include "SkSLASTPositionNode.h"
+
namespace SkSL {
/**
diff --git a/src/sksl/ir/SkSLField.h b/src/sksl/ir/SkSLField.h
index f73b6025ec..53d85e0d5b 100644
--- a/src/sksl/ir/SkSLField.h
+++ b/src/sksl/ir/SkSLField.h
@@ -12,6 +12,7 @@
#include "SkSLPosition.h"
#include "SkSLSymbol.h"
#include "SkSLType.h"
+#include "SkSLVariable.h"
namespace SkSL {
diff --git a/src/sksl/ir/SkSLFunctionReference.h b/src/sksl/ir/SkSLFunctionReference.h
index ec1fc3804c..e95833d6e6 100644
--- a/src/sksl/ir/SkSLFunctionReference.h
+++ b/src/sksl/ir/SkSLFunctionReference.h
@@ -10,6 +10,7 @@
#include "SkSLContext.h"
#include "SkSLExpression.h"
+#include "SkSLFunctionDeclaration.h"
namespace SkSL {
diff --git a/src/sksl/ir/SkSLIntLiteral.h b/src/sksl/ir/SkSLIntLiteral.h
index 23325e65fb..b6a23d650c 100644
--- a/src/sksl/ir/SkSLIntLiteral.h
+++ b/src/sksl/ir/SkSLIntLiteral.h
@@ -8,6 +8,7 @@
#ifndef SKSL_INTLITERAL
#define SKSL_INTLITERAL
+#include "SkSLContext.h"
#include "SkSLExpression.h"
namespace SkSL {
diff --git a/src/sksl/ir/SkSLInterfaceBlock.h b/src/sksl/ir/SkSLInterfaceBlock.h
index bc84396b2d..0141953c35 100644
--- a/src/sksl/ir/SkSLInterfaceBlock.h
+++ b/src/sksl/ir/SkSLInterfaceBlock.h
@@ -9,6 +9,7 @@
#define SKSL_INTERFACEBLOCK
#include "SkSLProgramElement.h"
+#include "SkSLSymbolTable.h"
#include "SkSLVarDeclarations.h"
namespace SkSL {
diff --git a/src/sksl/ir/SkSLPostfixExpression.h b/src/sksl/ir/SkSLPostfixExpression.h
index 6c9fafe5a0..05ff1675e0 100644
--- a/src/sksl/ir/SkSLPostfixExpression.h
+++ b/src/sksl/ir/SkSLPostfixExpression.h
@@ -9,6 +9,7 @@
#define SKSL_POSTFIXEXPRESSION
#include "SkSLExpression.h"
+#include "SkSLToken.h"
namespace SkSL {
diff --git a/src/sksl/ir/SkSLPrefixExpression.h b/src/sksl/ir/SkSLPrefixExpression.h
index b7db99a0a4..dafe1e9599 100644
--- a/src/sksl/ir/SkSLPrefixExpression.h
+++ b/src/sksl/ir/SkSLPrefixExpression.h
@@ -9,6 +9,7 @@
#define SKSL_PREFIXEXPRESSION
#include "SkSLExpression.h"
+#include "SkSLToken.h"
namespace SkSL {
diff --git a/src/sksl/ir/SkSLSwizzle.h b/src/sksl/ir/SkSLSwizzle.h
index 8ad9001ada..0803f3bc36 100644
--- a/src/sksl/ir/SkSLSwizzle.h
+++ b/src/sksl/ir/SkSLSwizzle.h
@@ -8,6 +8,7 @@
#ifndef SKSL_SWIZZLE
#define SKSL_SWIZZLE
+#include "SkSLContext.h"
#include "SkSLExpression.h"
#include "SkSLUtil.h"
diff --git a/src/sksl/ir/SkSLVarDeclarations.h b/src/sksl/ir/SkSLVarDeclarations.h
index 490259a081..5781230ece 100644
--- a/src/sksl/ir/SkSLVarDeclarations.h
+++ b/src/sksl/ir/SkSLVarDeclarations.h
@@ -9,6 +9,7 @@
#define SKSL_VARDECLARATIONS
#include "SkSLExpression.h"
+#include "SkSLProgramElement.h"
#include "SkSLStatement.h"
#include "SkSLVariable.h"
diff --git a/src/sksl/ir/SkSLVariableReference.h b/src/sksl/ir/SkSLVariableReference.h
index fecb04e2e5..7d90511590 100644
--- a/src/sksl/ir/SkSLVariableReference.h
+++ b/src/sksl/ir/SkSLVariableReference.h
@@ -9,6 +9,9 @@
#define SKSL_VARIABLEREFERENCE
#include "SkSLExpression.h"
+#include "SkSLFloatLiteral.h"
+#include "SkSLIRGenerator.h"
+#include "SkSLIntLiteral.h"
namespace SkSL {
diff --git a/src/utils/SkTextureCompressor_Utils.h b/src/utils/SkTextureCompressor_Utils.h
index 9b115a2964..6fb0d6b190 100644
--- a/src/utils/SkTextureCompressor_Utils.h
+++ b/src/utils/SkTextureCompressor_Utils.h
@@ -8,6 +8,8 @@
#ifndef SkTextureCompressorUtils_DEFINED
#define SkTextureCompressorUtils_DEFINED
+#include <cstdint>
+
namespace SkTextureCompressor {
// In some compression formats used for grayscale alpha, i.e. coverage masks, three
diff --git a/tests/PathOpsThreadedCommon.h b/tests/PathOpsThreadedCommon.h
index 6cc0c3f4ee..1462aa2251 100644
--- a/tests/PathOpsThreadedCommon.h
+++ b/tests/PathOpsThreadedCommon.h
@@ -7,8 +7,10 @@
#ifndef PathOpsThreadedCommon_DEFINED
#define PathOpsThreadedCommon_DEFINED
+#include "SkBitmap.h"
#include "SkGraphics.h"
#include "SkPath.h"
+#include "SkPathOps.h"
#include "SkString.h"
#include "SkTDArray.h"