[Bug c++/107080] ICE in verify_symtab_nodes using _Float64x with long double

pinskia at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Sep 29 02:31:57 GMT 2022


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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2022-09-29
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Here is a reduced testcase:
```
template<typename T, typename T1> 
int f (T x, T1 y) throw ()
{
    return 3;
}

int
main ()
{
  return (f (0.0f64x, 0.0f64x) + f (0.0f64x, 0.0L)) != 6;
}
```
This ICEs and with release checking it produces an assembler error:
```
/tmp/ccJDRaEi.s: Assembler messages:
/tmp/ccJDRaEi.s:93: Error: symbol `_Z1fIeeEiT_T0_' is already defined
```

I can only assume the issue is _Float64x is not treated the same as long double
for type comparison but is treated the same for mangling (which is why I marked
it as an ABI issue).


More information about the Gcc-bugs mailing list