https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98389
--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to seurer from comment #0) > 3 incompatible symbols > 0 > _ZSt8to_charsPcS_g > std::to_chars(char*, char*, __float128) It took me a while to realise that these symbols are not __float128, they're __ibm128, but the demangler turns 'g' into __float128. Is that still the case for the latest version of the demangler? Because that's very confusing. The actual __float128 type mangles as '__u9__ieee128' not 'g', so if I define "std::to_chars(char*, char*, __float128)" in my code, it doesn't get mangled as shown above.