qtgui-4.8.6 fails to build. During final libQtGui.so.4.8.6 link I get: .obj/release-shared/qdrawhelper_sse2.o: In function `_Z33qt_fetch_radial_gradient_templateI16QRadialFetchSimdI9QSimdSse2EEPKjPjPK8OperatorPK9QSpanDataiii': qdrawhelper_sse2.cpp:(.text._Z33qt_fetch_radial_gradient_templateI16QRadialFetchSimdI9QSimdSse2EEPKjPjPK8OperatorPK9QSpanDataiii[_Z33qt_fetch_radial_gradient_templateI16QRadialFetchSimdI9QSimdSse2EEPKjPjPK8OperatorPK9QSpanDataiii]+0x273): undefined reference to `_Z12qt_memfill32' markus@x4 test % cat qdrawhelper_sse2.ii template <class> void qt_fetch_radial_gradient_template (int) { extern void (*qt_memfill32)(int, int, int); qt_memfill32 (0, 0, 0); } void qt_fetch_radial_gradient_sse2 () { qt_fetch_radial_gradient_template<int> (0); } gcc-5 mangles the extern function to _Z12qt_memfill32. All other compilers mangle it to qt_memfill32. markus@x4 test % g++ -O2 -c qdrawhelper_sse2.ii markus@x4 test % nm qdrawhelper_sse2.o | grep qt_memfill32 U _Z12qt_memfill32 markus@x4 test % clang++ -O2 -c qdrawhelper_sse2.ii markus@x4 test % nm qdrawhelper_sse2.o | grep qt_memfill32 U qt_memfill32 markus@x4 test % icpc -O2 -c qdrawhelper_sse2.ii markus@x4 test % nm qdrawhelper_sse2.o | grep qt_memfill32 U qt_memfill32 markus@x4 test % /usr/x86_64-pc-linux-gnu/gcc-bin/4.9.2/g++ -O2 -c qdrawhelper_sse2.ii markus@x4 test % nm qdrawhelper_sse2.o | grep qt_memfill32 U qt_memfill32
s/extern function/extern function pointer/ This is a variable of a function pointer type.
Started with r214396.
Author: jason Date: Thu Feb 12 22:44:38 2015 New Revision: 220666 URL: https://gcc.gnu.org/viewcvs?rev=220666&root=gcc&view=rev Log: PR c++/64898 * mangle.c (write_mangled_name): Fix test for variable template instantiation. Added: trunk/gcc/testsuite/g++.dg/abi/mangle65.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/mangle.c
Fixed, thanks.
*** Bug 65062 has been marked as a duplicate of this bug. ***