Bug 150996

Summary: Node.h:392:12: warning: 'this' pointer cannot be null in well-defined C++ code
Product: WebKit Reporter: Michael Catanzaro <mcatanzaro>
Component: WebCore Misc.Assignee: Michael Catanzaro <mcatanzaro>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, esprehn+autocc, kangil.han, mcatanzaro
Priority: P2    
Version: Other   
Hardware: PC   
OS: All   
Attachments:
Description Flags
Patch kling: review+

Description Michael Catanzaro 2015-11-07 07:13:14 PST
WebCore::Node::document begins with the line ASSERT(this), which is bogus. In Clang 3.7, this triggers a compiler warning for every file that includes Node.h:

../../Source/WebCore/dom/Node.h:392:12: warning: 'this' pointer cannot be null in well-defined C++ code; pointer may be assumed to always convert to true [-Wundefined-bool-conversion]
        (!(this) ? (WTFReportAssertionFailure("../../Source/WebCore/dom/Node.h", 392, __PRETTY_FUNCTION__, "this"), WTFCrash()) : (void)0);
         ~ ^~~~
1 warning generated.

Pretty sure GCC and Clang both optimize away this assertion, but I guess the warning is new. The fix is just to remove the assertion.
Comment 1 Michael Catanzaro 2015-11-07 07:29:54 PST
Created attachment 265002 [details]
Patch
Comment 2 Michael Catanzaro 2015-11-07 09:17:44 PST
Committed r192130: <http://trac.webkit.org/changeset/192130>