[clang] [llvm] Add DW_ATE_GNU_complex_signed to fix assertion (PR #161695)

Orlando Cazalet-Hyams via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 3 01:00:23 PDT 2025


OCHyams wrote:

Ah looking in gcc source from whatever version I have lying around that I last built I can see this -
```
      /* Dwarf2 doesn't know anything about complex ints, so use
	 a user defined type for it.  */
    case COMPLEX_TYPE:
      if (SCALAR_FLOAT_TYPE_P (TREE_TYPE (type)))
	encoding = DW_ATE_complex_float;
      else
	encoding = DW_ATE_lo_user; //< Orlando: complex int ATE encoding
      break;
```
I have no context or history as to why both GCC and Clang are using "raw" `DW_ATE_lo_user` for this. I'm happy to leave it as `DW_ATE_lo_user`, I just thought naming it made sense while fixing the assertion. If we don't name it, maybe a better fix is to not check encodings between lo_ and hi_user? wdyt?

(I have no stake in this really, I was just doing some cleaning up / scanning of my inbox as I've been neglecting it a bit, and this looked like an easy fix)


https://github.com/llvm/llvm-project/pull/161695


More information about the llvm-commits mailing list