[Webkit-unassigned] [Bug 270963] New: [GTK] [2.42.5] SharedContextMutex.cpp: error: inlining failed in call to ‘always_inline’

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Mar 14 02:13:43 PDT 2024


https://bugs.webkit.org/show_bug.cgi?id=270963

            Bug ID: 270963
           Summary: [GTK] [2.42.5] SharedContextMutex.cpp: error: inlining
                    failed in call to ‘always_inline’
           Product: WebKit
           Version: Other
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKitGTK
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: berto at igalia.com
                CC: bugs-noreply at webkitgtk.org

Both WebKitGTK and WPE WebKit 2.42.5 have recently stopped building in Debian unstable:

                           ----------------------------------------
/<<PKGBUILDDIR>>/Source/ThirdParty/ANGLE/src/libANGLE/SharedContextMutex.cpp:219:41: error: inlining failed in call to ‘always_inline’ ‘egl::SharedContextMutex<Mutex>* egl::SharedContextMutex<Mutex>::doTryLock() [with Mutex = std::mutex]’: recursive inlining
  219 | ANGLE_INLINE SharedContextMutex<Mutex> *SharedContextMutex<Mutex>::doTryLock()
      |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~

/<<PKGBUILDDIR>>/Source/ThirdParty/ANGLE/src/libANGLE/SharedContextMutex.cpp:241:41: error: inlining failed in call to ‘always_inline’ ‘egl::SharedContextMutex<Mutex>* egl::SharedContextMutex<Mutex>::doLock() [with Mutex = std::mutex]’: recursive inlining
  241 | ANGLE_INLINE SharedContextMutex<Mutex> *SharedContextMutex<Mutex>::doLock()
      |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~
                           ----------------------------------------

This is due to the ANGLE_INLINE macro in Source/ThirdParty/ANGLE/src/common/angleutils.h:

   #if defined(NDEBUG) && ANGLE_HAS_ATTRIBUTE_ALWAYS_INLINE
   #    define ANGLE_INLINE inline __attribute__((always_inline))
   #elif defined(NDEBUG) && ANGLE_HAS___FORCEINLINE
   #    define ANGLE_INLINE __forceinline
   #else
   #    define ANGLE_INLINE inline
   #endif

I'm building WebKit with NDEBUG so ANGLE_INLINE is 'inline __attribute__((always_inline))'

If I stop using NDEBUG or otherwise force ANGLE_INLINE to simply be 'inline' then this builds fine.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20240314/441614f6/attachment.htm>


More information about the webkit-unassigned mailing list