This is the area where the C++ Std differs from the C std.
C++ Std has DFP as a class because of its preference and philosophy of
introducing new ideas as classes, not as a builtin type as required
by the
C Std. However, some C++ compilers will need to start to accept
many of
these mangling in their ABI inorder to maintain C interoperability. We
introduce many C99 concepts too into the C++ ABI even though they
are not
required from the C++ Std for simialr reasons.
The later would just be encoded as length then name.
Of course this can be handled as "5.1.7 Compression ...
abbreviations for
certain common names".
And this form is mentioned:
... the following catalog of abbreviations of the form "Sx" are used:
Or we just go with what Michael has and documented it well and
point to
the "right" way to do it next time?? (And who to blame. ;-)
The library case will be mangled that way. But for C
interoperability it
won't work. This is to cover the case for vendors who actually wish to
implement them as builtin types.
(I would still be happy to accept the blame.)