[Bug c++/58678] [4.9 Regression] pykde4-4.11.2 link error (devirtualization too trigger happy)
trippels at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Mar 5 16:48:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58678
--- Comment #27 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
(In reply to David Kredba from comment #26)
> Hello Markus,
> Could you kindly please write here how are you reducing this?
>
> (So next time I can try to do it myself.)
Sure.
First thing is to find out which object files contains these
undefined symbols.
cd /var/tmp/portage/kde-base/korganizer-4.12.3
for f in **/*.o ; do echo $f && nm $f | c++filt | grep "KParts::Part::~Part()"
; done
This will point to kocore.o. Then lookup how kocore.o was compiled
in the build.log. Add --save-temps to the invocation. Write a check.sh script
for creduce, e.g. something like:
% cat check.sh
#!/bin/sh
/usr/x86_64-pc-linux-gnu/gcc-bin/4.8.3/g++ -Wall -Wextra -c -O2 -Werror
-Wfatal-errors -c test.ii -pipe
if ! test $? = 0; then
exit 1
fi
nm test.o | grep _ZN6KParts4PartD0Ev
if test $? = 0; then
exit 1
fi
g++ -Wall -Wextra -c -O2 -Werror -Wfatal-errors test.ii -pipe
if ! test $? = 0; then
exit 1
fi
nm test.o | grep _ZN6KParts4PartD0Ev
if ! test $? = 0; then
exit 1
fi
And finally run creduce.
More information about the Gcc-bugs
mailing list