On PPC64, `real` could either be mapped to a C `long double` or a `__float128` type. The former uses the IBM 128-bit, and is mangled as 'g', the latter is IEEE 128-bit, and is mangled as 'u9__ieee128'. Both are not correctly accounted for in neither TypeEnum (special types), nor TypeBasic (complex types).
@ibuclaw created dlang/dmd pull request #13702 "fix Issue 22806 - cppmangle: Complex real mangled incorrectly" fixing this issue: - fix Issue 22806 - cppmangle: Complex real mangled incorrectly https://github.com/dlang/dmd/pull/13702
dlang/dmd pull request #13702 "fix Issue 22806 - cppmangle: Complex real mangled incorrectly" was merged into master: - 975801610b7f3f054b0c881d1dd330175b2f02d9 by Iain Buclaw: fix Issue 22806 - cppmangle: Complex real mangled incorrectly https://github.com/dlang/dmd/pull/13702