https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127594
Bug ID: 127594
Summary: [17 regression] -Wdelete-non-virtual-dtor in
diagnostics/digraphs.cc
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: diagnostics
Assignee: dmalcolm at redhat dot com
Reporter: sjames at gcc dot gnu.org
Target Milestone: ---
When bootstrapping on hppa, I see this warning:
```
/media/guest-homedirs/sam/build/bisect/./prev-gcc/xg++
-B/media/guest-homedirs/sam/build/bisect/./prev-gcc/
-B/media/guest-homedirs/sam/pfx/bisect/hppa2.0-unknown-linux-gnu/bin/
-nostdinc++
-B/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-I/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/include/hppa2.0-unknown-linux-gnu
-I/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/include
-I/media/guest-homedirs/sam/git/gcc/libstdc++-v3/libsupc++
-L/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-fno-PIE -c -O2 -fdiagnostics-color=always -fchecking=1 -DIN_GCC
-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall
-Wno-error=narrowing -Wwrite-strings -Wcast-qual -DHAVE_CONFIG_H -fno-PIE -I.
-Idiagnostics -I/media/guest-homedirs/sam/git/gcc/gcc
-I/media/guest-homedirs/sam/git/gcc/gcc/diagnostics
-I/media/guest-homedirs/sam/git/gcc/gcc/../include
-I/media/guest-homedirs/sam/git/gcc/gcc/../libcpp/include
-I/media/guest-homedirs/sam/git/gcc/gcc/../libcody
-I/media/guest-homedirs/sam/git/gcc/gcc/../libdecnumber
-I/media/guest-homedirs/sam/git/gcc/gcc/../libdecnumber/dpd -I../libdecnumber
-I/media/guest-homedirs/sam/git/gcc/gcc/../libbacktrace -o
diagnostics/digraphs.o -MT diagnostics/digraphs.o -MMD -MP -MF
diagnostics/.deps/digraphs.TPo
/media/guest-homedirs/sam/git/gcc/gcc/diagnostics/digraphs.cc
In file included from
/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/include/memory:80,
from /media/guest-homedirs/sam/git/gcc/gcc/system.h:242,
from
/media/guest-homedirs/sam/git/gcc/gcc/diagnostics/digraphs.cc:27:
/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/include/bits/unique_ptr.h:
In instantiation of 'void std::default_delete<_Tp>::operator()(_Tp*) const
[with _Tp = diagnostics::digraphs::to_dot::converter]':
/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/include/bits/unique_ptr.h:408:17:
required from 'std::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp =
diagnostics::digraphs::to_dot::converter; _Dp =
std::default_delete<diagnostics::digraphs::to_dot::converter>]'
408 | get_deleter()(std::move(__ptr));
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/media/guest-homedirs/sam/git/gcc/gcc/diagnostics/digraphs.cc:171:44:
required from here
171 | auto converter = to_dot::converter::make (*this);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
/media/guest-homedirs/sam/build/bisect/prev-hppa2.0-unknown-linux-gnu/libstdc++-v3/include/bits/unique_ptr.h:92:9:
warning: deleting object of polymorphic class type
'diagnostics::digraphs::to_dot::converter' which has non-virtual destructor
might cause undefined behavior [-Wdelete-non-virtual-dtor]
92 | delete __ptr;
| ^~~~~~~~~~~~
```
I don't recognise it, but I do HPPA bootstraps less often for obvious reasons,
so it may have been there a little while.