<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>306260</bug_id>
          
          <creation_ts>2026-01-26 03:24:46 -0800</creation_ts>
          <short_desc>libANGLE: lots of -Wclass-memaccess warnings</short_desc>
          <delta_ts>2026-02-02 03:25:12 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>ANGLE</component>
          <version>Other</version>
          <rep_platform>All</rep_platform>
          <op_sys>Other</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Thomas Klausner">wiz</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>djg</cc>
    
    <cc>kbr</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2175079</commentid>
    <comment_count>0</comment_count>
    <who name="Thomas Klausner">wiz</who>
    <bug_when>2026-01-26 03:24:46 -0800</bug_when>
    <thetext>When building webkit-gtk-2.50.4 on NetBSD, I see many warnings like the ones below about libangle. I reported this to the webkit-gtk mailing list and Michael Catanzaro said they were probably ok, but either the warning should be disabled or suppressed for these files, see https://lists.webkit.org/archives/list/webkit-gtk@lists.webkit.org/message/2GUR4GPWCV3XIBHWLT6L3JAED5AT6X23/ and to report a bug. Here is the bug report :-)



/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.h: In constructor &apos;gl::ActiveVariable::ActiveVariable()&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.h:63:30: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::ActiveVariable::PODStruct&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
   63 |     ActiveVariable() { memset(&amp;pod, 0, sizeof(pod)); }
      |                        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~


/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/ProgramExecutable.cpp: In constructor &apos;gl::ProgramExecutable::ProgramExecutable(rx::GLImplFactory*, gl::InfoLog*)&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/ProgramExecutable.cpp:750:11: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::ProgramExecutable::PODStruct&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
  750 |     memset(&amp;mPod, 0, sizeof(mPod));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~

/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp: In constructor &apos;gl::LinkedUniform::LinkedUniform(GLenum, GLenum, const std::vector&lt;unsigned int&gt;&amp;, int, int, int, int, const sh::BlockMemberInfo&amp;)&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp:28:11: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::LinkedUniform&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
   28 |     memset(this, 0, sizeof(*this));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.h:87:8: note: &apos;struct gl::LinkedUniform&apos; declared here
   87 | struct LinkedUniform
      |        ^~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp: In constructor &apos;gl::BufferVariable::BufferVariable()&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp:85:11: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::BufferVariable::PODStruct&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
   85 |     memset(&amp;pod, 0, sizeof(pod));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.h:204:12: note: &apos;struct gl::BufferVariable::PODStruct&apos; declared here
  204 |     struct PODStruct
      |            ^~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp: In constructor &apos;gl::BufferVariable::BufferVariable(GLenum, GLenum, const std::string&amp;, const std::vector&lt;unsigned int&gt;&amp;, int, int, const sh::BlockMemberInfo&amp;)&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp:100:11: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::BufferVariable::PODStruct&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
  100 |     memset(&amp;pod, 0, sizeof(pod));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.h:204:12: note: &apos;struct gl::BufferVariable::PODStruct&apos; declared here
  204 |     struct PODStruct
      |            ^~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp: In constructor &apos;gl::AtomicCounterBuffer::AtomicCounterBuffer()&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp:112:11: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::AtomicCounterBuffer::PODStruct&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
  112 |     memset(&amp;pod, 0, sizeof(pod));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.h:240:12: note: &apos;struct gl::AtomicCounterBuffer::PODStruct&apos; declared here
  240 |     struct PODStruct
      |            ^~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp: In constructor &apos;gl::InterfaceBlock::InterfaceBlock()&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp:131:11: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::InterfaceBlock::PODStruct&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
  131 |     memset(&amp;pod, 0, sizeof(pod));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.h:278:12: note: &apos;struct gl::InterfaceBlock::PODStruct&apos; declared here
  278 |     struct PODStruct
      |            ^~~~~~~~~
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp: In constructor &apos;gl::InterfaceBlock::InterfaceBlock(const std::string&amp;, const std::string&amp;, bool, bool, unsigned int, unsigned int, int)&apos;:
/tmp/wip/webkit-gtk/work/webkitgtk-2.50.4/Source/ThirdParty/ANGLE/src/libANGLE/Uniform.cpp:143:11: warning: &apos;void* memset(void*, int, size_t)&apos; clearing an object of non-trivial type &apos;struct gl::InterfaceBlock::PODStruct&apos;; use assignment or value-initialization instead [-Wclass-memaccess]
  143 |     memset(&amp;pod, 0, sizeof(pod));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2177119</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-02-02 03:25:12 -0800</bug_when>
    <thetext>&lt;rdar://problem/169433162&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>