Closed Bug 780663 Opened 12 years ago Closed 12 years ago

OS X gcc build failure: "nsFocusManager.cpp:2275: error: 'FrameIteratorFlags' is not a class or namespace"

Categories

(Core :: Layout, defect)

x86_64
macOS
defect
Not set
critical

Tracking

()

RESOLVED FIXED

People

(Reporter: emorley, Unassigned)

Details

(Keywords: regression)

OS X 10.7 64-bit birch leak test build on 2012-08-06 10:01:30 PDT for push 4c67747eb3c4
slave: bld-lion-r5-050
https://tbpl.mozilla.org/php/getParsedLog.php?id=14162216&tree=Birch

(+opt)

{
/usr/local/bin/ccache /usr/bin/g++-4.2 -o nsPerformance.o -c  -fvisibility=hidden -D_IMPL_NS_LAYOUT -DMOZ_JSDEBUGGER -DMOZILLA_INTERNAL_API -D_IMPL_NS_COM -DEXPORT_XPT_API -DEXPORT_XPTC_API -D_IMPL_NS_GFX -D_IMPL_NS_WIDGET -DIMPL_XREAPI -DIMPL_NS_NET -DIMPL_THEBES  -DSTATIC_EXPORTABLE_JS_API -DEXCLUDE_SKIA_DEPENDENCIES  -DOS_MACOSX=1 -DOS_POSIX=1  -I/builds/slave/bir-osx64-dbg/build/dom/base -I/builds/slave/bir-osx64-dbg/build/dom/battery -I/builds/slave/bir-osx64-dbg/build/dom/file -I/builds/slave/bir-osx64-dbg/build/dom/power -I/builds/slave/bir-osx64-dbg/build/dom/media -I/builds/slave/bir-osx64-dbg/build/dom/network/src -I/builds/slave/bir-osx64-dbg/build/dom/settings -I/builds/slave/bir-osx64-dbg/build/dom/sms/src -I/builds/slave/bir-osx64-dbg/build/dom/contacts -I/builds/slave/bir-osx64-dbg/build/dom/alarm -I/builds/slave/bir-osx64-dbg/build/dom/src/events -I/builds/slave/bir-osx64-dbg/build/dom/src/storage -I/builds/slave/bir-osx64-dbg/build/dom/src/offline -I/builds/slave/bir-osx64-dbg/build/dom/src/geolocation -I/builds/slave/bir-osx64-dbg/build/dom/src/notification -I/builds/slave/bir-osx64-dbg/build/dom/workers -I/builds/slave/bir-osx64-dbg/build/content/xbl/src -I/builds/slave/bir-osx64-dbg/build/content/xul/document/src -I/builds/slave/bir-osx64-dbg/build/content/events/src -I/builds/slave/bir-osx64-dbg/build/content/base/src -I/builds/slave/bir-osx64-dbg/build/content/html/content/src -I/builds/slave/bir-osx64-dbg/build/content/html/document/src -I/builds/slave/bir-osx64-dbg/build/content/svg/content/src -I/builds/slave/bir-osx64-dbg/build/layout/generic -I/builds/slave/bir-osx64-dbg/build/layout/style -I/builds/slave/bir-osx64-dbg/build/layout/xul/base/src -I/builds/slave/bir-osx64-dbg/build/layout/xul/base/src/tree/src -I/builds/slave/bir-osx64-dbg/build/dom/camera -I/builds/slave/bir-osx64-dbg/build/ipc/chromium/src -I/builds/slave/bir-osx64-dbg/build/ipc/glue -I../../ipc/ipdl/_ipdlheaders  -I/builds/slave/bir-osx64-dbg/build/js/xpconnect/src -I/builds/slave/bir-osx64-dbg/build/js/xpconnect/wrappers -I/builds/slave/bir-osx64-dbg/build/xpcom/ds  -I/builds/slave/bir-osx64-dbg/build/dom/base -I. -I../../dist/include  -I/builds/slave/bir-osx64-dbg/build/obj-firefox/dist/include/nspr -I/builds/slave/bir-osx64-dbg/build/obj-firefox/dist/include/nss      -fPIC  -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wempty-body -Wno-ctor-dtor-privacy -Wno-overlength-strings -Wno-invalid-offsetof -Wno-variadic-macros -Wcast-align -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fshort-wchar -pthread -DNO_X11 -pipe  -DDEBUG -D_DEBUG -DTRACING -g -O3 -fno-omit-frame-pointer    -DMOZILLA_CLIENT -include ../../mozilla-config.h -MD -MF .deps/nsPerformance.o.pp /builds/slave/bir-osx64-dbg/build/dom/base/nsPerformance.cpp
../../../dom/base/nsScriptNameSpaceManager.cpp: In member function 'nsresult nsScriptNameSpaceManager::RegisterExternalInterfaces(bool)':
../../../dom/base/nsScriptNameSpaceManager.cpp:268: warning: 'found_old' may be used uninitialized in this function
nsWindowMemoryReporter.cpp
/usr/local/bin/ccache /usr/bin/g++-4.2 -o nsWindowMemoryReporter.o -c  -fvisibility=hidden -D_IMPL_NS_LAYOUT -DMOZ_JSDEBUGGER -DMOZILLA_INTERNAL_API -D_IMPL_NS_COM -DEXPORT_XPT_API -DEXPORT_XPTC_API -D_IMPL_NS_GFX -D_IMPL_NS_WIDGET -DIMPL_XREAPI -DIMPL_NS_NET -DIMPL_THEBES  -DSTATIC_EXPORTABLE_JS_API -DEXCLUDE_SKIA_DEPENDENCIES  -DOS_MACOSX=1 -DOS_POSIX=1  -I/builds/slave/bir-osx64-dbg/build/dom/base -I/builds/slave/bir-osx64-dbg/build/dom/battery -I/builds/slave/bir-osx64-dbg/build/dom/file -I/builds/slave/bir-osx64-dbg/build/dom/power -I/builds/slave/bir-osx64-dbg/build/dom/media -I/builds/slave/bir-osx64-dbg/build/dom/network/src -I/builds/slave/bir-osx64-dbg/build/dom/settings -I/builds/slave/bir-osx64-dbg/build/dom/sms/src -I/builds/slave/bir-osx64-dbg/build/dom/contacts -I/builds/slave/bir-osx64-dbg/build/dom/alarm -I/builds/slave/bir-osx64-dbg/build/dom/src/events -I/builds/slave/bir-osx64-dbg/build/dom/src/storage -I/builds/slave/bir-osx64-dbg/build/dom/src/offline -I/builds/slave/bir-osx64-dbg/build/dom/src/geolocation -I/builds/slave/bir-osx64-dbg/build/dom/src/notification -I/builds/slave/bir-osx64-dbg/build/dom/workers -I/builds/slave/bir-osx64-dbg/build/content/xbl/src -I/builds/slave/bir-osx64-dbg/build/content/xul/document/src -I/builds/slave/bir-osx64-dbg/build/content/events/src -I/builds/slave/bir-osx64-dbg/build/content/base/src -I/builds/slave/bir-osx64-dbg/build/content/html/content/src -I/builds/slave/bir-osx64-dbg/build/content/html/document/src -I/builds/slave/bir-osx64-dbg/build/content/svg/content/src -I/builds/slave/bir-osx64-dbg/build/layout/generic -I/builds/slave/bir-osx64-dbg/build/layout/style -I/builds/slave/bir-osx64-dbg/build/layout/xul/base/src -I/builds/slave/bir-osx64-dbg/build/layout/xul/base/src/tree/src -I/builds/slave/bir-osx64-dbg/build/dom/camera -I/builds/slave/bir-osx64-dbg/build/ipc/chromium/src -I/builds/slave/bir-osx64-dbg/build/ipc/glue -I../../ipc/ipdl/_ipdlheaders  -I/builds/slave/bir-osx64-dbg/build/js/xpconnect/src -I/builds/slave/bir-osx64-dbg/build/js/xpconnect/wrappers -I/builds/slave/bir-osx64-dbg/build/xpcom/ds  -I/builds/slave/bir-osx64-dbg/build/dom/base -I. -I../../dist/include  -I/builds/slave/bir-osx64-dbg/build/obj-firefox/dist/include/nspr -I/builds/slave/bir-osx64-dbg/build/obj-firefox/dist/include/nss      -fPIC  -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wempty-body -Wno-ctor-dtor-privacy -Wno-overlength-strings -Wno-invalid-offsetof -Wno-variadic-macros -Wcast-align -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fshort-wchar -pthread -DNO_X11 -pipe  -DDEBUG -D_DEBUG -DTRACING -g -O3 -fno-omit-frame-pointer    -DMOZILLA_CLIENT -include ../../mozilla-config.h -MD -MF .deps/nsWindowMemoryReporter.o.pp /builds/slave/bir-osx64-dbg/build/dom/base/nsWindowMemoryReporter.cpp
../../../dom/base/nsFocusManager.cpp: In member function 'nsresult nsFocusManager::GetSelectionLocation(nsIDocument*, nsIPresShell*, nsIContent**, nsIContent**)':
../../../dom/base/nsFocusManager.cpp:2275: error: 'FrameIteratorFlags' is not a class or namespace
../../../dom/base/nsFocusManager.cpp: In member function 'nsresult nsFocusManager::GetNextTabbableContent(nsIPresShell*, nsIContent*, nsIContent*, nsIContent*, bool, PRInt32, bool, nsIContent**)':
../../../dom/base/nsFocusManager.cpp:2701: error: 'FrameIteratorFlags' is not a class or namespace
make[6]: *** [nsFocusManager.o] Error 1
make[6]: *** Waiting for unfinished jobs....
In file included from ../../../dom/base/nsGlobalWindow.cpp:11190:
../../../dom/base/nsGlobalWindow.cpp: In member function 'bool nsGlobalWindow::RunTimeoutHandler(nsTimeout*, nsIScriptContext*)':
../../../dom/base/nsGlobalWindow.cpp:9527: warning: 'nestingLevel' may be used uninitialized in this function
make[5]: *** [libs] Error 2
}

Pushlog:
https://hg.mozilla.org/projects/birch/pushloghtml?changeset=4c67747eb3c4

Introduced by:
https://hg.mozilla.org/projects/birch/rev/b3f0e5c7874d
(Bug 779684)
I'm seeing this locally using clang.  Question is why aren't the tinderboxen seeing the same error...
(In reply to John Daggett (:jtd) from comment #1)
> I'm seeing this locally using clang.  Question is why aren't the tinderboxen
> seeing the same error...

Tinderbox is using Clang on OS X for all trees apart from birch. Birch is there so we can catch things like this :-)
(In reply to Ed Morley [:edmorley] from comment #3)
> (In reply to John Daggett (:jtd) from comment #1)
> > I'm seeing this locally using clang.  Question is why aren't the tinderboxen
> > seeing the same error...
> 
> Tinderbox is using Clang on OS X for all trees apart from birch. Birch is
> there so we can catch things like this :-)

The question is why my local build broke using clang but the tinderbox build didn't (the faulty patch seemed to move from inbound to central with no problems).  This isn't a gcc-only bug.
Sorry, I missed the key "locally using clang" part :-)
I've also seen it on OpenBSD/gcc 4.2.1:

/home/landry/src/mozilla-central/dom/base/nsFocusManager.cpp: In member function 'nsresult nsFocusManager::GetSelectionLocation(nsIDocument*, nsIPresShell*, nsIContent**, nsIContent**)':
/home/landry/src/mozilla-central/dom/base/nsFocusManager.cpp:2275: error: 'FrameIteratorFlags' is not a class or namespace
/home/landry/src/mozilla-central/dom/base/nsFocusManager.cpp: In member function 'nsresult nsFocusManager::GetNextTabbableContent(nsIPresShell*, nsIContent*, nsIContent*, nsIContent*, bool, PRInt32, bool, nsIContent**)':
/home/landry/src/mozilla-central/dom/base/nsFocusManager.cpp:2701: error: 'FrameIteratorFlags' is not a class or namespace
gmake[6]: *** [nsFocusManager.o] Error 1

Confirming that https://hg.mozilla.org/integration/mozilla-inbound/raw-rev/8bf69c3fd814 fixes it.
(In reply to John Daggett (:jtd) from comment #4)
> (In reply to Ed Morley [:edmorley] from comment #3)
> > (In reply to John Daggett (:jtd) from comment #1)
> > > I'm seeing this locally using clang.  Question is why aren't the tinderboxen
> > > seeing the same error...
> > 
> > Tinderbox is using Clang on OS X for all trees apart from birch. Birch is
> > there so we can catch things like this :-)
> 
> The question is why my local build broke using clang but the tinderbox build
> didn't (the faulty patch seemed to move from inbound to central with no
> problems).  This isn't a gcc-only bug.

What version of clang are you using?  This is what we use on the Tinderbox machines: <http://mxr.mozilla.org/mozilla-central/source/browser/config/tooltool-manifests/macosx64/clang.manifest#3>
(In reply to Ryan VanderMeulen from comment #2)
> The fix for this is on inbound.
> https://hg.mozilla.org/integration/mozilla-inbound/rev/8bf69c3fd814

I just pushed a new Birch job with this patch from mozilla-central to verify that the problem has been fixed.
(In reply to Ehsan Akhgari [:ehsan] from comment #8)
> (In reply to Ryan VanderMeulen from comment #2)
> > The fix for this is on inbound.
> > https://hg.mozilla.org/integration/mozilla-inbound/rev/8bf69c3fd814
> 
> I just pushed a new Birch job with this patch from mozilla-central to verify
> that the problem has been fixed.

And new builds are green!
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
> The question is why my local build broke using clang but the tinderbox build
> didn't (the faulty patch seemed to move from inbound to central with no
> problems).  This isn't a gcc-only bug.

Locally I can reproduce the failure with clang if I revert the fix and build without -std=c++11. Were your builds done with c++11?
No longer blocks: 779684
Regressed by: 779684

Set release status flags based on info from the regressing bug 779684

Target Milestone: --- → 123 Branch
Target Milestone: 123 Branch → ---

Set release status flags based on info from the regressing bug 779684

You need to log in before you can comment on or make changes to this bug.