blink: Cleanup core class forward declarations

Remove useless class forward declarations and add missing
ones in blink core sources.

BUG=none
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2463703003
Cr-Commit-Position: refs/heads/master@{#428780}
diff --git a/third_party/WebKit/Source/core/animation/CSSLengthInterpolationType.h b/third_party/WebKit/Source/core/animation/CSSLengthInterpolationType.h
index 3c65f9e..6e219910 100644
--- a/third_party/WebKit/Source/core/animation/CSSLengthInterpolationType.h
+++ b/third_party/WebKit/Source/core/animation/CSSLengthInterpolationType.h
@@ -12,7 +12,6 @@
 namespace blink {
 
 class ComputedStyle;
-class CSSToLengthConversionData;
 
 class CSSLengthInterpolationType : public CSSInterpolationType {
  public:
diff --git a/third_party/WebKit/Source/core/animation/DocumentAnimations.h b/third_party/WebKit/Source/core/animation/DocumentAnimations.h
index d689d0423..91cfedb 100644
--- a/third_party/WebKit/Source/core/animation/DocumentAnimations.h
+++ b/third_party/WebKit/Source/core/animation/DocumentAnimations.h
@@ -36,7 +36,6 @@
 namespace blink {
 
 class Document;
-class Node;
 
 class DocumentAnimations {
  public:
diff --git a/third_party/WebKit/Source/core/animation/KeyframeEffect.h b/third_party/WebKit/Source/core/animation/KeyframeEffect.h
index 3fb0aadc..e07e4d3 100644
--- a/third_party/WebKit/Source/core/animation/KeyframeEffect.h
+++ b/third_party/WebKit/Source/core/animation/KeyframeEffect.h
@@ -41,7 +41,6 @@
 class Element;
 class ExceptionState;
 class KeyframeEffectOptions;
-class PropertyHandle;
 
 // Represents the effect of an Animation on an Element's properties.
 // http://w3c.github.io/web-animations/#keyframe-effect
diff --git a/third_party/WebKit/Source/core/animation/ListInterpolationFunctions.h b/third_party/WebKit/Source/core/animation/ListInterpolationFunctions.h
index 0bafaaf..4ada695 100644
--- a/third_party/WebKit/Source/core/animation/ListInterpolationFunctions.h
+++ b/third_party/WebKit/Source/core/animation/ListInterpolationFunctions.h
@@ -12,7 +12,6 @@
 
 namespace blink {
 
-class CSSValueList;
 class UnderlyingValueOwner;
 class InterpolationType;
 
diff --git a/third_party/WebKit/Source/core/animation/PrimitiveInterpolation.h b/third_party/WebKit/Source/core/animation/PrimitiveInterpolation.h
index 8b11d40..75ff547d 100644
--- a/third_party/WebKit/Source/core/animation/PrimitiveInterpolation.h
+++ b/third_party/WebKit/Source/core/animation/PrimitiveInterpolation.h
@@ -15,8 +15,6 @@
 
 namespace blink {
 
-class StyleResolverState;
-
 // Represents an animation's effect between an adjacent pair of
 // PropertySpecificKeyframes after converting the keyframes to an internal
 // format with respect to the animation environment and underlying values.
diff --git a/third_party/WebKit/Source/core/animation/SampledEffect.h b/third_party/WebKit/Source/core/animation/SampledEffect.h
index c09ef4e..2552bef 100644
--- a/third_party/WebKit/Source/core/animation/SampledEffect.h
+++ b/third_party/WebKit/Source/core/animation/SampledEffect.h
@@ -13,8 +13,6 @@
 
 namespace blink {
 
-class SVGElement;
-
 // Associates the results of sampling an EffectModel with metadata used for
 // effect ordering and managing composited animations.
 class SampledEffect : public GarbageCollectedFinalized<SampledEffect> {
diff --git a/third_party/WebKit/Source/core/animation/TimingInput.h b/third_party/WebKit/Source/core/animation/TimingInput.h
index 99a91be..18542f5 100644
--- a/third_party/WebKit/Source/core/animation/TimingInput.h
+++ b/third_party/WebKit/Source/core/animation/TimingInput.h
@@ -11,7 +11,6 @@
 
 namespace blink {
 
-class Dictionary;
 class Document;
 class ExceptionState;
 class KeyframeEffectOptions;
diff --git a/third_party/WebKit/Source/core/clipboard/DataTransfer.h b/third_party/WebKit/Source/core/clipboard/DataTransfer.h
index aebebc8..09e282c 100644
--- a/third_party/WebKit/Source/core/clipboard/DataTransfer.h
+++ b/third_party/WebKit/Source/core/clipboard/DataTransfer.h
@@ -44,7 +44,6 @@
 class FrameSelection;
 class LocalFrame;
 class Node;
-class Range;
 
 // Used for drag and drop and copy/paste.
 // Drag and Drop:
diff --git a/third_party/WebKit/Source/core/css/BasicShapeFunctions.h b/third_party/WebKit/Source/core/css/BasicShapeFunctions.h
index 0f4506b..c52583bd 100644
--- a/third_party/WebKit/Source/core/css/BasicShapeFunctions.h
+++ b/third_party/WebKit/Source/core/css/BasicShapeFunctions.h
@@ -36,8 +36,6 @@
 
 namespace blink {
 
-class CSSBasicShapeValue;
-class CSSBasicShape;
 class CSSValue;
 class FloatPoint;
 class StyleResolverState;
diff --git a/third_party/WebKit/Source/core/css/CSSComputedStyleDeclaration.h b/third_party/WebKit/Source/core/css/CSSComputedStyleDeclaration.h
index 9d3947cb..9a67d5d 100644
--- a/third_party/WebKit/Source/core/css/CSSComputedStyleDeclaration.h
+++ b/third_party/WebKit/Source/core/css/CSSComputedStyleDeclaration.h
@@ -32,18 +32,11 @@
 
 namespace blink {
 
-class CSSPrimitiveValue;
-class CSSValueList;
 class CSSVariableData;
 class ExceptionState;
 class MutableStylePropertySet;
 class Node;
-class LayoutObject;
 class ComputedStyle;
-class ShadowData;
-class ShadowList;
-class StyleColor;
-class StylePropertyShorthand;
 
 class CORE_EXPORT CSSComputedStyleDeclaration final
     : public CSSStyleDeclaration {
diff --git a/third_party/WebKit/Source/core/css/CSSCursorImageValue.h b/third_party/WebKit/Source/core/css/CSSCursorImageValue.h
index 2af7418f..733b7fa 100644
--- a/third_party/WebKit/Source/core/css/CSSCursorImageValue.h
+++ b/third_party/WebKit/Source/core/css/CSSCursorImageValue.h
@@ -29,7 +29,6 @@
 namespace blink {
 
 class Element;
-class SVGElement;
 
 class CSSCursorImageValue : public CSSValue {
  public:
diff --git a/third_party/WebKit/Source/core/css/CSSFontSelectorClient.h b/third_party/WebKit/Source/core/css/CSSFontSelectorClient.h
index 4944c98..6b5ca56 100644
--- a/third_party/WebKit/Source/core/css/CSSFontSelectorClient.h
+++ b/third_party/WebKit/Source/core/css/CSSFontSelectorClient.h
@@ -37,7 +37,6 @@
 namespace blink {
 
 class CSSFontSelector;
-class Visitor;
 
 class CORE_EXPORT CSSFontSelectorClient : public GarbageCollectedMixin {
  public:
diff --git a/third_party/WebKit/Source/core/css/CSSSegmentedFontFace.h b/third_party/WebKit/Source/core/css/CSSSegmentedFontFace.h
index 6eb5858..6d759a0 100644
--- a/third_party/WebKit/Source/core/css/CSSSegmentedFontFace.h
+++ b/third_party/WebKit/Source/core/css/CSSSegmentedFontFace.h
@@ -38,7 +38,6 @@
 
 namespace blink {
 
-class CSSFontFace;
 class CSSFontSelector;
 class FontData;
 class FontDescription;
diff --git a/third_party/WebKit/Source/core/css/CSSStyleDeclaration.h b/third_party/WebKit/Source/core/css/CSSStyleDeclaration.h
index 4bc30a0..e86d46f 100644
--- a/third_party/WebKit/Source/core/css/CSSStyleDeclaration.h
+++ b/third_party/WebKit/Source/core/css/CSSStyleDeclaration.h
@@ -34,7 +34,6 @@
 class CSSStyleSheet;
 class CSSValue;
 class ExceptionState;
-class MutableStylePropertySet;
 
 class CORE_EXPORT CSSStyleDeclaration
     : public GarbageCollectedFinalized<CSSStyleDeclaration>,
diff --git a/third_party/WebKit/Source/core/css/FontFaceSet.h b/third_party/WebKit/Source/core/css/FontFaceSet.h
index 3923e880..d032e28 100644
--- a/third_party/WebKit/Source/core/css/FontFaceSet.h
+++ b/third_party/WebKit/Source/core/css/FontFaceSet.h
@@ -47,13 +47,10 @@
 namespace blink {
 
 class CSSFontFace;
-class CSSFontFaceSource;
 class CSSFontSelector;
-class Dictionary;
 class ExceptionState;
 class Font;
 class FontFaceCache;
-class FontResource;
 class ExecutionContext;
 
 using FontFaceSetIterable = PairIterable<Member<FontFace>, Member<FontFace>>;
diff --git a/third_party/WebKit/Source/core/css/RuleFeature.h b/third_party/WebKit/Source/core/css/RuleFeature.h
index 8afa230..2f4e20e 100644
--- a/third_party/WebKit/Source/core/css/RuleFeature.h
+++ b/third_party/WebKit/Source/core/css/RuleFeature.h
@@ -36,7 +36,6 @@
 struct InvalidationLists;
 class QualifiedName;
 class RuleData;
-class SpaceSplitString;
 class StyleRule;
 
 struct RuleFeature {
diff --git a/third_party/WebKit/Source/core/css/invalidation/StyleSheetInvalidationAnalysis.h b/third_party/WebKit/Source/core/css/invalidation/StyleSheetInvalidationAnalysis.h
index 086987e..ba46474 100644
--- a/third_party/WebKit/Source/core/css/invalidation/StyleSheetInvalidationAnalysis.h
+++ b/third_party/WebKit/Source/core/css/invalidation/StyleSheetInvalidationAnalysis.h
@@ -33,8 +33,6 @@
 
 namespace blink {
 
-class Document;
-class Node;
 class StyleSheetContents;
 class TreeScope;
 
diff --git a/third_party/WebKit/Source/core/css/parser/CSSParser.h b/third_party/WebKit/Source/core/css/parser/CSSParser.h
index 101df433..5d337160 100644
--- a/third_party/WebKit/Source/core/css/parser/CSSParser.h
+++ b/third_party/WebKit/Source/core/css/parser/CSSParser.h
@@ -20,7 +20,6 @@
 class Element;
 class ImmutableStylePropertySet;
 class MutableStylePropertySet;
-class StyleColor;
 class StyleRuleBase;
 class StyleRuleKeyframe;
 class StyleSheetContents;
diff --git a/third_party/WebKit/Source/core/css/parser/CSSParserObserver.h b/third_party/WebKit/Source/core/css/parser/CSSParserObserver.h
index 0c32b9a..627545b 100644
--- a/third_party/WebKit/Source/core/css/parser/CSSParserObserver.h
+++ b/third_party/WebKit/Source/core/css/parser/CSSParserObserver.h
@@ -31,7 +31,6 @@
 namespace blink {
 
 class CSSParserToken;
-class CSSParserTokenRange;
 
 // This is only for the inspector and shouldn't be used elsewhere.
 class CSSParserObserver {
diff --git a/third_party/WebKit/Source/core/css/parser/CSSParserObserverWrapper.h b/third_party/WebKit/Source/core/css/parser/CSSParserObserverWrapper.h
index 4f86f54..fae709e7 100644
--- a/third_party/WebKit/Source/core/css/parser/CSSParserObserverWrapper.h
+++ b/third_party/WebKit/Source/core/css/parser/CSSParserObserverWrapper.h
@@ -10,6 +10,9 @@
 
 namespace blink {
 
+class CSSParserToken;
+class CSSParserTokenRange;
+
 class CSSParserObserverWrapper {
   STACK_ALLOCATED();
 
diff --git a/third_party/WebKit/Source/core/css/resolver/ScopedStyleResolver.h b/third_party/WebKit/Source/core/css/resolver/ScopedStyleResolver.h
index 0a499bb..3cac30d 100644
--- a/third_party/WebKit/Source/core/css/resolver/ScopedStyleResolver.h
+++ b/third_party/WebKit/Source/core/css/resolver/ScopedStyleResolver.h
@@ -40,7 +40,6 @@
 
 class PageRuleCollector;
 class StyleSheetContents;
-class ViewportStyleResolver;
 
 // This class selects a ComputedStyle for a given element based on a collection
 // of stylesheets.
diff --git a/third_party/WebKit/Source/core/css/resolver/StyleResolver.h b/third_party/WebKit/Source/core/css/resolver/StyleResolver.h
index d689639b..dd51d9f1 100644
--- a/third_party/WebKit/Source/core/css/resolver/StyleResolver.h
+++ b/third_party/WebKit/Source/core/css/resolver/StyleResolver.h
@@ -49,13 +49,11 @@
 class CSSRuleList;
 class CSSStyleSheet;
 class CSSValue;
-class ContainerNode;
 class Document;
 class Element;
 class Interpolation;
 class MatchResult;
 class MediaQueryEvaluator;
-class ScopedStyleResolver;
 class StylePropertySet;
 class StyleRule;
 
diff --git a/third_party/WebKit/Source/core/dom/AXObjectCache.h b/third_party/WebKit/Source/core/dom/AXObjectCache.h
index 6649a31..712aa0c 100644
--- a/third_party/WebKit/Source/core/dom/AXObjectCache.h
+++ b/third_party/WebKit/Source/core/dom/AXObjectCache.h
@@ -43,7 +43,6 @@
 class HTMLSelectElement;
 class LayoutMenuList;
 class LineLayoutItem;
-class Page;
 
 class CORE_EXPORT AXObjectCache
     : public GarbageCollectedFinalized<AXObjectCache> {
diff --git a/third_party/WebKit/Source/core/dom/CompositorProxyClient.h b/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
index 2574d58..95c056a 100644
--- a/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
+++ b/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
@@ -14,8 +14,6 @@
 namespace blink {
 
 class CompositorProxy;
-class Event;
-class ScriptState;
 class WorkerClients;
 class WorkerGlobalScope;
 
diff --git a/third_party/WebKit/Source/core/dom/ContainerNode.h b/third_party/WebKit/Source/core/dom/ContainerNode.h
index ea945df..385aa49 100644
--- a/third_party/WebKit/Source/core/dom/ContainerNode.h
+++ b/third_party/WebKit/Source/core/dom/ContainerNode.h
@@ -38,7 +38,9 @@
 class ExceptionState;
 class FloatPoint;
 class HTMLCollection;
+class NameNodeList;
 using StaticElementList = StaticNodeTypeList<Element>;
+class RadioNodeList;
 class TagCollection;
 
 enum DynamicRestyleFlags {
diff --git a/third_party/WebKit/Source/core/dom/DOMImplementation.h b/third_party/WebKit/Source/core/dom/DOMImplementation.h
index df20e9e..b807ad2c 100644
--- a/third_party/WebKit/Source/core/dom/DOMImplementation.h
+++ b/third_party/WebKit/Source/core/dom/DOMImplementation.h
@@ -33,9 +33,7 @@
 class DocumentInit;
 class DocumentType;
 class ExceptionState;
-class LocalFrame;
 class HTMLDocument;
-class KURL;
 class XMLDocument;
 
 class CORE_EXPORT DOMImplementation final
diff --git a/third_party/WebKit/Source/core/dom/DOMURL.h b/third_party/WebKit/Source/core/dom/DOMURL.h
index 8ea54ea..1dccfa4 100644
--- a/third_party/WebKit/Source/core/dom/DOMURL.h
+++ b/third_party/WebKit/Source/core/dom/DOMURL.h
@@ -36,7 +36,6 @@
 
 namespace blink {
 
-class Blob;
 class ExceptionState;
 class ExecutionContext;
 class URLRegistrable;
diff --git a/third_party/WebKit/Source/core/dom/DocumentParserTiming.h b/third_party/WebKit/Source/core/dom/DocumentParserTiming.h
index 7cafb0c..abe50c9 100644
--- a/third_party/WebKit/Source/core/dom/DocumentParserTiming.h
+++ b/third_party/WebKit/Source/core/dom/DocumentParserTiming.h
@@ -12,8 +12,6 @@
 
 namespace blink {
 
-class LocalFrame;
-
 // DocumentParserTiming is responsible for tracking parser-related timings for a
 // given document.
 class DocumentParserTiming final
diff --git a/third_party/WebKit/Source/core/dom/Element.h b/third_party/WebKit/Source/core/dom/Element.h
index fdb1718c8..ae22bda 100644
--- a/third_party/WebKit/Source/core/dom/Element.h
+++ b/third_party/WebKit/Source/core/dom/Element.h
@@ -53,17 +53,15 @@
 class CustomElementDefinition;
 class DOMStringMap;
 class DOMTokenList;
-class Dictionary;
 class ElementRareData;
 class ElementShadow;
 class ExceptionState;
 class Image;
 class InputDeviceCapabilities;
-class IntSize;
 class Locale;
 class MutableStylePropertySet;
+class NamedNodeMap;
 class NodeIntersectionObserverData;
-class PropertySetCSSStyleDeclaration;
 class PseudoElement;
 class ResizeObservation;
 class ResizeObserver;
diff --git a/third_party/WebKit/Source/core/dom/ElementRareData.h b/third_party/WebKit/Source/core/dom/ElementRareData.h
index 5a2fd0b6..223da50f 100644
--- a/third_party/WebKit/Source/core/dom/ElementRareData.h
+++ b/third_party/WebKit/Source/core/dom/ElementRareData.h
@@ -45,7 +45,6 @@
 
 namespace blink {
 
-class HTMLElement;
 class CompositorProxiedPropertySet;
 class ResizeObservation;
 class ResizeObserver;
diff --git a/third_party/WebKit/Source/core/dom/ExecutionContext.h b/third_party/WebKit/Source/core/dom/ExecutionContext.h
index 569a576..5ecb70c 100644
--- a/third_party/WebKit/Source/core/dom/ExecutionContext.h
+++ b/third_party/WebKit/Source/core/dom/ExecutionContext.h
@@ -55,7 +55,6 @@
 class LocalDOMWindow;
 class PublicURLManager;
 class SecurityOrigin;
-class SourceLocation;
 
 class CORE_EXPORT ExecutionContext : public ContextLifecycleNotifier,
                                      public Supplementable<ExecutionContext> {
diff --git a/third_party/WebKit/Source/core/dom/IdleRequestCallback.h b/third_party/WebKit/Source/core/dom/IdleRequestCallback.h
index 8867846..7f74d0a4 100644
--- a/third_party/WebKit/Source/core/dom/IdleRequestCallback.h
+++ b/third_party/WebKit/Source/core/dom/IdleRequestCallback.h
@@ -11,8 +11,6 @@
 
 namespace blink {
 
-class IdleCallbackDeadline;
-
 class IdleRequestCallback
     : public GarbageCollectedFinalized<IdleRequestCallback> {
  public:
diff --git a/third_party/WebKit/Source/core/dom/MessagePort.h b/third_party/WebKit/Source/core/dom/MessagePort.h
index f3cb2658..9a3e38a 100644
--- a/third_party/WebKit/Source/core/dom/MessagePort.h
+++ b/third_party/WebKit/Source/core/dom/MessagePort.h
@@ -45,7 +45,6 @@
 class ExceptionState;
 class ExecutionContext;
 class MessagePort;
-class ScriptState;
 class SerializedScriptValue;
 
 // Not to be confused with WebMessagePortChannelArray; this one uses Vector and
diff --git a/third_party/WebKit/Source/core/dom/Node.h b/third_party/WebKit/Source/core/dom/Node.h
index dd94897..1456936 100644
--- a/third_party/WebKit/Source/core/dom/Node.h
+++ b/third_party/WebKit/Source/core/dom/Node.h
@@ -46,38 +46,23 @@
 namespace blink {
 
 class Attribute;
-class ClassCollection;
 class ContainerNode;
-class DOMTokenList;
 class Document;
 class Element;
 class ElementShadow;
 class Event;
-class EventDispatchMediator;
 class EventListener;
 class ExceptionState;
-class FloatPoint;
 class GetRootNodeOptions;
-class LocalFrame;
-class HTMLInputElement;
 class HTMLQualifiedName;
 class HTMLSlotElement;
 class IntRect;
 class EventDispatchHandlingState;
-class KeyboardEvent;
-class NSResolver;
-class NameNodeList;
-class NamedNodeMap;
-class NodeEventContext;
 class NodeList;
 class NodeListsNodeData;
 class NodeRareData;
-class PlatformGestureEvent;
 class PlatformMouseEvent;
-class PlatformWheelEvent;
-class PointerEvent;
 class QualifiedName;
-class RadioNodeList;
 class RegisteredEventListener;
 class LayoutBox;
 class LayoutBoxModelObject;
@@ -89,7 +74,6 @@
 class StaticNodeTypeList;
 using StaticNodeList = StaticNodeTypeList<Node>;
 class StyleChangeReasonForTracing;
-class TagCollection;
 class Text;
 class TouchEvent;
 
diff --git a/third_party/WebKit/Source/core/dom/ScriptRunner.h b/third_party/WebKit/Source/core/dom/ScriptRunner.h
index 2ef7f2e8..9f6b004f0 100644
--- a/third_party/WebKit/Source/core/dom/ScriptRunner.h
+++ b/third_party/WebKit/Source/core/dom/ScriptRunner.h
@@ -35,7 +35,6 @@
 
 namespace blink {
 
-class CancellableTaskFactory;
 class Document;
 class ScriptLoader;
 class WebTaskRunner;
diff --git a/third_party/WebKit/Source/core/dom/SecurityContext.h b/third_party/WebKit/Source/core/dom/SecurityContext.h
index 449019a1..072cbc6 100644
--- a/third_party/WebKit/Source/core/dom/SecurityContext.h
+++ b/third_party/WebKit/Source/core/dom/SecurityContext.h
@@ -45,7 +45,6 @@
 
 class SecurityOrigin;
 class ContentSecurityPolicy;
-class KURL;
 
 class CORE_EXPORT SecurityContext : public GarbageCollectedMixin {
   WTF_MAKE_NONCOPYABLE(SecurityContext);
diff --git a/third_party/WebKit/Source/core/dom/StaticNodeList.h b/third_party/WebKit/Source/core/dom/StaticNodeList.h
index fb5b441..9f6079e 100644
--- a/third_party/WebKit/Source/core/dom/StaticNodeList.h
+++ b/third_party/WebKit/Source/core/dom/StaticNodeList.h
@@ -34,7 +34,6 @@
 
 namespace blink {
 
-class Element;
 class Node;
 
 template <typename NodeType>
diff --git a/third_party/WebKit/Source/core/dom/custom/CustomElementDefinitionBuilder.h b/third_party/WebKit/Source/core/dom/custom/CustomElementDefinitionBuilder.h
index 609c63f..fe7df45 100644
--- a/third_party/WebKit/Source/core/dom/custom/CustomElementDefinitionBuilder.h
+++ b/third_party/WebKit/Source/core/dom/custom/CustomElementDefinitionBuilder.h
@@ -14,9 +14,6 @@
 class CustomElementDefinition;
 class CustomElementDescriptor;
 class CustomElementRegistry;
-class ExceptionState;
-class ScriptState;
-class ScriptValue;
 
 // Implement CustomElementDefinitionBuilder to provide
 // technology-specific steps for CustomElementRegistry.define.
diff --git a/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.h b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.h
index 5ff4811..72514eb 100644
--- a/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.h
+++ b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.h
@@ -37,7 +37,6 @@
 namespace blink {
 
 class ContainerNode;
-class HTMLSlotElement;
 class Node;
 
 // Flat tree version of |NodeTraversal|.
diff --git a/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h b/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h
index d766781..9e60eb7 100644
--- a/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h
+++ b/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h
@@ -41,7 +41,6 @@
 class ElementShadow;
 class ExceptionState;
 class HTMLShadowElement;
-class HTMLSlotElement;
 class InsertionPoint;
 class ShadowRootRareDataV0;
 class SlotAssignment;
diff --git a/third_party/WebKit/Source/core/editing/CaretBase.h b/third_party/WebKit/Source/core/editing/CaretBase.h
index 29a3df0..15cbba2 100644
--- a/third_party/WebKit/Source/core/editing/CaretBase.h
+++ b/third_party/WebKit/Source/core/editing/CaretBase.h
@@ -36,12 +36,9 @@
 
 namespace blink {
 
-class CullRect;
 class DisplayItemClient;
-class LocalFrame;
 class GraphicsContext;
 class LayoutBlock;
-class LayoutViewItem;
 
 class CORE_EXPORT CaretBase : public GarbageCollectedFinalized<CaretBase>,
                               public DisplayItemClient {
diff --git a/third_party/WebKit/Source/core/editing/EditingStrategy.h b/third_party/WebKit/Source/core/editing/EditingStrategy.h
index d7b2c43..7fa2f02 100644
--- a/third_party/WebKit/Source/core/editing/EditingStrategy.h
+++ b/third_party/WebKit/Source/core/editing/EditingStrategy.h
@@ -12,12 +12,6 @@
 
 namespace blink {
 
-template <typename Strategy>
-class PositionTemplate;
-
-template <typename Strategy>
-class PositionIteratorAlgorithm;
-
 // Editing algorithm defined on node traversal.
 template <typename Traversal>
 class CORE_TEMPLATE_CLASS_EXPORT EditingAlgorithm : public Traversal {
diff --git a/third_party/WebKit/Source/core/editing/EditingUtilities.h b/third_party/WebKit/Source/core/editing/EditingUtilities.h
index aa58fe1..0b334ec5 100644
--- a/third_party/WebKit/Source/core/editing/EditingUtilities.h
+++ b/third_party/WebKit/Source/core/editing/EditingUtilities.h
@@ -60,11 +60,8 @@
 
 class Document;
 class Element;
-class HTMLBRElement;
 class HTMLElement;
-class HTMLLIElement;
 class HTMLSpanElement;
-class HTMLUListElement;
 class Node;
 class Range;
 
diff --git a/third_party/WebKit/Source/core/editing/Editor.h b/third_party/WebKit/Source/core/editing/Editor.h
index 27e6d9f..ac286f1c 100644
--- a/third_party/WebKit/Source/core/editing/Editor.h
+++ b/third_party/WebKit/Source/core/editing/Editor.h
@@ -45,7 +45,6 @@
 
 class CompositeEditCommand;
 class DragData;
-class DummyPageHolder;
 class EditCommandComposition;
 class EditorClient;
 class EditorInternalCommand;
diff --git a/third_party/WebKit/Source/core/editing/FrameSelection.h b/third_party/WebKit/Source/core/editing/FrameSelection.h
index 1e2a5a36..694e1ad1 100644
--- a/third_party/WebKit/Source/core/editing/FrameSelection.h
+++ b/third_party/WebKit/Source/core/editing/FrameSelection.h
@@ -44,9 +44,7 @@
 
 namespace blink {
 
-class CaretBase;
 class CharacterData;
-class CullRect;
 class LayoutBlock;
 class LocalFrame;
 class FrameCaret;
diff --git a/third_party/WebKit/Source/core/editing/PendingSelection.h b/third_party/WebKit/Source/core/editing/PendingSelection.h
index ddaa4fba..aec09a8 100644
--- a/third_party/WebKit/Source/core/editing/PendingSelection.h
+++ b/third_party/WebKit/Source/core/editing/PendingSelection.h
@@ -28,7 +28,6 @@
 
 namespace blink {
 
-class Document;
 class FrameSelection;
 class LayoutView;
 
diff --git a/third_party/WebKit/Source/core/editing/Position.h b/third_party/WebKit/Source/core/editing/Position.h
index 18176c1..0117c6d 100644
--- a/third_party/WebKit/Source/core/editing/Position.h
+++ b/third_party/WebKit/Source/core/editing/Position.h
@@ -38,9 +38,7 @@
 
 namespace blink {
 
-class Element;
 class Node;
-class LayoutObject;
 class Text;
 enum class TextAffinity;
 class TreeScope;
diff --git a/third_party/WebKit/Source/core/editing/VisibleSelection.h b/third_party/WebKit/Source/core/editing/VisibleSelection.h
index 16b18f0..0454b750 100644
--- a/third_party/WebKit/Source/core/editing/VisibleSelection.h
+++ b/third_party/WebKit/Source/core/editing/VisibleSelection.h
@@ -39,7 +39,6 @@
 
 namespace blink {
 
-class LayoutPoint;
 class SelectionAdjuster;
 
 const TextAffinity SelDefaultAffinity = TextAffinity::Downstream;
diff --git a/third_party/WebKit/Source/core/editing/iterators/BitStack.h b/third_party/WebKit/Source/core/editing/iterators/BitStack.h
index 4f31e58..23446b9 100644
--- a/third_party/WebKit/Source/core/editing/iterators/BitStack.h
+++ b/third_party/WebKit/Source/core/editing/iterators/BitStack.h
@@ -32,8 +32,6 @@
 
 namespace blink {
 
-class Node;
-
 class CORE_EXPORT BitStack {
   STACK_ALLOCATED();
 
diff --git a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h
index e59e1bb..d0b1c20a 100644
--- a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h
+++ b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h
@@ -35,7 +35,6 @@
 namespace blink {
 
 class LayoutText;
-class LayoutTextFragment;
 
 // Iterates through the DOM range, returning all the text, and 0-length
 // boundaries at points where replaced elements break up the text flow. The text
diff --git a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h
index 80a62a28..758f7c9 100644
--- a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h
+++ b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h
@@ -39,8 +39,6 @@
 
 namespace blink {
 
-class LayoutPoint;
-class LayoutRect;
 class Node;
 class Range;
 class RenderedDocumentMarker;
diff --git a/third_party/WebKit/Source/core/editing/serializers/MarkupAccumulator.h b/third_party/WebKit/Source/core/editing/serializers/MarkupAccumulator.h
index 1a6247e..313b4ad 100644
--- a/third_party/WebKit/Source/core/editing/serializers/MarkupAccumulator.h
+++ b/third_party/WebKit/Source/core/editing/serializers/MarkupAccumulator.h
@@ -37,7 +37,6 @@
 namespace blink {
 
 class Attribute;
-class DocumentType;
 class Element;
 class Node;
 
diff --git a/third_party/WebKit/Source/core/events/Event.h b/third_party/WebKit/Source/core/events/Event.h
index 0cc0ccb..bfe0b65f 100644
--- a/third_party/WebKit/Source/core/events/Event.h
+++ b/third_party/WebKit/Source/core/events/Event.h
@@ -37,6 +37,7 @@
 namespace blink {
 
 class DOMWrapperWorld;
+class EventDispatchMediator;
 class EventTarget;
 class ExecutionContext;
 
diff --git a/third_party/WebKit/Source/core/events/EventDispatcher.h b/third_party/WebKit/Source/core/events/EventDispatcher.h
index 288a912..d61d7cb 100644
--- a/third_party/WebKit/Source/core/events/EventDispatcher.h
+++ b/third_party/WebKit/Source/core/events/EventDispatcher.h
@@ -41,8 +41,6 @@
 class FrameView;
 class EventDispatchHandlingState;
 class Node;
-class NodeEventContext;
-class WindowEventContext;
 
 class EventDispatchHandlingState
     : public GarbageCollected<EventDispatchHandlingState> {
diff --git a/third_party/WebKit/Source/core/events/KeyboardEvent.h b/third_party/WebKit/Source/core/events/KeyboardEvent.h
index 26a5e34..dcf3b7ce8 100644
--- a/third_party/WebKit/Source/core/events/KeyboardEvent.h
+++ b/third_party/WebKit/Source/core/events/KeyboardEvent.h
@@ -33,8 +33,6 @@
 
 namespace blink {
 
-class EventDispatcher;
-
 class CORE_EXPORT KeyboardEvent final : public UIEventWithKeyState {
   DEFINE_WRAPPERTYPEINFO();
 
diff --git a/third_party/WebKit/Source/core/fetch/ImageResource.h b/third_party/WebKit/Source/core/fetch/ImageResource.h
index a44ca31..da11324 100644
--- a/third_party/WebKit/Source/core/fetch/ImageResource.h
+++ b/third_party/WebKit/Source/core/fetch/ImageResource.h
@@ -37,7 +37,6 @@
 namespace blink {
 
 class FetchRequest;
-class FloatSize;
 class ImageResourceObserver;
 class MemoryCache;
 class ResourceClient;
diff --git a/third_party/WebKit/Source/core/fetch/ResourceFetcher.h b/third_party/WebKit/Source/core/fetch/ResourceFetcher.h
index bdaca57..cc59c87 100644
--- a/third_party/WebKit/Source/core/fetch/ResourceFetcher.h
+++ b/third_party/WebKit/Source/core/fetch/ResourceFetcher.h
@@ -47,14 +47,9 @@
 namespace blink {
 
 class ArchiveResource;
-class CSSStyleSheetResource;
 class DocumentResource;
-class FontResource;
 class ImageResource;
 class MHTMLArchive;
-class RawResource;
-class ScriptResource;
-class XSLStyleSheetResource;
 class KURL;
 class ResourceTimingInfo;
 
diff --git a/third_party/WebKit/Source/core/frame/DOMWindow.h b/third_party/WebKit/Source/core/frame/DOMWindow.h
index 51ce23a..128b40a 100644
--- a/third_party/WebKit/Source/core/frame/DOMWindow.h
+++ b/third_party/WebKit/Source/core/frame/DOMWindow.h
@@ -23,7 +23,6 @@
 class CustomElementRegistry;
 class DOMSelection;
 class DOMVisualViewport;
-class DOMWindowCSS;
 class Document;
 class Element;
 class External;
@@ -41,7 +40,6 @@
 class ScriptState;
 class ScrollToOptions;
 class SerializedScriptValue;
-class Storage;
 class StyleMedia;
 
 class CORE_EXPORT DOMWindow : public EventTargetWithInlineData,
diff --git a/third_party/WebKit/Source/core/frame/DOMWindowProperty.h b/third_party/WebKit/Source/core/frame/DOMWindowProperty.h
index 5a01f86a..06257b3 100644
--- a/third_party/WebKit/Source/core/frame/DOMWindowProperty.h
+++ b/third_party/WebKit/Source/core/frame/DOMWindowProperty.h
@@ -31,7 +31,6 @@
 
 namespace blink {
 
-class LocalDOMWindow;
 class LocalFrame;
 
 class CORE_EXPORT DOMWindowProperty : public GarbageCollectedMixin {
diff --git a/third_party/WebKit/Source/core/frame/FrameClient.h b/third_party/WebKit/Source/core/frame/FrameClient.h
index fb7fcbf..4af7581 100644
--- a/third_party/WebKit/Source/core/frame/FrameClient.h
+++ b/third_party/WebKit/Source/core/frame/FrameClient.h
@@ -12,9 +12,6 @@
 namespace blink {
 
 class Frame;
-class LocalFrame;
-class MessageEvent;
-class SecurityOrigin;
 enum class FrameDetachType;
 
 class CORE_EXPORT FrameClient : public GarbageCollectedFinalized<FrameClient> {
diff --git a/third_party/WebKit/Source/core/frame/FrameHost.h b/third_party/WebKit/Source/core/frame/FrameHost.h
index 745134b..d9c65a00 100644
--- a/third_party/WebKit/Source/core/frame/FrameHost.h
+++ b/third_party/WebKit/Source/core/frame/FrameHost.h
@@ -52,7 +52,6 @@
 class Settings;
 class TopDocumentRootScrollerController;
 class UseCounter;
-class Visitor;
 class VisualViewport;
 
 // FrameHost is the set of global data shared between multiple frames
diff --git a/third_party/WebKit/Source/core/frame/FrameSerializer.h b/third_party/WebKit/Source/core/frame/FrameSerializer.h
index e2e6885..6ad615b 100644
--- a/third_party/WebKit/Source/core/frame/FrameSerializer.h
+++ b/third_party/WebKit/Source/core/frame/FrameSerializer.h
@@ -50,8 +50,6 @@
 class FontResource;
 class ImageResource;
 class LocalFrame;
-class Node;
-class LayoutObject;
 class Resource;
 class SharedBuffer;
 class StylePropertySet;
diff --git a/third_party/WebKit/Source/core/frame/FrameView.h b/third_party/WebKit/Source/core/frame/FrameView.h
index 60384e6..b07546a 100644
--- a/third_party/WebKit/Source/core/frame/FrameView.h
+++ b/third_party/WebKit/Source/core/frame/FrameView.h
@@ -64,7 +64,6 @@
 class Cursor;
 class Element;
 class FloatSize;
-class HTMLFrameOwnerElement;
 class JSONArray;
 class JSONObject;
 class LayoutItem;
diff --git a/third_party/WebKit/Source/core/frame/LocalDOMWindow.h b/third_party/WebKit/Source/core/frame/LocalDOMWindow.h
index e1617c31..c9abc022 100644
--- a/third_party/WebKit/Source/core/frame/LocalDOMWindow.h
+++ b/third_party/WebKit/Source/core/frame/LocalDOMWindow.h
@@ -45,9 +45,7 @@
 class DocumentInit;
 class EventListener;
 class EventQueue;
-class ExceptionState;
 class FrameConsole;
-class IntRect;
 class MessageEvent;
 class Page;
 class PostMessageTimer;
diff --git a/third_party/WebKit/Source/core/frame/LocalFrame.h b/third_party/WebKit/Source/core/frame/LocalFrame.h
index 7c8ff2c..34d1eac 100644
--- a/third_party/WebKit/Source/core/frame/LocalFrame.h
+++ b/third_party/WebKit/Source/core/frame/LocalFrame.h
@@ -58,14 +58,12 @@
 class FrameConsole;
 class FrameSelection;
 class FrameView;
-class HTMLPlugInElement;
 class InputMethodController;
 class InterfaceProvider;
 class InterfaceRegistry;
 class IntPoint;
 class IntSize;
 class InstrumentingAgents;
-class JSONObject;
 class LayoutView;
 class LayoutViewItem;
 class LocalDOMWindow;
@@ -78,7 +76,6 @@
 class Range;
 class ScriptController;
 class SpellChecker;
-class WebFrameHostScheduler;
 class WebFrameScheduler;
 
 extern template class CORE_EXTERN_TEMPLATE_EXPORT Supplement<LocalFrame>;
diff --git a/third_party/WebKit/Source/core/frame/RemoteFrameClient.h b/third_party/WebKit/Source/core/frame/RemoteFrameClient.h
index b65807c..d1badcc 100644
--- a/third_party/WebKit/Source/core/frame/RemoteFrameClient.h
+++ b/third_party/WebKit/Source/core/frame/RemoteFrameClient.h
@@ -14,7 +14,10 @@
 
 class Event;
 class IntRect;
+class LocalFrame;
+class MessageEvent;
 class ResourceRequest;
+class SecurityOrigin;
 
 class RemoteFrameClient : public FrameClient {
  public:
diff --git a/third_party/WebKit/Source/core/frame/UseCounter.h b/third_party/WebKit/Source/core/frame/UseCounter.h
index 4baee85..fde935e 100644
--- a/third_party/WebKit/Source/core/frame/UseCounter.h
+++ b/third_party/WebKit/Source/core/frame/UseCounter.h
@@ -41,7 +41,6 @@
 class EnumerationHistogram;
 class ExecutionContext;
 class Frame;
-class LocalFrame;
 class StyleSheetContents;
 
 // UseCounter is used for counting the number of times features of
diff --git a/third_party/WebKit/Source/core/html/HTMLAreaElement.h b/third_party/WebKit/Source/core/html/HTMLAreaElement.h
index 41ced899..7baddad 100644
--- a/third_party/WebKit/Source/core/html/HTMLAreaElement.h
+++ b/third_party/WebKit/Source/core/html/HTMLAreaElement.h
@@ -30,7 +30,6 @@
 
 namespace blink {
 
-class HitTestResult;
 class HTMLImageElement;
 class Path;
 
diff --git a/third_party/WebKit/Source/core/html/HTMLCanvasElement.h b/third_party/WebKit/Source/core/html/HTMLCanvasElement.h
index f3a71240..73ab97f 100644
--- a/third_party/WebKit/Source/core/html/HTMLCanvasElement.h
+++ b/third_party/WebKit/Source/core/html/HTMLCanvasElement.h
@@ -51,8 +51,6 @@
 
 #define CanvasDefaultInterpolationQuality InterpolationLow
 
-class SkColorSpace;
-
 namespace blink {
 
 class AffineTransform;
@@ -68,7 +66,6 @@
 class ImageBufferSurface;
 class ImageData;
 class IntSize;
-class WebGraphicsContext3DProvider;
 
 class
     CanvasRenderingContext2DOrWebGLRenderingContextOrWebGL2RenderingContextOrImageBitmapRenderingContext;
diff --git a/third_party/WebKit/Source/core/html/HTMLElement.h b/third_party/WebKit/Source/core/html/HTMLElement.h
index 43db3f859..d2563d8 100644
--- a/third_party/WebKit/Source/core/html/HTMLElement.h
+++ b/third_party/WebKit/Source/core/html/HTMLElement.h
@@ -32,6 +32,7 @@
 class HTMLFormElement;
 class HTMLMenuElement;
 class ExceptionState;
+class KeyboardEvent;
 
 enum TranslateAttributeMode {
   TranslateAttributeYes,
diff --git a/third_party/WebKit/Source/core/html/HTMLFrameOwnerElement.h b/third_party/WebKit/Source/core/html/HTMLFrameOwnerElement.h
index 3316716..b61ffb2 100644
--- a/third_party/WebKit/Source/core/html/HTMLFrameOwnerElement.h
+++ b/third_party/WebKit/Source/core/html/HTMLFrameOwnerElement.h
@@ -32,7 +32,6 @@
 
 namespace blink {
 
-class LocalDOMWindow;
 class ExceptionState;
 class Frame;
 class LayoutPart;
diff --git a/third_party/WebKit/Source/core/html/HTMLMapElement.h b/third_party/WebKit/Source/core/html/HTMLMapElement.h
index 4593ef45..b1a8972 100644
--- a/third_party/WebKit/Source/core/html/HTMLMapElement.h
+++ b/third_party/WebKit/Source/core/html/HTMLMapElement.h
@@ -28,7 +28,6 @@
 
 namespace blink {
 
-class HitTestResult;
 class HTMLImageElement;
 
 class CORE_EXPORT HTMLMapElement final : public HTMLElement {
diff --git a/third_party/WebKit/Source/core/html/HTMLVideoElement.h b/third_party/WebKit/Source/core/html/HTMLVideoElement.h
index e8575f0..1f91b29 100644
--- a/third_party/WebKit/Source/core/html/HTMLVideoElement.h
+++ b/third_party/WebKit/Source/core/html/HTMLVideoElement.h
@@ -43,7 +43,6 @@
 
 namespace blink {
 class ExceptionState;
-class GraphicsContext;
 class ImageBitmapOptions;
 
 class CORE_EXPORT HTMLVideoElement final : public HTMLMediaElement,
diff --git a/third_party/WebKit/Source/core/html/forms/TextFieldInputType.h b/third_party/WebKit/Source/core/html/forms/TextFieldInputType.h
index fe0c91f..f3d41aae 100644
--- a/third_party/WebKit/Source/core/html/forms/TextFieldInputType.h
+++ b/third_party/WebKit/Source/core/html/forms/TextFieldInputType.h
@@ -37,8 +37,6 @@
 
 namespace blink {
 
-class FormDataList;
-
 // The class represents types of which UI contain text fields.
 // It supports not only the types for BaseTextInputType but also type=number.
 class TextFieldInputType : public InputType,
diff --git a/third_party/WebKit/Source/core/html/parser/HTMLScriptRunnerHost.h b/third_party/WebKit/Source/core/html/parser/HTMLScriptRunnerHost.h
index 590dadea..34599a3 100644
--- a/third_party/WebKit/Source/core/html/parser/HTMLScriptRunnerHost.h
+++ b/third_party/WebKit/Source/core/html/parser/HTMLScriptRunnerHost.h
@@ -33,7 +33,6 @@
 
 class HTMLInputStream;
 class Resource;
-class Visitor;
 
 class CORE_EXPORT HTMLScriptRunnerHost : public GarbageCollectedMixin {
  public:
diff --git a/third_party/WebKit/Source/core/html/shadow/MediaControls.h b/third_party/WebKit/Source/core/html/shadow/MediaControls.h
index 6076276d..b953862 100644
--- a/third_party/WebKit/Source/core/html/shadow/MediaControls.h
+++ b/third_party/WebKit/Source/core/html/shadow/MediaControls.h
@@ -33,7 +33,6 @@
 namespace blink {
 
 class Event;
-class TextTrackContainer;
 class MediaControlsWindowEventListener;
 
 class CORE_EXPORT MediaControls final : public HTMLDivElement {
diff --git a/third_party/WebKit/Source/core/html/shadow/MediaControlsWindowEventListener.h b/third_party/WebKit/Source/core/html/shadow/MediaControlsWindowEventListener.h
index 22a60c8..7e76a5a4 100644
--- a/third_party/WebKit/Source/core/html/shadow/MediaControlsWindowEventListener.h
+++ b/third_party/WebKit/Source/core/html/shadow/MediaControlsWindowEventListener.h
@@ -11,7 +11,6 @@
 namespace blink {
 
 class MediaControls;
-class LocalDOMWindow;
 
 class MediaControlsWindowEventListener final : public EventListener {
  public:
diff --git a/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.h b/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.h
index f5dc6920..26a7049d 100644
--- a/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.h
+++ b/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.h
@@ -53,7 +53,6 @@
 class ExecutionContext;
 class ImageBitmapSource;
 class ImageBitmapOptions;
-class ImageDecoder;
 class WebTaskRunner;
 
 typedef HTMLImageElementOrHTMLVideoElementOrHTMLCanvasElementOrBlobOrImageDataOrImageBitmap
diff --git a/third_party/WebKit/Source/core/input/EventHandler.h b/third_party/WebKit/Source/core/input/EventHandler.h
index fa3e4f5..b6bded3 100644
--- a/third_party/WebKit/Source/core/input/EventHandler.h
+++ b/third_party/WebKit/Source/core/input/EventHandler.h
@@ -55,13 +55,11 @@
 
 class DataTransfer;
 class PaintLayer;
-class Document;
 class Element;
 class Event;
 class EventTarget;
 template <typename EventType>
 class EventWithHitTestResults;
-class FloatPoint;
 class FloatQuad;
 class FrameHost;
 class HTMLFrameSetElement;
@@ -79,7 +77,6 @@
 class SelectionController;
 class TextEvent;
 class WheelEvent;
-class Widget;
 
 class CORE_EXPORT EventHandler final
     : public GarbageCollectedFinalized<EventHandler> {
diff --git a/third_party/WebKit/Source/core/input/ScrollManager.h b/third_party/WebKit/Source/core/input/ScrollManager.h
index 6d62634..db2bd29 100644
--- a/third_party/WebKit/Source/core/input/ScrollManager.h
+++ b/third_party/WebKit/Source/core/input/ScrollManager.h
@@ -19,7 +19,6 @@
 namespace blink {
 
 class AutoscrollController;
-class FloatPoint;
 class FrameHost;
 class LayoutBox;
 class LayoutObject;
diff --git a/third_party/WebKit/Source/core/input/TouchActionUtil.h b/third_party/WebKit/Source/core/input/TouchActionUtil.h
index 88715bb..6527de7 100644
--- a/third_party/WebKit/Source/core/input/TouchActionUtil.h
+++ b/third_party/WebKit/Source/core/input/TouchActionUtil.h
@@ -10,7 +10,6 @@
 
 namespace blink {
 
-class LayoutObject;
 class Node;
 
 namespace TouchActionUtil {
diff --git a/third_party/WebKit/Source/core/inspector/DevToolsHost.h b/third_party/WebKit/Source/core/inspector/DevToolsHost.h
index b623d3e..11aed27 100644
--- a/third_party/WebKit/Source/core/inspector/DevToolsHost.h
+++ b/third_party/WebKit/Source/core/inspector/DevToolsHost.h
@@ -37,7 +37,6 @@
 namespace blink {
 
 class ContextMenuItem;
-class Event;
 class FrontendMenuProvider;
 class InspectorFrontendClient;
 class LocalFrame;
diff --git a/third_party/WebKit/Source/core/inspector/InspectorAnimationAgent.h b/third_party/WebKit/Source/core/inspector/InspectorAnimationAgent.h
index 3b9d405..fe8266d 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorAnimationAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorAnimationAgent.h
@@ -16,13 +16,10 @@
 
 namespace blink {
 
-class AnimationNode;
 class AnimationTimeline;
-class Element;
 class InspectedFrames;
 class InspectorCSSAgent;
 class InspectorDOMAgent;
-class TimingFunction;
 
 class CORE_EXPORT InspectorAnimationAgent final
     : public InspectorBaseAgent<protocol::Animation::Metainfo> {
diff --git a/third_party/WebKit/Source/core/inspector/InspectorCSSAgent.h b/third_party/WebKit/Source/core/inspector/InspectorCSSAgent.h
index 6cff66e..2a8f403 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorCSSAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorCSSAgent.h
@@ -44,7 +44,6 @@
 
 namespace blink {
 
-class CSSKeyframeRule;
 class CSSRule;
 class CSSRuleList;
 class CSSStyleRule;
diff --git a/third_party/WebKit/Source/core/inspector/InspectorDOMAgent.h b/third_party/WebKit/Source/core/inspector/InspectorDOMAgent.h
index ad5bf1f..e2771ddd 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorDOMAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorDOMAgent.h
@@ -52,7 +52,6 @@
 class Document;
 class DocumentLoader;
 class Element;
-class EventTarget;
 class ExceptionState;
 class FloatQuad;
 class HTMLSlotElement;
@@ -62,9 +61,6 @@
 class Node;
 class QualifiedName;
 class PseudoElement;
-class PlatformGestureEvent;
-class PlatformMouseEvent;
-class PlatformTouchEvent;
 class InspectorRevalidateDOMTask;
 class ShadowRoot;
 
diff --git a/third_party/WebKit/Source/core/inspector/InspectorDOMDebuggerAgent.h b/third_party/WebKit/Source/core/inspector/InspectorDOMDebuggerAgent.h
index 3eb4368..86b1ecda 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorDOMDebuggerAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorDOMDebuggerAgent.h
@@ -45,7 +45,6 @@
 
 class Element;
 class Event;
-class EventTarget;
 class InspectorDOMAgent;
 class Node;
 
diff --git a/third_party/WebKit/Source/core/inspector/InspectorInputAgent.h b/third_party/WebKit/Source/core/inspector/InspectorInputAgent.h
index d017c4d..5f29a8c 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorInputAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorInputAgent.h
@@ -39,7 +39,6 @@
 
 namespace blink {
 class InspectedFrames;
-class PlatformMouseEvent;
 
 class CORE_EXPORT InspectorInputAgent final
     : public InspectorBaseAgent<protocol::Input::Metainfo> {
diff --git a/third_party/WebKit/Source/core/inspector/InspectorLayerTreeAgent.h b/third_party/WebKit/Source/core/inspector/InspectorLayerTreeAgent.h
index 9fc0c95da..6f71a23 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorLayerTreeAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorLayerTreeAgent.h
@@ -43,7 +43,6 @@
 class GraphicsContext;
 class GraphicsLayer;
 class InspectedFrames;
-class LayoutObject;
 class LayoutRect;
 class PictureSnapshot;
 class PaintLayer;
diff --git a/third_party/WebKit/Source/core/inspector/InspectorNetworkAgent.h b/third_party/WebKit/Source/core/inspector/InspectorNetworkAgent.h
index f358ad3..f0acd7b 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorNetworkAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorNetworkAgent.h
@@ -62,10 +62,6 @@
 class WebSocketHandshakeRequest;
 class WebSocketHandshakeResponse;
 
-namespace protocol {
-class DictionaryValue;
-}
-
 class CORE_EXPORT InspectorNetworkAgent final
     : public InspectorBaseAgent<protocol::Network::Metainfo> {
  public:
diff --git a/third_party/WebKit/Source/core/inspector/InspectorPageAgent.h b/third_party/WebKit/Source/core/inspector/InspectorPageAgent.h
index 99c77e6..cf4513d 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorPageAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorPageAgent.h
@@ -46,12 +46,10 @@
 class Document;
 class DocumentLoader;
 class InspectedFrames;
-class InspectorCSSAgent;
 class InspectorResourceContentLoader;
 class KURL;
 class LocalFrame;
 class SharedBuffer;
-class TextResourceDecoder;
 
 using blink::protocol::Maybe;
 
diff --git a/third_party/WebKit/Source/core/inspector/InspectorSession.h b/third_party/WebKit/Source/core/inspector/InspectorSession.h
index e360bd8..6ffecf6c 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorSession.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorSession.h
@@ -16,7 +16,6 @@
 
 namespace blink {
 
-class ExecutionContext;
 class InspectorAgent;
 class InstrumentingAgents;
 class LocalFrame;
diff --git a/third_party/WebKit/Source/core/inspector/InspectorStyleSheet.h b/third_party/WebKit/Source/core/inspector/InspectorStyleSheet.h
index fe827309..e001c7a 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorStyleSheet.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorStyleSheet.h
@@ -44,7 +44,6 @@
 class CSSStyleDeclaration;
 class CSSStyleRule;
 class CSSStyleSheet;
-class Document;
 class Element;
 class ExceptionState;
 class InspectorNetworkAgent;
diff --git a/third_party/WebKit/Source/core/inspector/InspectorTraceEvents.h b/third_party/WebKit/Source/core/inspector/InspectorTraceEvents.h
index 78319f8e..7b1ff128 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorTraceEvents.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorTraceEvents.h
@@ -39,12 +39,10 @@
 class HitTestResult;
 class ImageResource;
 class InvalidationSet;
-class KURL;
 class PaintLayer;
 class LayoutRect;
 class LocalFrame;
 class Node;
-class Page;
 class QualifiedName;
 class LayoutImage;
 class LayoutObject;
diff --git a/third_party/WebKit/Source/core/inspector/InspectorWebPerfAgent.h b/third_party/WebKit/Source/core/inspector/InspectorWebPerfAgent.h
index 549ca16..f0f8ed6 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorWebPerfAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorWebPerfAgent.h
@@ -17,7 +17,6 @@
 class Frame;
 class LocalFrame;
 class Location;
-class InspectedFrames;
 
 // Inspector Agent for Web Performance APIs
 class CORE_EXPORT InspectorWebPerfAgent final
diff --git a/third_party/WebKit/Source/core/inspector/InspectorWorkerAgent.h b/third_party/WebKit/Source/core/inspector/InspectorWorkerAgent.h
index e232f38..be84715 100644
--- a/third_party/WebKit/Source/core/inspector/InspectorWorkerAgent.h
+++ b/third_party/WebKit/Source/core/inspector/InspectorWorkerAgent.h
@@ -40,7 +40,6 @@
 
 namespace blink {
 class InspectedFrames;
-class KURL;
 class WorkerInspectorProxy;
 
 class CORE_EXPORT InspectorWorkerAgent final
diff --git a/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.h b/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.h
index 3d6e8df..9b96ce0 100644
--- a/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.h
+++ b/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.h
@@ -35,7 +35,6 @@
 
 namespace blink {
 
-class LineLayoutBoxModel;
 class PaintLayer;
 class PaintLayerScrollableArea;
 
diff --git a/third_party/WebKit/Source/core/layout/LayoutEmbeddedObject.h b/third_party/WebKit/Source/core/layout/LayoutEmbeddedObject.h
index d79c8e6..2a857af4 100644
--- a/third_party/WebKit/Source/core/layout/LayoutEmbeddedObject.h
+++ b/third_party/WebKit/Source/core/layout/LayoutEmbeddedObject.h
@@ -28,8 +28,6 @@
 
 namespace blink {
 
-class TextRun;
-
 // LayoutObject for embeds and objects, often, but not always, rendered via
 // plugins. For example, <embed src="foo.html"> does not invoke a plugin.
 class LayoutEmbeddedObject : public LayoutPart {
diff --git a/third_party/WebKit/Source/core/layout/LayoutScrollbar.h b/third_party/WebKit/Source/core/layout/LayoutScrollbar.h
index 2752b5b..a3dd552 100644
--- a/third_party/WebKit/Source/core/layout/LayoutScrollbar.h
+++ b/third_party/WebKit/Source/core/layout/LayoutScrollbar.h
@@ -35,11 +35,9 @@
 
 class ComputedStyle;
 class LayoutBox;
-class LayoutBoxModelObject;
 class LayoutScrollbarPart;
 class LocalFrame;
 class Node;
-class PaintInvalidationState;
 
 class LayoutScrollbar final : public Scrollbar {
  public:
diff --git a/third_party/WebKit/Source/core/layout/PaintInvalidationState.h b/third_party/WebKit/Source/core/layout/PaintInvalidationState.h
index 14be9805..4a8a916f 100644
--- a/third_party/WebKit/Source/core/layout/PaintInvalidationState.h
+++ b/third_party/WebKit/Source/core/layout/PaintInvalidationState.h
@@ -17,7 +17,6 @@
 
 class LayoutBoxModelObject;
 class LayoutObject;
-class LayoutSVGModelObject;
 class LayoutView;
 class PaintLayer;
 
diff --git a/third_party/WebKit/Source/core/layout/TextAutosizer.h b/third_party/WebKit/Source/core/layout/TextAutosizer.h
index 35d93fcb..c7847de7 100644
--- a/third_party/WebKit/Source/core/layout/TextAutosizer.h
+++ b/third_party/WebKit/Source/core/layout/TextAutosizer.h
@@ -45,8 +45,6 @@
 class Document;
 class IntSize;
 class LayoutBlock;
-class LayoutListItem;
-class LayoutListMarker;
 class LayoutObject;
 class LayoutTable;
 class LocalFrame;
diff --git a/third_party/WebKit/Source/core/layout/TextRunConstructor.h b/third_party/WebKit/Source/core/layout/TextRunConstructor.h
index a8fbc83..db7d20a3 100644
--- a/third_party/WebKit/Source/core/layout/TextRunConstructor.h
+++ b/third_party/WebKit/Source/core/layout/TextRunConstructor.h
@@ -44,11 +44,9 @@
 namespace blink {
 
 class Font;
-class LayoutObject;
 class ComputedStyle;
 class LayoutText;
 class LineLayoutText;
-class LineLayoutItem;
 
 enum TextRunFlag {
   DefaultTextRunFlags = 0,
diff --git a/third_party/WebKit/Source/core/layout/VerticalPositionCache.h b/third_party/WebKit/Source/core/layout/VerticalPositionCache.h
index 63b9b06..986914b 100644
--- a/third_party/WebKit/Source/core/layout/VerticalPositionCache.h
+++ b/third_party/WebKit/Source/core/layout/VerticalPositionCache.h
@@ -33,8 +33,6 @@
 
 namespace blink {
 
-class LayoutObject;
-
 // Values for vertical alignment.
 const int PositionUndefined = 0x80000000;
 
diff --git a/third_party/WebKit/Source/core/layout/api/LineLayoutBlockFlow.h b/third_party/WebKit/Source/core/layout/api/LineLayoutBlockFlow.h
index 942c83c2..7f1dc4aa 100644
--- a/third_party/WebKit/Source/core/layout/api/LineLayoutBlockFlow.h
+++ b/third_party/WebKit/Source/core/layout/api/LineLayoutBlockFlow.h
@@ -14,7 +14,6 @@
 
 class LayoutBlockFlow;
 class FloatingObject;
-class LineInfo;
 class LineWidth;
 
 class LineLayoutBlockFlow : public LineLayoutBox {
diff --git a/third_party/WebKit/Source/core/layout/api/LineLayoutInline.h b/third_party/WebKit/Source/core/layout/api/LineLayoutInline.h
index 017b9d1..adbf92f2 100644
--- a/third_party/WebKit/Source/core/layout/api/LineLayoutInline.h
+++ b/third_party/WebKit/Source/core/layout/api/LineLayoutInline.h
@@ -11,9 +11,7 @@
 
 namespace blink {
 
-class ComputedStyle;
 class LayoutInline;
-class LayoutObject;
 
 class LineLayoutInline : public LineLayoutBoxModel {
  public:
diff --git a/third_party/WebKit/Source/core/layout/line/EllipsisBox.h b/third_party/WebKit/Source/core/layout/line/EllipsisBox.h
index e66058d..34399bb 100644
--- a/third_party/WebKit/Source/core/layout/line/EllipsisBox.h
+++ b/third_party/WebKit/Source/core/layout/line/EllipsisBox.h
@@ -25,7 +25,6 @@
 
 namespace blink {
 
-class HitTestRequest;
 class HitTestResult;
 
 class EllipsisBox final : public InlineBox {
diff --git a/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h b/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
index 5bee360..0589ef35 100644
--- a/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
+++ b/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
@@ -29,7 +29,6 @@
 
 namespace blink {
 
-class HitTestRequest;
 class HitTestResult;
 class InlineTextBox;
 class LineBoxList;
diff --git a/third_party/WebKit/Source/core/layout/line/LineBoxList.h b/third_party/WebKit/Source/core/layout/line/LineBoxList.h
index be7ecf2..6b7525a 100644
--- a/third_party/WebKit/Source/core/layout/line/LineBoxList.h
+++ b/third_party/WebKit/Source/core/layout/line/LineBoxList.h
@@ -39,9 +39,7 @@
 class HitTestLocation;
 class HitTestResult;
 class InlineFlowBox;
-class LayoutBoxModelObject;
 class LayoutPoint;
-class LayoutRect;
 class LayoutUnit;
 class LineLayoutBoxModel;
 class LineLayoutItem;
diff --git a/third_party/WebKit/Source/core/layout/ng/ng_layout_opportunity_tree_node.h b/third_party/WebKit/Source/core/layout/ng/ng_layout_opportunity_tree_node.h
index eb33d175..0c3a3599 100644
--- a/third_party/WebKit/Source/core/layout/ng/ng_layout_opportunity_tree_node.h
+++ b/third_party/WebKit/Source/core/layout/ng/ng_layout_opportunity_tree_node.h
@@ -10,7 +10,6 @@
 
 namespace blink {
 
-class NGConstraintSpace;
 struct NGExclusion;
 
 // 3 node R-Tree that represents available space(left, bottom, right) or
diff --git a/third_party/WebKit/Source/core/layout/svg/LayoutSVGResourceContainer.h b/third_party/WebKit/Source/core/layout/svg/LayoutSVGResourceContainer.h
index 9cb95e2..6419c89b 100644
--- a/third_party/WebKit/Source/core/layout/svg/LayoutSVGResourceContainer.h
+++ b/third_party/WebKit/Source/core/layout/svg/LayoutSVGResourceContainer.h
@@ -37,8 +37,6 @@
   ClipperResourceType
 };
 
-class PaintLayer;
-
 class LayoutSVGResourceContainer : public LayoutSVGHiddenContainer {
  public:
   explicit LayoutSVGResourceContainer(SVGElement*);
diff --git a/third_party/WebKit/Source/core/layout/svg/SVGLayoutSupport.h b/third_party/WebKit/Source/core/layout/svg/SVGLayoutSupport.h
index 8ff63f57..a2f2e193 100644
--- a/third_party/WebKit/Source/core/layout/svg/SVGLayoutSupport.h
+++ b/third_party/WebKit/Source/core/layout/svg/SVGLayoutSupport.h
@@ -35,7 +35,6 @@
 class AffineTransform;
 class FloatPoint;
 class FloatRect;
-class PaintInvalidationState;
 class LayoutRect;
 class LayoutGeometryMap;
 class LayoutBoxModelObject;
diff --git a/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.h b/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.h
index 970ad99..e0b3d49 100644
--- a/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.h
+++ b/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.h
@@ -31,7 +31,6 @@
 
 class ComputedStyle;
 class InlineFlowBox;
-class LayoutObject;
 class PathPositionMapper;
 class SVGInlineFlowBox;
 class SVGInlineTextBox;
diff --git a/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngineBaseline.h b/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngineBaseline.h
index 6bc6cb9..32b5d76df 100644
--- a/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngineBaseline.h
+++ b/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngineBaseline.h
@@ -29,10 +29,8 @@
 namespace blink {
 
 class Font;
-class LayoutObject;
 class ComputedStyle;
 class SVGComputedStyle;
-class SVGTextMetrics;
 
 // Helper class used by SVGTextLayoutEngine to handle 'alignment-baseline' /
 // 'dominant-baseline' and 'baseline-shift'.
diff --git a/third_party/WebKit/Source/core/loader/FrameLoaderClient.h b/third_party/WebKit/Source/core/loader/FrameLoaderClient.h
index 087315f..3a452be 100644
--- a/third_party/WebKit/Source/core/loader/FrameLoaderClient.h
+++ b/third_party/WebKit/Source/core/loader/FrameLoaderClient.h
@@ -56,7 +56,6 @@
 
 class Document;
 class DocumentLoader;
-class FetchRequest;
 struct FrameLoadRequest;
 class HTMLFormElement;
 class HTMLFrameElementBase;
@@ -78,10 +77,8 @@
 class WebMediaPlayer;
 class WebMediaPlayerClient;
 class WebMediaPlayerSource;
-class WebMediaStream;
 class WebRTCPeerConnectionHandler;
 class WebServiceWorkerProvider;
-class WebSocketHandle;
 class Widget;
 
 class CORE_EXPORT FrameLoaderClient : public FrameClient {
diff --git a/third_party/WebKit/Source/core/loader/ImageLoader.h b/third_party/WebKit/Source/core/loader/ImageLoader.h
index 3853c711..5f9d444b 100644
--- a/third_party/WebKit/Source/core/loader/ImageLoader.h
+++ b/third_party/WebKit/Source/core/loader/ImageLoader.h
@@ -35,7 +35,6 @@
 namespace blink {
 
 class IncrementLoadEventDelayCount;
-class FetchRequest;
 class Document;
 class Element;
 class ImageLoader;
diff --git a/third_party/WebKit/Source/core/loader/MixedContentChecker.h b/third_party/WebKit/Source/core/loader/MixedContentChecker.h
index de16cd4..b1100e7 100644
--- a/third_party/WebKit/Source/core/loader/MixedContentChecker.h
+++ b/third_party/WebKit/Source/core/loader/MixedContentChecker.h
@@ -42,7 +42,6 @@
 namespace blink {
 
 class Frame;
-class FrameLoaderClient;
 class LocalFrame;
 class KURL;
 class ResourceResponse;
diff --git a/third_party/WebKit/Source/core/loader/PingLoader.h b/third_party/WebKit/Source/core/loader/PingLoader.h
index acba3ea..ae6d269 100644
--- a/third_party/WebKit/Source/core/loader/PingLoader.h
+++ b/third_party/WebKit/Source/core/loader/PingLoader.h
@@ -51,8 +51,6 @@
 class FormData;
 class LocalFrame;
 class KURL;
-class ResourceRequest;
-class SecurityOrigin;
 
 // Issue an asynchronous, one-directional request at some resources, ignoring
 // any response. The request is made independent of any LocalFrame staying
diff --git a/third_party/WebKit/Source/core/observer/ResizeObserver.h b/third_party/WebKit/Source/core/observer/ResizeObserver.h
index a9b3b9f..10e87507 100644
--- a/third_party/WebKit/Source/core/observer/ResizeObserver.h
+++ b/third_party/WebKit/Source/core/observer/ResizeObserver.h
@@ -14,7 +14,6 @@
 class Element;
 class ResizeObserverCallback;
 class ResizeObserverController;
-class ResizeObserverEntry;
 class ResizeObservation;
 
 // ResizeObserver represents ResizeObserver javascript api:
diff --git a/third_party/WebKit/Source/core/observer/ResizeObserverCallback.h b/third_party/WebKit/Source/core/observer/ResizeObserverCallback.h
index 3ebe04b..f10c4ff 100644
--- a/third_party/WebKit/Source/core/observer/ResizeObserverCallback.h
+++ b/third_party/WebKit/Source/core/observer/ResizeObserverCallback.h
@@ -9,7 +9,6 @@
 
 namespace blink {
 
-class ExecutionContext;
 class ResizeObserver;
 class ResizeObserverEntry;
 
diff --git a/third_party/WebKit/Source/core/observer/ResizeObserverEntry.h b/third_party/WebKit/Source/core/observer/ResizeObserverEntry.h
index 8086c25d..78aada1 100644
--- a/third_party/WebKit/Source/core/observer/ResizeObserverEntry.h
+++ b/third_party/WebKit/Source/core/observer/ResizeObserverEntry.h
@@ -13,7 +13,6 @@
 class Element;
 class ClientRect;
 class LayoutRect;
-class LayoutSize;
 
 class ResizeObserverEntry final : public GarbageCollected<ResizeObserverEntry>,
                                   public ScriptWrappable {
diff --git a/third_party/WebKit/Source/core/page/ChromeClient.h b/third_party/WebKit/Source/core/page/ChromeClient.h
index b370905..68c85ab 100644
--- a/third_party/WebKit/Source/core/page/ChromeClient.h
+++ b/third_party/WebKit/Source/core/page/ChromeClient.h
@@ -57,17 +57,16 @@
 class FileChooser;
 class FloatPoint;
 class Frame;
-class GraphicsContext;
 class GraphicsLayer;
 class HTMLFormControlElement;
 class HTMLInputElement;
 class HTMLSelectElement;
 class HitTestResult;
 class IntRect;
+class KeyboardEvent;
 class LocalFrame;
 class Node;
 class Page;
-class PaintArtifact;
 class PopupOpeningObserver;
 class WebDragData;
 class WebFrameScheduler;
diff --git a/third_party/WebKit/Source/core/page/DragData.h b/third_party/WebKit/Source/core/page/DragData.h
index 2f195a3..24d888d9 100644
--- a/third_party/WebKit/Source/core/page/DragData.h
+++ b/third_party/WebKit/Source/core/page/DragData.h
@@ -39,7 +39,6 @@
 class DataObject;
 class DocumentFragment;
 class LocalFrame;
-class Range;
 
 enum DragApplicationFlags {
   DragApplicationNone = 0,
diff --git a/third_party/WebKit/Source/core/page/FrameTree.h b/third_party/WebKit/Source/core/page/FrameTree.h
index eb52db5..c69edeb 100644
--- a/third_party/WebKit/Source/core/page/FrameTree.h
+++ b/third_party/WebKit/Source/core/page/FrameTree.h
@@ -27,7 +27,6 @@
 namespace blink {
 
 class Frame;
-class TreeScope;
 
 class CORE_EXPORT FrameTree final {
   WTF_MAKE_NONCOPYABLE(FrameTree);
diff --git a/third_party/WebKit/Source/core/page/PageVisibilityNotifier.h b/third_party/WebKit/Source/core/page/PageVisibilityNotifier.h
index 1726d71c..0975201 100644
--- a/third_party/WebKit/Source/core/page/PageVisibilityNotifier.h
+++ b/third_party/WebKit/Source/core/page/PageVisibilityNotifier.h
@@ -31,7 +31,6 @@
 
 namespace blink {
 
-class LocalFrame;
 class Page;
 class PageVisibilityObserver;
 
diff --git a/third_party/WebKit/Source/core/page/PageVisibilityObserver.h b/third_party/WebKit/Source/core/page/PageVisibilityObserver.h
index 23db9d3..caceb5f 100644
--- a/third_party/WebKit/Source/core/page/PageVisibilityObserver.h
+++ b/third_party/WebKit/Source/core/page/PageVisibilityObserver.h
@@ -33,8 +33,6 @@
 
 namespace blink {
 
-class LocalFrame;
-
 class CORE_EXPORT PageVisibilityObserver
     : public LifecycleObserver<Page, PageVisibilityObserver> {
  public:
diff --git a/third_party/WebKit/Source/core/page/scrolling/RootScrollerController.h b/third_party/WebKit/Source/core/page/scrolling/RootScrollerController.h
index 0bc5ba23..b0054b46 100644
--- a/third_party/WebKit/Source/core/page/scrolling/RootScrollerController.h
+++ b/third_party/WebKit/Source/core/page/scrolling/RootScrollerController.h
@@ -12,11 +12,9 @@
 
 class Document;
 class Element;
-class GraphicsLayer;
 class PaintLayer;
 class PaintLayerScrollableArea;
 class ScrollableArea;
-class ScrollStateCallback;
 
 // Manages the root scroller associated with a given document. The root
 // scroller causes browser controls movement, overscroll effects and prevents
diff --git a/third_party/WebKit/Source/core/page/scrolling/SnapCoordinator.h b/third_party/WebKit/Source/core/page/scrolling/SnapCoordinator.h
index 24fe016..ee0974d 100644
--- a/third_party/WebKit/Source/core/page/scrolling/SnapCoordinator.h
+++ b/third_party/WebKit/Source/core/page/scrolling/SnapCoordinator.h
@@ -12,9 +12,7 @@
 
 namespace blink {
 
-class ComputedStyle;
 class ContainerNode;
-class Element;
 class LayoutBox;
 struct LengthPoint;
 
diff --git a/third_party/WebKit/Source/core/page/scrolling/StickyPositionScrollingConstraints.h b/third_party/WebKit/Source/core/page/scrolling/StickyPositionScrollingConstraints.h
index cea6a03..e376872 100644
--- a/third_party/WebKit/Source/core/page/scrolling/StickyPositionScrollingConstraints.h
+++ b/third_party/WebKit/Source/core/page/scrolling/StickyPositionScrollingConstraints.h
@@ -9,8 +9,6 @@
 
 namespace blink {
 
-class LayoutBoxModelObjectTest;
-
 class StickyPositionScrollingConstraints final {
  public:
   enum AnchorEdgeFlags {
diff --git a/third_party/WebKit/Source/core/page/scrolling/ViewportScrollCallback.h b/third_party/WebKit/Source/core/page/scrolling/ViewportScrollCallback.h
index be9af36..a5a709e 100644
--- a/third_party/WebKit/Source/core/page/scrolling/ViewportScrollCallback.h
+++ b/third_party/WebKit/Source/core/page/scrolling/ViewportScrollCallback.h
@@ -12,7 +12,6 @@
 namespace blink {
 
 class BrowserControls;
-class FloatSize;
 class ScrollableArea;
 class ScrollState;
 class OverscrollController;
diff --git a/third_party/WebKit/Source/core/paint/BackgroundImageGeometry.h b/third_party/WebKit/Source/core/paint/BackgroundImageGeometry.h
index 41af069..5a7dcca 100644
--- a/third_party/WebKit/Source/core/paint/BackgroundImageGeometry.h
+++ b/third_party/WebKit/Source/core/paint/BackgroundImageGeometry.h
@@ -15,7 +15,6 @@
 
 class FillLayer;
 class LayoutBoxModelObject;
-class LayoutObject;
 class LayoutRect;
 
 class BackgroundImageGeometry {
diff --git a/third_party/WebKit/Source/core/paint/BlockPainter.h b/third_party/WebKit/Source/core/paint/BlockPainter.h
index 5f91a6f..03839d7 100644
--- a/third_party/WebKit/Source/core/paint/BlockPainter.h
+++ b/third_party/WebKit/Source/core/paint/BlockPainter.h
@@ -14,9 +14,7 @@
 class LayoutBlock;
 class LayoutBox;
 class LayoutFlexibleBox;
-class LayoutObject;
 class LayoutPoint;
-class LayoutRect;
 
 class BlockPainter {
   STACK_ALLOCATED();
diff --git a/third_party/WebKit/Source/core/paint/BoxBorderPainter.h b/third_party/WebKit/Source/core/paint/BoxBorderPainter.h
index fafa75a..2b67a50 100644
--- a/third_party/WebKit/Source/core/paint/BoxBorderPainter.h
+++ b/third_party/WebKit/Source/core/paint/BoxBorderPainter.h
@@ -13,8 +13,6 @@
 
 class ComputedStyle;
 class GraphicsContext;
-class IntRect;
-class LayoutBox;
 class LayoutRect;
 struct PaintInfo;
 class Path;
diff --git a/third_party/WebKit/Source/core/paint/BoxDecorationData.h b/third_party/WebKit/Source/core/paint/BoxDecorationData.h
index a7d88bf..bfef5b89 100644
--- a/third_party/WebKit/Source/core/paint/BoxDecorationData.h
+++ b/third_party/WebKit/Source/core/paint/BoxDecorationData.h
@@ -10,7 +10,6 @@
 
 namespace blink {
 
-class GraphicsContext;
 class LayoutBox;
 
 // Information extracted from ComputedStyle for box painting.
diff --git a/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.h b/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.h
index 1efb9a4..c9ee959 100644
--- a/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.h
+++ b/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.h
@@ -11,7 +11,6 @@
 namespace blink {
 
 class LayoutBox;
-class LayoutRect;
 class LayoutSize;
 struct PaintInvalidatorContext;
 
diff --git a/third_party/WebKit/Source/core/paint/BoxPainter.h b/third_party/WebKit/Source/core/paint/BoxPainter.h
index 35be5a2..ff3eeec 100644
--- a/third_party/WebKit/Source/core/paint/BoxPainter.h
+++ b/third_party/WebKit/Source/core/paint/BoxPainter.h
@@ -14,10 +14,8 @@
 
 namespace blink {
 
-class BackgroundImageGeometry;
 class ComputedStyle;
 class FillLayer;
-class FloatRoundedRect;
 class GraphicsContext;
 class Image;
 class InlineFlowBox;
diff --git a/third_party/WebKit/Source/core/paint/EllipsisBoxPainter.h b/third_party/WebKit/Source/core/paint/EllipsisBoxPainter.h
index e67b4f0..aa525c5 100644
--- a/third_party/WebKit/Source/core/paint/EllipsisBoxPainter.h
+++ b/third_party/WebKit/Source/core/paint/EllipsisBoxPainter.h
@@ -12,9 +12,6 @@
 struct PaintInfo;
 
 class EllipsisBox;
-class FloatPoint;
-class Font;
-class GraphicsContext;
 class LayoutPoint;
 class LayoutUnit;
 class ComputedStyle;
diff --git a/third_party/WebKit/Source/core/paint/EmbeddedObjectPainter.h b/third_party/WebKit/Source/core/paint/EmbeddedObjectPainter.h
index 5d51ef1..cfa39880 100644
--- a/third_party/WebKit/Source/core/paint/EmbeddedObjectPainter.h
+++ b/third_party/WebKit/Source/core/paint/EmbeddedObjectPainter.h
@@ -10,12 +10,8 @@
 namespace blink {
 
 struct PaintInfo;
-class FloatRect;
-class Font;
 class LayoutEmbeddedObject;
 class LayoutPoint;
-class Path;
-class TextRun;
 
 class EmbeddedObjectPainter {
   STACK_ALLOCATED();
diff --git a/third_party/WebKit/Source/core/paint/FilterPainter.h b/third_party/WebKit/Source/core/paint/FilterPainter.h
index aeb5ea8..0ddcc3a 100644
--- a/third_party/WebKit/Source/core/paint/FilterPainter.h
+++ b/third_party/WebKit/Source/core/paint/FilterPainter.h
@@ -15,6 +15,7 @@
 class GraphicsContext;
 class PaintLayer;
 class LayerClipRecorder;
+class LayoutObject;
 
 class FilterPainter {
   STACK_ALLOCATED();
diff --git a/third_party/WebKit/Source/core/paint/GridPainter.h b/third_party/WebKit/Source/core/paint/GridPainter.h
index c8a8286..97507a7 100644
--- a/third_party/WebKit/Source/core/paint/GridPainter.h
+++ b/third_party/WebKit/Source/core/paint/GridPainter.h
@@ -11,7 +11,6 @@
 
 struct PaintInfo;
 class LayoutPoint;
-class LayoutBox;
 class LayoutGrid;
 
 class GridPainter {
diff --git a/third_party/WebKit/Source/core/paint/InlinePainter.h b/third_party/WebKit/Source/core/paint/InlinePainter.h
index 0542fdc..e13bfb7 100644
--- a/third_party/WebKit/Source/core/paint/InlinePainter.h
+++ b/third_party/WebKit/Source/core/paint/InlinePainter.h
@@ -11,10 +11,7 @@
 
 namespace blink {
 
-class Color;
-class GraphicsContext;
 class LayoutPoint;
-class LayoutRect;
 struct PaintInfo;
 class LayoutInline;
 
diff --git a/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.h b/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.h
index 84251d3..7a21f03 100644
--- a/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.h
+++ b/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.h
@@ -17,8 +17,6 @@
 class CompositionUnderline;
 class ComputedStyle;
 class DocumentMarker;
-class FloatPoint;
-class FloatRect;
 class Font;
 class GraphicsContext;
 class InlineTextBox;
diff --git a/third_party/WebKit/Source/core/paint/ObjectPainter.h b/third_party/WebKit/Source/core/paint/ObjectPainter.h
index 2b7d96f..e73923df 100644
--- a/third_party/WebKit/Source/core/paint/ObjectPainter.h
+++ b/third_party/WebKit/Source/core/paint/ObjectPainter.h
@@ -14,8 +14,6 @@
 class Color;
 class GraphicsContext;
 class LayoutPoint;
-class LayoutRect;
-class LayoutSize;
 struct PaintInfo;
 class LayoutObject;
 class ComputedStyle;
diff --git a/third_party/WebKit/Source/core/paint/PaintInfo.h b/third_party/WebKit/Source/core/paint/PaintInfo.h
index 4cb2da4..624dc74 100644
--- a/third_party/WebKit/Source/core/paint/PaintInfo.h
+++ b/third_party/WebKit/Source/core/paint/PaintInfo.h
@@ -47,10 +47,7 @@
 
 namespace blink {
 
-class LayoutInline;
 class LayoutBoxModelObject;
-class LayoutObject;
-class PaintInvalidationState;
 
 struct CORE_EXPORT PaintInfo {
   PaintInfo(GraphicsContext& newContext,
diff --git a/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.h b/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.h
index ea3682c8..5029ef4 100644
--- a/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.h
+++ b/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.h
@@ -12,9 +12,7 @@
 namespace blink {
 
 class LayoutBox;
-class LayoutBoxModelObject;
 class LayoutScrollbarPart;
-class PaintInvalidationContainer;
 class PaintInvalidationState;
 struct PaintInvalidatorContext;
 
diff --git a/third_party/WebKit/Source/core/paint/PaintLayer.h b/third_party/WebKit/Source/core/paint/PaintLayer.h
index 6ad2d20b..e94c22d9 100644
--- a/third_party/WebKit/Source/core/paint/PaintLayer.h
+++ b/third_party/WebKit/Source/core/paint/PaintLayer.h
@@ -68,7 +68,6 @@
 class CompositorFilterOperations;
 class ComputedStyle;
 class FilterOperations;
-class HitTestRequest;
 class HitTestResult;
 class HitTestingTransformState;
 class PaintLayerCompositor;
diff --git a/third_party/WebKit/Source/core/paint/PaintLayerPaintingInfo.h b/third_party/WebKit/Source/core/paint/PaintLayerPaintingInfo.h
index dbedc19..dee772c 100644
--- a/third_party/WebKit/Source/core/paint/PaintLayerPaintingInfo.h
+++ b/third_party/WebKit/Source/core/paint/PaintLayerPaintingInfo.h
@@ -52,7 +52,6 @@
 namespace blink {
 
 class PaintLayer;
-class LayoutObject;
 
 enum PaintLayerFlag {
   PaintLayerNoFlag = 0,
diff --git a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h
index 8e41a53..94ed99e 100644
--- a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h
+++ b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h
@@ -16,7 +16,6 @@
 
 class FrameView;
 class LayoutObject;
-class ObjectPaintProperties;
 
 // The context for PaintPropertyTreeBuilder.
 // It's responsible for bookkeeping tree state in other order, for example, the
diff --git a/third_party/WebKit/Source/core/paint/SVGInlineTextBoxPainter.h b/third_party/WebKit/Source/core/paint/SVGInlineTextBoxPainter.h
index 50f96ef3f..50983454 100644
--- a/third_party/WebKit/Source/core/paint/SVGInlineTextBoxPainter.h
+++ b/third_party/WebKit/Source/core/paint/SVGInlineTextBoxPainter.h
@@ -11,9 +11,7 @@
 
 namespace blink {
 
-class FloatPoint;
 class Font;
-class GraphicsContext;
 struct PaintInfo;
 class LayoutPoint;
 class LayoutSVGInlineText;
diff --git a/third_party/WebKit/Source/core/paint/TableCellPainter.h b/third_party/WebKit/Source/core/paint/TableCellPainter.h
index 958b4c27..a87c4b59 100644
--- a/third_party/WebKit/Source/core/paint/TableCellPainter.h
+++ b/third_party/WebKit/Source/core/paint/TableCellPainter.h
@@ -17,7 +17,6 @@
 class LayoutRect;
 class LayoutTableCell;
 class LayoutObject;
-class ComputedStyle;
 
 class TableCellPainter {
   STACK_ALLOCATED();
diff --git a/third_party/WebKit/Source/core/paint/TextPainter.h b/third_party/WebKit/Source/core/paint/TextPainter.h
index 0b58bd9..d9bd1d3 100644
--- a/third_party/WebKit/Source/core/paint/TextPainter.h
+++ b/third_party/WebKit/Source/core/paint/TextPainter.h
@@ -23,7 +23,6 @@
 class GraphicsContext;
 class GraphicsContextStateSaver;
 class LayoutTextCombine;
-class LayoutObject;
 class LineLayoutItem;
 struct PaintInfo;
 class ShadowList;
diff --git a/third_party/WebKit/Source/core/paint/ViewPainter.h b/third_party/WebKit/Source/core/paint/ViewPainter.h
index 148694f9..267c8c76 100644
--- a/third_party/WebKit/Source/core/paint/ViewPainter.h
+++ b/third_party/WebKit/Source/core/paint/ViewPainter.h
@@ -11,7 +11,6 @@
 
 class LayoutPoint;
 struct PaintInfo;
-class LayoutBox;
 class LayoutView;
 
 class ViewPainter {
diff --git a/third_party/WebKit/Source/core/plugins/PluginView.h b/third_party/WebKit/Source/core/plugins/PluginView.h
index 3cef2ea..2c4f3f3 100644
--- a/third_party/WebKit/Source/core/plugins/PluginView.h
+++ b/third_party/WebKit/Source/core/plugins/PluginView.h
@@ -40,7 +40,6 @@
 
 namespace blink {
 
-class ResourceError;
 class ResourceResponse;
 
 class CORE_EXPORT PluginView : public Widget {
diff --git a/third_party/WebKit/Source/core/style/ComputedStyle.h b/third_party/WebKit/Source/core/style/ComputedStyle.h
index 287f8655..a9bd24e0 100644
--- a/third_party/WebKit/Source/core/style/ComputedStyle.h
+++ b/third_party/WebKit/Source/core/style/ComputedStyle.h
@@ -116,7 +116,6 @@
 class CSSTransitionData;
 class CSSVariableData;
 class Font;
-class FontMetrics;
 class Hyphenation;
 class RotateTransformOperation;
 class ScaleTransformOperation;
diff --git a/third_party/WebKit/Source/core/style/StyleRareNonInheritedData.h b/third_party/WebKit/Source/core/style/StyleRareNonInheritedData.h
index f9ca71b..a941085 100644
--- a/third_party/WebKit/Source/core/style/StyleRareNonInheritedData.h
+++ b/third_party/WebKit/Source/core/style/StyleRareNonInheritedData.h
@@ -50,7 +50,6 @@
 class ContentData;
 class CSSAnimationData;
 class CSSTransitionData;
-class LengthSize;
 class ShadowList;
 class StyleDeprecatedFlexibleBoxData;
 class StyleFilterData;
diff --git a/third_party/WebKit/Source/core/svg/SVGElement.h b/third_party/WebKit/Source/core/svg/SVGElement.h
index f6a28245..a7c2297 100644
--- a/third_party/WebKit/Source/core/svg/SVGElement.h
+++ b/third_party/WebKit/Source/core/svg/SVGElement.h
@@ -44,7 +44,6 @@
 class SVGElement;
 class SVGElementRareData;
 class SVGFitToViewBox;
-class SVGLength;
 class SVGPropertyBase;
 class SVGSVGElement;
 class SVGUseElement;
diff --git a/third_party/WebKit/Source/core/svg/SVGGeometryElement.h b/third_party/WebKit/Source/core/svg/SVGGeometryElement.h
index 9c98508..dc2c4a1d 100644
--- a/third_party/WebKit/Source/core/svg/SVGGeometryElement.h
+++ b/third_party/WebKit/Source/core/svg/SVGGeometryElement.h
@@ -35,6 +35,7 @@
 
 namespace blink {
 
+class Path;
 class SVGPointTearOff;
 
 class SVGGeometryElement : public SVGGraphicsElement {
diff --git a/third_party/WebKit/Source/core/svg/SVGGraphicsElement.h b/third_party/WebKit/Source/core/svg/SVGGraphicsElement.h
index 7340bd66..f5413f2 100644
--- a/third_party/WebKit/Source/core/svg/SVGGraphicsElement.h
+++ b/third_party/WebKit/Source/core/svg/SVGGraphicsElement.h
@@ -31,7 +31,6 @@
 namespace blink {
 
 class AffineTransform;
-class Path;
 class SVGMatrixTearOff;
 class SVGRectTearOff;
 
diff --git a/third_party/WebKit/Source/core/svg/SVGTests.h b/third_party/WebKit/Source/core/svg/SVGTests.h
index e9ed5e4..a5360f8 100644
--- a/third_party/WebKit/Source/core/svg/SVGTests.h
+++ b/third_party/WebKit/Source/core/svg/SVGTests.h
@@ -26,7 +26,6 @@
 
 namespace blink {
 
-class Document;
 class QualifiedName;
 class SVGElement;
 class SVGStaticStringList;
diff --git a/third_party/WebKit/Source/core/testing/CallbackFunctionTest.h b/third_party/WebKit/Source/core/testing/CallbackFunctionTest.h
index 22a2c1d1..c7af1d9 100644
--- a/third_party/WebKit/Source/core/testing/CallbackFunctionTest.h
+++ b/third_party/WebKit/Source/core/testing/CallbackFunctionTest.h
@@ -14,7 +14,6 @@
 
 class ExceptionState;
 class HTMLDivElement;
-class ScriptState;
 class TestCallback;
 class TestInterfaceCallback;
 class TestReceiverObjectCallback;
diff --git a/third_party/WebKit/Source/core/testing/InternalSettings.h b/third_party/WebKit/Source/core/testing/InternalSettings.h
index 5b6abb0..ac82a64c 100644
--- a/third_party/WebKit/Source/core/testing/InternalSettings.h
+++ b/third_party/WebKit/Source/core/testing/InternalSettings.h
@@ -39,9 +39,7 @@
 
 namespace blink {
 
-class Document;
 class ExceptionState;
-class LocalFrame;
 class Page;
 class Settings;
 
diff --git a/third_party/WebKit/Source/core/testing/Internals.h b/third_party/WebKit/Source/core/testing/Internals.h
index fa23c27..ad24b98b 100644
--- a/third_party/WebKit/Source/core/testing/Internals.h
+++ b/third_party/WebKit/Source/core/testing/Internals.h
@@ -57,7 +57,6 @@
 class HTMLMediaElement;
 class InternalRuntimeFlags;
 class InternalSettings;
-class Iterator;
 class LayerRectList;
 class LocalDOMWindow;
 class LocalFrame;
diff --git a/third_party/WebKit/Source/core/timing/DOMWindowPerformance.h b/third_party/WebKit/Source/core/timing/DOMWindowPerformance.h
index 1c9a716..d68152e 100644
--- a/third_party/WebKit/Source/core/timing/DOMWindowPerformance.h
+++ b/third_party/WebKit/Source/core/timing/DOMWindowPerformance.h
@@ -14,6 +14,7 @@
 namespace blink {
 
 class DOMWindow;
+class LocalDOMWindow;
 class Performance;
 
 class CORE_EXPORT DOMWindowPerformance final
diff --git a/third_party/WebKit/Source/core/timing/PerformanceBase.h b/third_party/WebKit/Source/core/timing/PerformanceBase.h
index 0f23af16..52a1c9f2 100644
--- a/third_party/WebKit/Source/core/timing/PerformanceBase.h
+++ b/third_party/WebKit/Source/core/timing/PerformanceBase.h
@@ -46,7 +46,6 @@
 namespace blink {
 
 class DOMWindow;
-class Document;
 class ExceptionState;
 class PerformanceObserver;
 class PerformanceTiming;
diff --git a/third_party/WebKit/Source/core/timing/PerformanceLongTaskTiming.h b/third_party/WebKit/Source/core/timing/PerformanceLongTaskTiming.h
index 1ce88a2..de6c2bc 100644
--- a/third_party/WebKit/Source/core/timing/PerformanceLongTaskTiming.h
+++ b/third_party/WebKit/Source/core/timing/PerformanceLongTaskTiming.h
@@ -12,7 +12,6 @@
 
 namespace blink {
 
-class Document;
 class DOMWindow;
 
 class PerformanceLongTaskTiming final : public PerformanceEntry {
diff --git a/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h b/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h
index 3cd7131..deae581 100644
--- a/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h
+++ b/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h
@@ -14,6 +14,7 @@
 
 class ExecutionContext;
 class ParentFrameTaskRunners;
+class SourceLocation;
 class WorkerInspectorProxy;
 class WorkerLoaderProxy;
 class WorkerThread;
diff --git a/third_party/WebKit/Source/core/workers/ThreadedWorkletGlobalScope.h b/third_party/WebKit/Source/core/workers/ThreadedWorkletGlobalScope.h
index 5be5ec2..37c27d4 100644
--- a/third_party/WebKit/Source/core/workers/ThreadedWorkletGlobalScope.h
+++ b/third_party/WebKit/Source/core/workers/ThreadedWorkletGlobalScope.h
@@ -10,8 +10,6 @@
 
 namespace blink {
 
-class ConsoleMessageStorage;
-class WorkerInspectorController;
 class WorkerThread;
 
 class CORE_EXPORT ThreadedWorkletGlobalScope : public WorkletGlobalScope {
diff --git a/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h b/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
index 3011147..60ed51e 100644
--- a/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
+++ b/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
@@ -49,7 +49,6 @@
 namespace blink {
 
 class ConsoleMessage;
-class ConsoleMessageStorage;
 class ExceptionState;
 class V8AbstractEventListener;
 class WorkerClients;
diff --git a/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.h b/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.h
index 4c1c2d1..d833dfa 100644
--- a/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.h
+++ b/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.h
@@ -15,7 +15,6 @@
 
 class Document;
 class KURL;
-class WorkerGlobalScopeProxy;
 
 // A proxy for talking to the worker inspector on the worker thread.
 // All of these methods should be called on the main thread.
diff --git a/third_party/WebKit/Source/core/xml/XPathParser.h b/third_party/WebKit/Source/core/xml/XPathParser.h
index 753addde..a313315 100644
--- a/third_party/WebKit/Source/core/xml/XPathParser.h
+++ b/third_party/WebKit/Source/core/xml/XPathParser.h
@@ -41,7 +41,6 @@
 
 class Expression;
 class LocationPath;
-class ParseNode;
 class Parser;
 class Predicate;
 
diff --git a/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.h b/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.h
index 1b7dde9..3e5905ec 100644
--- a/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.h
+++ b/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.h
@@ -43,7 +43,6 @@
 namespace blink {
 
 class ContainerNode;
-class ResourceFetcher;
 class DocumentFragment;
 class Document;
 class Element;
diff --git a/third_party/WebKit/Source/modules/compositorworker/WindowAnimationWorklet.h b/third_party/WebKit/Source/modules/compositorworker/WindowAnimationWorklet.h
index a2c6ef4..4a4e6255 100644
--- a/third_party/WebKit/Source/modules/compositorworker/WindowAnimationWorklet.h
+++ b/third_party/WebKit/Source/modules/compositorworker/WindowAnimationWorklet.h
@@ -12,8 +12,9 @@
 
 namespace blink {
 
-class DOMWindow;
 class AnimationWorklet;
+class DOMWindow;
+class LocalDOMWindow;
 class Worklet;
 
 class MODULES_EXPORT WindowAnimationWorklet final
diff --git a/third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.h b/third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.h
index de0f8ff0..ef26f4b 100644
--- a/third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.h
+++ b/third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.h
@@ -39,6 +39,7 @@
 
 class Crypto;
 class DOMWindow;
+class LocalDOMWindow;
 
 class DOMWindowCrypto final : public GarbageCollected<DOMWindowCrypto>,
                               public Supplement<LocalDOMWindow>,
diff --git a/third_party/WebKit/Source/modules/csspaint/WindowPaintWorklet.h b/third_party/WebKit/Source/modules/csspaint/WindowPaintWorklet.h
index 884b458..1787373 100644
--- a/third_party/WebKit/Source/modules/csspaint/WindowPaintWorklet.h
+++ b/third_party/WebKit/Source/modules/csspaint/WindowPaintWorklet.h
@@ -13,6 +13,7 @@
 namespace blink {
 
 class DOMWindow;
+class LocalDOMWindow;
 class PaintWorklet;
 class Worklet;
 
diff --git a/third_party/WebKit/Source/modules/quota/DOMWindowQuota.h b/third_party/WebKit/Source/modules/quota/DOMWindowQuota.h
index 0dde294..cf9f56c 100644
--- a/third_party/WebKit/Source/modules/quota/DOMWindowQuota.h
+++ b/third_party/WebKit/Source/modules/quota/DOMWindowQuota.h
@@ -39,6 +39,7 @@
 
 class DeprecatedStorageInfo;
 class DOMWindow;
+class LocalDOMWindow;
 
 class DOMWindowQuota final : public GarbageCollected<DOMWindowQuota>,
                              public Supplement<LocalDOMWindow>,
diff --git a/third_party/WebKit/Source/modules/storage/DOMWindowStorage.h b/third_party/WebKit/Source/modules/storage/DOMWindowStorage.h
index acbc484..6bd5769 100644
--- a/third_party/WebKit/Source/modules/storage/DOMWindowStorage.h
+++ b/third_party/WebKit/Source/modules/storage/DOMWindowStorage.h
@@ -13,6 +13,7 @@
 
 class DOMWindow;
 class ExceptionState;
+class LocalDOMWindow;
 class Storage;
 
 class DOMWindowStorage final : public GarbageCollected<DOMWindowStorage>,
diff --git a/third_party/WebKit/Source/modules/webaudio/WindowAudioWorklet.h b/third_party/WebKit/Source/modules/webaudio/WindowAudioWorklet.h
index 68039b2..9922aeb1 100644
--- a/third_party/WebKit/Source/modules/webaudio/WindowAudioWorklet.h
+++ b/third_party/WebKit/Source/modules/webaudio/WindowAudioWorklet.h
@@ -12,8 +12,9 @@
 
 namespace blink {
 
-class DOMWindow;
 class AudioWorklet;
+class DOMWindow;
+class LocalDOMWindow;
 class Worklet;
 
 class MODULES_EXPORT WindowAudioWorklet final
diff --git a/third_party/WebKit/Source/web/InspectorOverlay.h b/third_party/WebKit/Source/web/InspectorOverlay.h
index e57d0ea..e3ecb0a 100644
--- a/third_party/WebKit/Source/web/InspectorOverlay.h
+++ b/third_party/WebKit/Source/web/InspectorOverlay.h
@@ -55,6 +55,9 @@
 class Node;
 class Page;
 class PageOverlay;
+class PlatformGestureEvent;
+class PlatformMouseEvent;
+class PlatformTouchEvent;
 class WebViewImpl;
 
 namespace protocol {