Bug 134971

Summary: On gentoo, net-libs/webkit-gtk-2.4.4-r200 complains when compiling.
Product: WebKit Reporter: Fred Krogh <at_webkit>
Component: WebGLAssignee: Nobody <webkit-unassigned>
Status: RESOLVED CONFIGURATION CHANGED    
Severity: Normal CC: berto, cgarcia, kkinnunen, zan
Priority: P2    
Version: 420+   
Hardware: Unspecified   
OS: Linux   

Description Fred Krogh 2014-07-16 06:54:35 PDT
Note that it hung during the compile using the nvidia drivers for opengl.  But when using the xorg-x11 drivers, it did compile.  But with the following message which may be of interest to you.
==========

>>> Completed installing webkit-gtk-2.4.4-r200 into /var/tmp/portage/net-libs/webkit-gtk-2.4.4-r200/image/

strip: x86_64-pc-linux-gnu-strip --strip-unneeded -R .comment -R .GCC.command.line -R .note.gnu.gold-version
   usr/lib64/libjavascriptcoregtk-1.0.so.0.16.12
   usr/bin/jsc-1
   usr/lib64/libwebkitgtk-1.0.so.0.22.10
ecompressdir: bzip2 -9 /usr/share/doc

 * QA Notice: Package triggers severe warnings which indicate that it
 *            may exhibit random runtime failures.
 * ./DerivedSources/JavaScriptCore/InspectorJSTypeBuilders.h:716:69: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
 * ./DerivedSources/JavaScriptCore/InspectorJSTypeBuilders.h:116:66: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
 * ./DerivedSources/JavaScriptCore/InspectorJSTypeBuilders.h:642:69: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
 * ./DerivedSources/JavaScriptCore/InspectorJSTypeBuilders.h:1476:68: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

 * Please do not file a Gentoo bug and instead report the above QA
 * issues directly to the upstream developers of this software.
 * Homepage: http://www.webkitgtk.org/
Comment 1 Zan Dobersek 2014-07-21 09:21:31 PDT
In trunk and on 2.4 we're building with -fno-strict-aliasing, so this error shouldn't pop up. That is, unless the optimization is re-enabled by -O2 or -O3 or directly later in the compiler command -- that would enable the warning.
Comment 2 Alberto Garcia 2014-08-04 07:52:00 PDT
This is caused by the following generated code (see
Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspectorStrings.py):

    RefPtr<Inspector::InspectorObject> m_result;

    operator RefPtr<%s>& ()
    {
        COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
        COMPILE_ASSERT(sizeof(%s) == sizeof(Inspector::InspectorObject), cannot_cast);
        return *reinterpret_cast<RefPtr<%s>*>(&m_result);
    }

As Žan mentioned, -fno-strict-aliasing should prevent that
warning. Are you using it?