[Webkit-unassigned] [Bug 17538] New: Can't build CollectorHeapIntrospector.cpp as a standalone file outside of AllInOneFile.cpp

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Feb 25 14:13:33 PST 2008


http://bugs.webkit.org/show_bug.cgi?id=17538

           Summary: Can't build CollectorHeapIntrospector.cpp as a
                    standalone file outside of AllInOneFile.cpp
           Product: WebKit
           Version: 525+ (Nightly build)
          Platform: Macintosh
        OS/Version: Mac OS X 10.5
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: mark at moxienet.com
                CC: eric at webkit.org
OtherBugsDependingO 17493
             nThis:


Two problems are encountered when trying to build
CollectorHeapIntrospector.cpp, a Mac-only file, as a standalone, as opposed to
building it normally, which involves including it from AllInOneFile.cpp:

There's a forward-declaration problems: CollectorHeap needs to be visible to
CollectorHeapIntrospector, but it's not visible from collector.h like it should
be.  Instead, CollectorHeap is declared solely in collector.cc.  A forward
declaration is present in CollectorHeapIntrospector.h, which is sufficient to
use CollectorHeap as a pointer type, but CollectorHeapIntrospector.cpp
dereferences CollectorHeaps.  This isn't a problem in the AllInOneFile build
because collector.cc, where the struct is currently defined, is included before
CollectorHeapIntrospector.  The solution is to move the definition of
CollectorHeap into collector.h.

There's also a namespace problem: CollectorHeapIntrospector needs to access
something WTF::RemoteMemoryReader, but it does so by calling it
RemoteMemoryReader without being in the WTF namespace or providing an
appropriate "using" declaration or directive.  Some other source file must have
a "using namespace WTF;" that masks the problem in the AllInOneFile build. 
When building CollectorHeapIntrospector.cpp as a standalone, RemoteMemoryReader
can't be found.  The solution is to fully-qualify RemoteMemoryReader or use a
using-declaration or directive.


-- 
Configure bugmail: http://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list