http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57378
Bug ID: 57378 Summary: gnu multiversioning gives assembler error: foo.resolver is already defined Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: mib.bugzilla at gmail dot com % /rdrive/ref/gcc/bin/g++48 -c foo.cpp /tmp/cc9uFaZR.s: Assembler messages: /tmp/cc9uFaZR.s:116: Error: symbol `_Z3foov.resolver' is already defined % cat foo.cpp int foo () __attribute__ ((target ("default"))); int foo () __attribute__ ((target ("arch=core2"))); static int fumm(); #include <stdio.h> int main () { int f = foo(); printf("foo is %d\n", f); printf("fumm is %d\n", fumm()); return 0; } __attribute__ ((target ("default"))) int foo () { return 0; } __attribute__ ((target ("arch=corei7"))) int foo () { return 7; } static int fumm() { return foo(); } % /rdrive/ref/gcc/bin/g++48 -v Using built-in specs. COLLECT_GCC=/rdrive/ref/gcc/4.8.0/rhel60/efi2/bin/g++ COLLECT_LTO_WRAPPER=/site/spt/rdrive/ref/gcc/4.8.0/rhel60/efi2/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: /rusers/sys_cron/grab_gcc/downloads_rel/4.8.0/gcc-4.8.0/configure --prefix=/rdrive/ref/gcc/4.8.0/rhel60/efi2 --enable-languages=c,c++,objc,fortran --disable-multilib --enable-bootstrap --target=x86_64-unknown-linux-gnu --disable-bootstrap --enable-decimal-float --with-gmp=/rusers/sys_cron/grab_gcc/downloads_rel/lib/efi2 --with-mpfr=/rusers/sys_cron/grab_gcc/downloads_rel/lib/efi2 --with-mpc=/rusers/sys_cron/grab_gcc/downloads_rel/lib/efi2 Thread model: posix gcc version 4.8.0 (GCC) Platform is corei7 (sandybridge)