Bug 22806 – cppmangle: Complex real mangled incorrectly
Status
RESOLVED
Resolution
FIXED
Severity
major
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
PowerPC
OS
Linux
Creation time
2022-02-21T23:56:53Z
Last change time
2022-02-22T11:40:24Z
Keywords
pull
Assigned to
No Owner
Creator
Iain Buclaw
Comments
Comment #0 by ibuclaw — 2022-02-21T23:56:53Z
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).
Comment #1 by dlang-bot — 2022-02-22T10:25:09Z
@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
Comment #2 by dlang-bot — 2022-02-22T11:40:24Z
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