[Bug c++/125745] [16/17 Regression] ICE with sanitizer in cxx_eval_component_reference, at cp/constexpr.cc:5823 since r16-6431

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jun 23 12:10:04 GMT 2026


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125745

--- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Jason Merrill <jason@gcc.gnu.org>:

https://gcc.gnu.org/g:88f05f89957383f7b0328e9c558ebb12d1d58f52

commit r17-1772-g88f05f89957383f7b0328e9c558ebb12d1d58f52
Author: Jason Merrill <jason@redhat.com>
Date:   Mon Jun 22 15:37:25 2026 -0400

    c++: ubsan and inherited vptr [PR125745]

    cp_ubsan_instrument_vptr tried to open-code vfield access and failed to
    look into the base subobject to find it.  We have a function for that.

            PR c++/125745

    gcc/cp/ChangeLog:

            * cp-ubsan.cc (cp_ubsan_instrument_vptr): Use build_vfield_ref.

    gcc/testsuite/ChangeLog:

            * g++.dg/ubsan/vptr-19.C: New test.


More information about the Gcc-bugs mailing list