www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 22345] New: [internals] Make it easy to pre-define


          Issue ID: 22345
           Summary: [internals] Make it easy to pre-define target-specific
                    native types.
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: ibuclaw gdcproject.org

For example:
- __fp16 (half-float on ARM)
- __bf16 (brain-float on ARM/ARM64)
- __float80 (80-bit real on x86)
- __float128 (128-bit real on x86)
- __ibm128 (128-bit IBM float on PPC)
- __ieee128 (128-bit IEEE float on PPC)

Other C11 extension types could be considered too:
- _FloatN and _FloatNx
- _Decimal
- _Fract
- _Accum
- _Sat

As well as an internal va_list type.

These type extensions would be made available using the isSpecial enum logic
that is already present in the dmd front-end, which lets the front-end know
just to ignore it.

Sep 29 2021