[Bug c++/77384] Assembler error - std::forward(decimal64) already defined

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Jan 7 16:47:00 GMT 2019


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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2019-01-07
     Ever confirmed|0                           |1

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
This only happens for C++11 and later.

Modified testcase that's valid in C++98 too:

#include <decimal/decimal>
#include <utility>
using std::decimal::decimal64;
std::pair<int, decimal64> x( 1, 1.5dd );
std::pair<int, decimal64> u( 1, decimal64(1.5dd) );

tmp$ g++ d64.cc
/tmp/cceiwvNA.s: Assembler messages:
/tmp/cceiwvNA.s:1386: Error: symbol `_ZNSt4pairIiDdEC1IiDdLb1EEEOT_OT0_' is
already defined
/tmp/cceiwvNA.s:1390: Error: symbol
`_ZSt7forwardIDdEOT_RNSt16remove_referenceIS0_E4typeE' is already defined
tmp$ g++ d64.cc -std=c++98
/usr/lib/gcc/x86_64-redhat-linux/8/../../../../lib64/crt1.o: In function
`_start':
(.text+0x20): undefined reference to `main'
collect2: error: ld returned 1 exit status


More information about the Gcc-bugs mailing list