Fix non-unified build error in several layout subdirectories
Categories
(Core :: Layout, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox72 | --- | fixed |
People
(Reporter: dholbert, Assigned: dholbert)
Details
Attachments
(7 files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
I used the flight time on my (nearly-over) vacation to fix some non-unified build bustage.
I'm filing this bug to cover those patches.
Assignee | ||
Comment 1•3 years ago
|
||
This patch is entirely automated, and was generated with the following command:
./mach clang-format -p layout/
Assignee | ||
Comment 2•3 years ago
|
||
The issues fall into these categories:
- Files that used StaticPrefs::layout_XYZ() API or gfxVars::XYZ that needed an
include. (Addressed by adding the missing include.) - Files that use mozilla::dom::XYZ or mozilla::gfx::XYZ without qualifying the
namespace & without a 'using' decl. (Addressed by adding "using".) - A few other includes for types/inlines that were used without their header.
Depends on D50162
Assignee | ||
Comment 3•3 years ago
|
||
Changes here:
- Adding a "dom::" prefix in GeckoMVMContext.cpp (could've also added
a "using" decl, but I'm just adding a one-off prefix to match "dom::Document"
usage elsewhere in this file). - Giving nsLayoutUtils an include for ViewportFrame.h since it uses that type.
- Giving nsPresArena.cpp an include for nsDisplayList.h to provide the
DisplayListArenaObjectId enum type.
Depends on D50163
Assignee | ||
Comment 4•3 years ago
|
||
This patch:
- Gives nsMeterFrame.cpp a "using" decl for mozilla::dom::Document (matching
local style), to make its "nsCOMPtr<Document>" variable valid. - Gives RetainedDisplayListBuilder.cpp an include for nsIFrameInlines.h
(and nsIFrame.h for good measure) to provide the definition for inline
function nsIFrame::IsFixedPosContainingBlock(). - Gives nsDisplayList.cpp an include for LayerAnimationInfo.h, since it uses
that type.
Depends on D50164
Assignee | ||
Comment 5•3 years ago
|
||
This patch:
- Gives layout/generic/AnonymousContentKey.h an include for
<stdint.h>
to
provide the uint8_t type, and TypedEnumBits.h to provide the
MOZ_MAKE_ENUM_CLASS_BITWISE_OPERATORS macro. (This is a change in another
directory, but it's needed in order for layout/style/ServoStyleSet.cpp to
build successfully.) - Adds a missing "nsINode" forward-decl to dom/base/IdentifierMapEntry.h,
because it uses that type in function declarations. (This change is needed
in order for layout/style/CachedInheritingStyles.cpp to build successfully.) - Gives CSSStyleRule.cpp an include for PseudoStyleType.h,
nsCSSPseudoElements.h, and CSSEnabledState.h because it uses those types. - Gives GeckoBindings.cpp an include for gfxTextRun.h, to provide the definition
of type gfxFontGroup (so GeckoBindings can call GetFirstValidFont() on an
object of that type). - Gives Loader.h an include for nsIContentInlines.h, to provide the inline
function IsInUAWidget(). - Gives Rule.cpp an include for HoldDropJSObjects.h, to provide DropJSObjects().
- Gives nsImageLoader.cpp an include for DocumentInlines.h (and Document.h for
good measure), to provide the inline function GetPresContext(). - Gives nsStyleStruct.cpp an include for DocumentInlines.h, to provide inline
function Document::GetPresContext(). - Gives nsStyleTransformMatrix.h an include for Units.h (instead of gfxPoint.h,
which isn't useful) to provide the CSSPoint type. - Gives nsStyleTransformMatrix.h an include for ServoStyleConsts.h, to provide
LengthPercentage and the various StyleRotate/StyleScale/StyleTransform/etc
types. (These can't be easily forward-declared, because some of them are
legitimate types whereas others are type aliases. We could theoretically
forward-declare all of the underlying types and then repeat the type aliases,
but that'd be verbose and unmaintainable.)
Depends on D50165
Assignee | ||
Comment 6•3 years ago
|
||
This patch:
- Gives SVGFELeafFrame.cpp and SVGFEUnstyledLeafFrame.cpp the correct
namespace-prefixing in some static_cast operation, and changes the capturing
variable to be "auto*" to avoid repeating the long typename. - Gives nsSVGContainerFrame.cpp, nsSVGIntegrationUtils.cpp, and
nsSVGSwitchFrame.cpp a "using namespace mozilla::dom" decl, so that their
multiple unprefixed SVGElement* usages become valid. - Gives nsFilterInstance.h a forward-decl for WrFiltersHolder (which it uses in
function declarations) - Gives nsFilterInstance.cpp an include for nsSVGIntegrationUtils.h to provide
the WrFiltersHolder type (which it uses). - Gives nsSVGPatternFrame.h mozilla-namespace prefixes before all its
SVGAniated* type usages, to make them valid.
Depends on D50166
Assignee | ||
Comment 7•3 years ago
|
||
This patch:
- Gives ServoStyleRuleMap.cpp an include for Element.h (to provide that type).
- Gives inDeepTreeWalker.cpp a mozilla::dom prefix for its one use of Document.
- Gives inLayoutUtils.cpp a "using" decl for mozilla::dom, so we can compile
with the many un-namespaced "Document" and "Element" usages in that file.
Depends on D50167
Pushed by dholbert@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/8884f26e36b3 part 0: Run clang-format on layout/. r=TYLin https://hg.mozilla.org/integration/autoland/rev/7c82ce0af9f0 part 1: Fix non-unified build issues in layout/generic. r=TYLin https://hg.mozilla.org/integration/autoland/rev/db3fe5184abb part 2: Fix non-unified build issues in layout/base. r=TYLin https://hg.mozilla.org/integration/autoland/rev/7d697ed8c727 part 3: Fix non-unified build issues in layout/{forms,painting}. r=TYLin https://hg.mozilla.org/integration/autoland/rev/9d5a94668e7d part 4: Fix non-unified build issues in layout/style. r=emilio https://hg.mozilla.org/integration/autoland/rev/5b8a4bd4937a part 5: Fix non-unified build issues in layout/svg. r=emilio https://hg.mozilla.org/integration/autoland/rev/54471d01065b part 6: Fix non-unified build issues in layout/inspector. r=emilio
Comment 9•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/8884f26e36b3
https://hg.mozilla.org/mozilla-central/rev/7c82ce0af9f0
https://hg.mozilla.org/mozilla-central/rev/db3fe5184abb
https://hg.mozilla.org/mozilla-central/rev/7d697ed8c727
https://hg.mozilla.org/mozilla-central/rev/9d5a94668e7d
https://hg.mozilla.org/mozilla-central/rev/5b8a4bd4937a
https://hg.mozilla.org/mozilla-central/rev/54471d01065b
Description
•