Closed Bug 1652788 Opened 4 years ago Closed 4 years ago

Preemptively fix unified bustage in layout/base, layout/generic, layout/printing

Categories

(Core :: Layout, task)

task

Tracking

()

RESOLVED FIXED
mozilla80
Tracking Status
firefox80 --- fixed

People

(Reporter: dholbert, Assigned: dholbert)

References

Details

Attachments

(1 file)

The directories layout/{generic,base,printing} don't quite build right now, if I disable unification (by doing s/UNIFIED_SOURCES/SOURCES/ in their moz.build files).

The layout/generic issue in particular is causing me trouble in bug 1652278 where I'm adding a new .cpp file, which rebuckets the unified compilation units.

I'll preemptively fix up the unified bustage here.

Here's the build error in layout/base:

layout/base/LayoutTelemetryTools.cpp:54:3: error: use of undeclared identifier 'PodZero'
   PodZero(&mReqsPerFlush);

---> Fixing by including the relevant header (mozilla/PodOperations.h)

Here's the build error in layout/generic:

layout/generic/nsILineIterator.h:59:12: error: field has incomplete type 'nsRect'
     nsRect mLineBounds;

This header needs the actual nsRect type definition.
---> Fixing by upgrading the forward-decl to an include (and dropping the existing nsPoint.h include since nsRect.h includes nsPoint.h and it's not-crazy to depend on that, since they're so intertwined)

Here are the build errors in layout/printing:

layout/printing/nsPrintObject.cpp:86:20: error: use of undeclared identifier 'Reversed'; did you mean 'mozilla::Reversed'?
layout/printing/nsPrintObject.cpp:120:48: error: use of undeclared identifier 'SelectionType'; did you mean 'mozilla::SelectionType'?
layout/printing/nsPrintObject.cpp:152:45: error: use of undeclared identifier 'IgnoreErrors'; did you mean 'mozilla::IgnoreErrors'?
layout/printing/nsPrintObject.cpp:253:14: error: no template named 'UniquePtr'

...and also layout/printing/nsPrintObject.cpp:112:9: error: unknown type name 'Selection'; did you mean 'mozilla::dom::Selection'?

---> Fixed the first thing by adding using namespace mozilla, and the second thing adding a type-specific using mozilla::dom::Selection since this file seems to prefer that for stuff in mozilla::dom (and it was nearly complete on those using decls, except for this one type)

Summary: Preemptively fix unified bustage in layout/generic, layout/base, layout/printing → Preemptively fix unified bustage in layout/base, layout/generic, layout/printing
Pushed by dholbert@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/fdd91446cdfb
Preemptively fix unified build bustage in layout/{base,generic,printing}. r=TYLin
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla80
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: